[diagnostics][persistence][core] Start persistence as part of core product.
Change-Id: I3d3d09b1c5e9cb23dfa6a852231290fa609fc2d1
Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/511623
Reviewed-by: Chris Phoenix <cphoenix@google.com>
Reviewed-by: Adam Barth <abarth@google.com>
Commit-Queue: Chris Phoenix <cphoenix@google.com>
diff --git a/products/core.gni b/products/core.gni
index caf1954..852a6cd 100644
--- a/products/core.gni
+++ b/products/core.gni
@@ -60,9 +60,11 @@
"//src/developer/forensics:pkg",
"//src/developer/forensics/feedback_data:sysmgr_config",
"//src/developer/forensics/snapshot:pkg",
- "//src/diagnostics/log-stats:package",
- "//src/diagnostics/detect:triage-detect",
+ "//src/diagnostics/config/persistence",
"//src/diagnostics/config/triage:triage-detect",
+ "//src/diagnostics/detect:triage-detect",
+ "//src/diagnostics/persistence:diagnostics-persistence",
+ "//src/diagnostics/log-stats:package",
"//src/diagnostics/sampler",
"//src/hwinfo:hwinfo",
"//src/hwinfo:default_product_config",
diff --git a/src/diagnostics/archivist/configs/default-service-config.json b/src/diagnostics/archivist/configs/default-service-config.json
index 097c170..ad25bff 100644
--- a/src/diagnostics/archivist/configs/default-service-config.json
+++ b/src/diagnostics/archivist/configs/default-service-config.json
@@ -1,6 +1,7 @@
{
"service_list": [
"fuchsia.diagnostics.internal.DetectController",
+ "fuchsia.diagnostics.internal.PersistenceController",
"fuchsia.diagnostics.internal.LogStatsController",
"fuchsia.diagnostics.internal.SamplerController"
]
diff --git a/src/diagnostics/archivist/configs/no-detect-service-config.json b/src/diagnostics/archivist/configs/no-detect-service-config.json
index 9806541..371ffdf 100644
--- a/src/diagnostics/archivist/configs/no-detect-service-config.json
+++ b/src/diagnostics/archivist/configs/no-detect-service-config.json
@@ -1,5 +1,6 @@
{
"service_list": [
+ "fuchsia.diagnostics.internal.PersistenceController",
"fuchsia.diagnostics.internal.LogStatsController",
"fuchsia.diagnostics.internal.SamplerController"
]
diff --git a/src/diagnostics/archivist/meta/archivist.cml b/src/diagnostics/archivist/meta/archivist.cml
index 9e9703c..7a3666e 100644
--- a/src/diagnostics/archivist/meta/archivist.cml
+++ b/src/diagnostics/archivist/meta/archivist.cml
@@ -31,8 +31,8 @@
"fuchsia.boot.ReadOnlyLog",
"fuchsia.boot.WriteOnlyLog",
"fuchsia.diagnostics.internal.DetectController",
- "fuchsia.diagnostics.internal.ElephantController",
"fuchsia.diagnostics.internal.LogStatsController",
+ "fuchsia.diagnostics.internal.PersistenceController",
"fuchsia.diagnostics.internal.SamplerController",
"fuchsia.sys.internal.ComponentEventProvider",
"fuchsia.sys.internal.LogConnector",
diff --git a/src/sys/bootstrap/meta/bootstrap.cml b/src/sys/bootstrap/meta/bootstrap.cml
index e270445..6b9cb91 100644
--- a/src/sys/bootstrap/meta/bootstrap.cml
+++ b/src/sys/bootstrap/meta/bootstrap.cml
@@ -769,6 +769,7 @@
protocol: [
"fuchsia.diagnostics.internal.DetectController",
"fuchsia.diagnostics.internal.LogStatsController",
+ "fuchsia.diagnostics.internal.PersistenceController",
"fuchsia.diagnostics.internal.SamplerController",
"fuchsia.sys.internal.ComponentEventProvider",
"fuchsia.sys.internal.LogConnector",
diff --git a/src/sys/bootstrap/meta/root.cml b/src/sys/bootstrap/meta/root.cml
index f757586..b2279f6 100644
--- a/src/sys/bootstrap/meta/root.cml
+++ b/src/sys/bootstrap/meta/root.cml
@@ -174,6 +174,7 @@
"fuchsia.cobalt.LoggerFactory",
"fuchsia.diagnostics.internal.DetectController",
"fuchsia.diagnostics.internal.LogStatsController",
+ "fuchsia.diagnostics.internal.PersistenceController",
"fuchsia.diagnostics.internal.SamplerController",
"fuchsia.exception.Handler",
"fuchsia.feedback.CrashReporter",
diff --git a/src/sys/core/meta/core.cml b/src/sys/core/meta/core.cml
index 56934aa..49a5f79 100644
--- a/src/sys/core/meta/core.cml
+++ b/src/sys/core/meta/core.cml
@@ -46,6 +46,10 @@
url: "fuchsia-pkg://fuchsia.com/triage-detect#meta/triage-detect.cm",
},
{
+ name: "diagnostics-persistence",
+ url: "fuchsia-pkg://fuchsia.com/diagnostics-persistence#meta/diagnostics-persistence.cm",
+ },
+ {
name: "http-client",
url: "fuchsia-pkg://fuchsia.com/http-client#meta/http-client.cm",
},
@@ -203,7 +207,7 @@
{
protocol: "fuchsia.ui.brightness.Control",
from: "#brightness_manager",
- to: [ "#appmgr" ],
+ to: "#appmgr",
},
{
protocol: "fuchsia.hardware.serial.NewDeviceProxy",
@@ -372,7 +376,10 @@
{
protocol: [ "fuchsia.diagnostics.FeedbackArchiveAccessor" ],
from: "parent",
- to: "#detect",
+ to: [
+ "#detect",
+ "#diagnostics-persistence",
+ ],
},
{
protocol: [ "fuchsia.logger.LogSink" ],
@@ -386,6 +393,7 @@
"#detect",
"#device_settings",
"#dhcpd",
+ "#diagnostics-persistence",
"#font_provider",
"#http-client",
"#last_reboot",
@@ -492,6 +500,12 @@
subdir: "sampler",
},
{
+ directory: "config-data",
+ from: "parent",
+ to: "#diagnostics-persistence",
+ subdir: "diagnostics-persistence",
+ },
+ {
protocol: "fuchsia.developer.remotecontrol.RemoteDiagnosticsBridge",
from: "#remote-diagnostics-bridge",
to: "#remote-control",
@@ -539,20 +553,20 @@
{
storage: "data",
from: "self",
- to: [ "#brightness_manager" ],
+ to: "#brightness_manager",
},
{
directory: "dev",
from: "parent",
as: "dev-backlight",
- to: [ "#brightness_manager" ],
+ to: "#brightness_manager",
subdir: "class/backlight",
},
{
directory: "dev",
from: "parent",
as: "dev-input",
- to: [ "#brightness_manager" ],
+ to: "#brightness_manager",
subdir: "class/input",
},
{
@@ -820,12 +834,17 @@
{
protocol: "fuchsia.media.sounds.Player",
from: "#soundplayer",
- to: [ "#appmgr" ],
+ to: "#appmgr",
+ },
+ {
+ storage: "cache",
+ from: "self",
+ to: "#diagnostics-persistence",
},
{
protocol: [ "fuchsia.media.Audio" ],
from: "#appmgr",
- to: [ "#soundplayer" ],
+ to: "#soundplayer",
dependency: "weak_for_migration",
},
{
@@ -883,6 +902,10 @@
from: "#detect",
},
{
+ protocol: [ "fuchsia.diagnostics.internal.PersistenceController" ],
+ from: "#diagnostics-persistence",
+ },
+ {
protocol: [ "fuchsia.diagnostics.internal.LogStatsController" ],
from: "#log-stats",
},