1*6777b538SAndroid Build Coastguard Worker // Copyright 2014 The Chromium Authors 2*6777b538SAndroid Build Coastguard Worker // Use of this source code is governed by a BSD-style license that can be 3*6777b538SAndroid Build Coastguard Worker // found in the LICENSE file. 4*6777b538SAndroid Build Coastguard Worker 5*6777b538SAndroid Build Coastguard Worker #ifndef COMPONENTS_METRICS_METRICS_SWITCHES_H_ 6*6777b538SAndroid Build Coastguard Worker #define COMPONENTS_METRICS_METRICS_SWITCHES_H_ 7*6777b538SAndroid Build Coastguard Worker 8*6777b538SAndroid Build Coastguard Worker namespace base { 9*6777b538SAndroid Build Coastguard Worker class CommandLine; 10*6777b538SAndroid Build Coastguard Worker } 11*6777b538SAndroid Build Coastguard Worker 12*6777b538SAndroid Build Coastguard Worker namespace metrics { 13*6777b538SAndroid Build Coastguard Worker namespace switches { 14*6777b538SAndroid Build Coastguard Worker 15*6777b538SAndroid Build Coastguard Worker // Alphabetical list of switches specific to the metrics component. Document 16*6777b538SAndroid Build Coastguard Worker // each in the .cc file. 17*6777b538SAndroid Build Coastguard Worker 18*6777b538SAndroid Build Coastguard Worker extern const char kExportUmaLogsToFile[]; 19*6777b538SAndroid Build Coastguard Worker extern const char kForceEnableMetricsReporting[]; 20*6777b538SAndroid Build Coastguard Worker extern const char kMetricsRecordingOnly[]; 21*6777b538SAndroid Build Coastguard Worker extern const char kMetricsUploadIntervalSec[]; 22*6777b538SAndroid Build Coastguard Worker extern const char kResetVariationState[]; 23*6777b538SAndroid Build Coastguard Worker extern const char kUkmServerUrl[]; 24*6777b538SAndroid Build Coastguard Worker extern const char kUmaServerUrl[]; 25*6777b538SAndroid Build Coastguard Worker extern const char kUmaInsecureServerUrl[]; 26*6777b538SAndroid Build Coastguard Worker 27*6777b538SAndroid Build Coastguard Worker } // namespace switches 28*6777b538SAndroid Build Coastguard Worker 29*6777b538SAndroid Build Coastguard Worker // Returns true if `kMetricsRecordingOnly` is on the command line for the 30*6777b538SAndroid Build Coastguard Worker // current process. 31*6777b538SAndroid Build Coastguard Worker bool IsMetricsRecordingOnlyEnabled(); 32*6777b538SAndroid Build Coastguard Worker 33*6777b538SAndroid Build Coastguard Worker // Returns true if `kForceEnableMetricsReporting` is on the command line for the 34*6777b538SAndroid Build Coastguard Worker // current process. 35*6777b538SAndroid Build Coastguard Worker bool IsMetricsReportingForceEnabled(); 36*6777b538SAndroid Build Coastguard Worker 37*6777b538SAndroid Build Coastguard Worker // Returns true if `kForceMsbbSettingOnForUkm` is on the command line for the 38*6777b538SAndroid Build Coastguard Worker // current process. 39*6777b538SAndroid Build Coastguard Worker bool IsMsbbSettingForcedOnForUkm(); 40*6777b538SAndroid Build Coastguard Worker 41*6777b538SAndroid Build Coastguard Worker // Adds `kMetricsRecordingOnly` to `command_line` if not already present. 42*6777b538SAndroid Build Coastguard Worker void EnableMetricsRecordingOnlyForTesting(base::CommandLine* command_line); 43*6777b538SAndroid Build Coastguard Worker 44*6777b538SAndroid Build Coastguard Worker // Adds `kForceEnableMetricsReporting` to the command line for the current 45*6777b538SAndroid Build Coastguard Worker // process if not already present. 46*6777b538SAndroid Build Coastguard Worker void ForceEnableMetricsReportingForTesting(); 47*6777b538SAndroid Build Coastguard Worker 48*6777b538SAndroid Build Coastguard Worker } // namespace metrics 49*6777b538SAndroid Build Coastguard Worker 50*6777b538SAndroid Build Coastguard Worker #endif // COMPONENTS_METRICS_METRICS_SWITCHES_H_ 51