Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c170fcf8 authored by Gaurav Shah's avatar Gaurav Shah Committed by Android Git Automerger
Browse files

am 0e8acc3c: am 011b2bc3: Merge "metrics: Add a CLI flag to disable dbus."

* commit '0e8acc3c':
  metrics: Add a CLI flag to disable dbus.
parents 1f981bb7 0e8acc3c
Loading
Loading
Loading
Loading
+25 −20
Original line number Diff line number Diff line
@@ -210,6 +210,7 @@ uint32_t MetricsDaemon::GetOsVersionHash() {

void MetricsDaemon::Init(bool testing,
                         bool uploader_active,
                         bool dbus_enabled,
                         MetricsLibraryInterface* metrics_lib,
                         const string& vmstats_path,
                         const string& scaling_max_freq_path,
@@ -220,6 +221,7 @@ void MetricsDaemon::Init(bool testing,
                         const string& config_root) {
  testing_ = testing;
  uploader_active_ = uploader_active;
  dbus_enabled_ = dbus_enabled;
  config_root_ = config_root;
  DCHECK(metrics_lib != nullptr);
  metrics_lib_ = metrics_lib;
@@ -275,13 +277,15 @@ void MetricsDaemon::Init(bool testing,
}

int MetricsDaemon::OnInit() {
  int return_code = chromeos::DBusDaemon::OnInit();
  int return_code = dbus_enabled_ ? chromeos::DBusDaemon::OnInit() :
      chromeos::Daemon::OnInit();
  if (return_code != EX_OK)
    return return_code;

  if (testing_)
    return EX_OK;

  if (dbus_enabled_) {
    bus_->AssertOnDBusThread();
    CHECK(bus_->SetUpAsyncOperations());

@@ -306,6 +310,7 @@ int MetricsDaemon::OnInit() {
      LOG(ERROR) << "DBus isn't connected.";
      return EX_UNAVAILABLE;
    }
  }

  if (uploader_active_) {
    upload_service_.reset(
@@ -317,7 +322,7 @@ int MetricsDaemon::OnInit() {
}

void MetricsDaemon::OnShutdown(int* return_code) {
  if (!testing_ && bus_->is_connected()) {
  if (!testing_ && dbus_enabled_ && bus_->is_connected()) {
    const std::string match_rule =
        base::StringPrintf(kCrashReporterMatchRule,
                           kCrashReporterInterface,
+5 −0
Original line number Diff line number Diff line
@@ -31,6 +31,7 @@ class MetricsDaemon : public chromeos::DBusDaemon {
  // Initializes metrics class variables.
  void Init(bool testing,
            bool uploader_active,
            bool dbus_enabled,
            MetricsLibraryInterface* metrics_lib,
            const std::string& vmstats_path,
            const std::string& cpuinfo_max_freq_path,
@@ -289,6 +290,10 @@ class MetricsDaemon : public chromeos::DBusDaemon {
  // Whether the uploader is enabled or disabled.
  bool uploader_active_;

  // Whether or not dbus should be used.
  // If disabled, we will not collect the frequency of crashes.
  bool dbus_enabled_;

  // Root of the configuration files to use.
  std::string config_root_;

+4 −0
Original line number Diff line number Diff line
@@ -29,6 +29,9 @@ int main(int argc, char** argv) {
              false,
              "run the uploader once and exit");

  // Enable dbus.
  DEFINE_bool(withdbus, true, "Enable dbus");

  // Upload Service flags.
  DEFINE_int32(upload_interval_secs,
               1800,
@@ -58,6 +61,7 @@ int main(int argc, char** argv) {
  MetricsDaemon daemon;
  daemon.Init(FLAGS_uploader_test,
              FLAGS_uploader | FLAGS_uploader_test,
              FLAGS_withdbus,
              &metrics_lib,
              "/proc/vmstat",
              kScalingMaxFreqPath,