Merge "metricsd: Update to use new component/trait APIs from weaved"
am: 919af692c5
* commit '919af692c58c1aab5081a3cbf48e88e744094dae':
metricsd: Update to use new component/trait APIs from weaved
This commit is contained in:
commit
457fcbd81f
|
@ -146,9 +146,7 @@ LOCAL_CLANG := true
|
|||
LOCAL_CPP_EXTENSION := $(metrics_cpp_extension)
|
||||
LOCAL_CPPFLAGS := $(metrics_CPPFLAGS)
|
||||
LOCAL_INIT_RC := metrics_collector.rc
|
||||
LOCAL_REQUIRED_MODULES := \
|
||||
metrics.json \
|
||||
metrics.schema.json
|
||||
LOCAL_REQUIRED_MODULES := metrics.json
|
||||
LOCAL_RTTI_FLAG := -frtti
|
||||
LOCAL_SHARED_LIBRARIES := $(metrics_collector_shared_libraries)
|
||||
LOCAL_SRC_FILES := $(metrics_collector_common) \
|
||||
|
@ -207,13 +205,6 @@ include $(BUILD_NATIVE_TEST)
|
|||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := metrics.json
|
||||
LOCAL_MODULE_CLASS := ETC
|
||||
LOCAL_MODULE_PATH := $(TARGET_OUT_ETC)/weaved/commands
|
||||
LOCAL_SRC_FILES := etc/weaved/commands/$(LOCAL_MODULE)
|
||||
include $(BUILD_PREBUILT)
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := metrics.schema.json
|
||||
LOCAL_MODULE_CLASS := ETC
|
||||
LOCAL_MODULE_PATH := $(TARGET_OUT_ETC)/weaved/states
|
||||
LOCAL_SRC_FILES := etc/weaved/states/$(LOCAL_MODULE)
|
||||
LOCAL_MODULE_PATH := $(TARGET_OUT_ETC)/weaved/traits
|
||||
LOCAL_SRC_FILES := etc/weaved/traits/$(LOCAL_MODULE)
|
||||
include $(BUILD_PREBUILT)
|
||||
|
|
|
@ -1,10 +0,0 @@
|
|||
{
|
||||
"_metrics": {
|
||||
"_enableAnalyticsReporting": {
|
||||
"minimalRole": "manager"
|
||||
},
|
||||
"_disableAnalyticsReporting": {
|
||||
"minimalRole": "manager"
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,8 +0,0 @@
|
|||
{
|
||||
"_metrics": {
|
||||
"_AnalyticsReportingState": {
|
||||
"enum": ["enabled", "disabled"],
|
||||
"default": "disabled"
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,18 @@
|
|||
{
|
||||
"_metrics": {
|
||||
"commands": {
|
||||
"_enableAnalyticsReporting": {
|
||||
"minimalRole": "manager"
|
||||
},
|
||||
"_disableAnalyticsReporting": {
|
||||
"minimalRole": "manager"
|
||||
}
|
||||
},
|
||||
"state": {
|
||||
"_AnalyticsReportingState": {
|
||||
"type": "string",
|
||||
"enum": [ "enabled", "disabled" ]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -71,6 +71,8 @@ const int kMetricMeminfoInterval = 30; // seconds
|
|||
const char kMeminfoFileName[] = "/proc/meminfo";
|
||||
const char kVmStatFileName[] = "/proc/vmstat";
|
||||
|
||||
const char kWeaveComponent[] = "metrics";
|
||||
|
||||
} // namespace
|
||||
|
||||
// Zram sysfs entries.
|
||||
|
@ -246,10 +248,13 @@ int MetricsCollector::OnInit() {
|
|||
device_ = weaved::Device::CreateInstance(
|
||||
bus_,
|
||||
base::Bind(&MetricsCollector::UpdateWeaveState, base::Unretained(this)));
|
||||
device_->AddComponent(kWeaveComponent, {"_metrics"});
|
||||
device_->AddCommandHandler(
|
||||
kWeaveComponent,
|
||||
"_metrics._enableAnalyticsReporting",
|
||||
base::Bind(&MetricsCollector::OnEnableMetrics, base::Unretained(this)));
|
||||
device_->AddCommandHandler(
|
||||
kWeaveComponent,
|
||||
"_metrics._disableAnalyticsReporting",
|
||||
base::Bind(&MetricsCollector::OnDisableMetrics, base::Unretained(this)));
|
||||
|
||||
|
@ -324,12 +329,13 @@ void MetricsCollector::UpdateWeaveState() {
|
|||
if (!device_)
|
||||
return;
|
||||
|
||||
brillo::VariantDictionary state_change{
|
||||
{ "_metrics._AnalyticsReportingState",
|
||||
metrics_lib_->AreMetricsEnabled() ? "enabled" : "disabled" }
|
||||
};
|
||||
std::string enabled =
|
||||
metrics_lib_->AreMetricsEnabled() ? "enabled" : "disabled";
|
||||
|
||||
if (!device_->SetStateProperties(state_change, nullptr)) {
|
||||
if (!device_->SetStateProperty(kWeaveComponent,
|
||||
"_metrics._AnalyticsReportingState",
|
||||
enabled,
|
||||
nullptr)) {
|
||||
LOG(ERROR) << "failed to update weave's state";
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue