1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
|
// Copyright 2019 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef CHROME_BROWSER_ASH_PLUGIN_VM_PLUGIN_VM_METRICS_UTIL_H_
#define CHROME_BROWSER_ASH_PLUGIN_VM_PLUGIN_VM_METRICS_UTIL_H_
#include "base/metrics/histogram_functions.h"
namespace plugin_vm {
extern const char kPluginVmLaunchResultHistogram[];
extern const char kPluginVmSetupResultHistogram[];
extern const char kPluginVmDlcUseResultHistogram[];
// These values are persisted to logs. Entries should not be renumbered and
// numeric values should never be reused.
enum class PluginVmLaunchResult {
kSuccess = 0,
kError = 1,
kInvalidLicense = 2,
kVmMissing = 3,
kExpiredLicense = 4,
kNetworkError = 5,
kInsufficientDiskSpace = 6,
kStoppedWaitingForVmTools = 7,
kMaxValue = kStoppedWaitingForVmTools,
};
// These values are persisted to logs. Entries should not be renumbered and
// numeric values should never be reused.
enum class PluginVmSetupResult {
kSuccess = 0,
// kPluginVmIsNotAllowed = 1,
// kErrorDownloadingPluginVmImage = 2,
// kErrorImportingPluginVmImage = 3,
kUserCancelledDownloadingPluginVmImage = 4,
kUserCancelledImportingPluginVmImage = 5,
// kErrorDownloadingPluginVmDlc = 6,
kUserCancelledDownloadingPluginVmDlc = 7,
kVmAlreadyExists = 8,
kUserCancelledCheckingForExistingVm = 9,
// kErrorInsufficientDiskSpace = 10,
// kUserCancelledLowDiskSpace = 11,
kUserCancelledCheckingDiskSpace = 12,
// Failure reasons are broken down in PluginVm.SetupFailureReason.
kError = 13,
kUserCancelledWithoutStarting = 14,
kUserCancelledValidatingLicense = 15,
kUserCancelledStartingDispatcher = 16,
kMaxValue = kUserCancelledStartingDispatcher,
};
// These values are persisted to logs. Entries should not be renumbered and
// numeric values should never be reused.
enum class PluginVmDlcUseResult {
kDlcSuccess = 0,
kInvalidDlcError = 1,
kInternalDlcError = 2,
kBusyDlcError = 3,
kNeedRebootDlcError = 4,
kNeedSpaceDlcError = 5,
kNoImageFoundDlcError = 6,
kMaxValue = kNoImageFoundDlcError,
};
void RecordPluginVmLaunchResultHistogram(PluginVmLaunchResult launch_result);
void RecordPluginVmSetupResultHistogram(PluginVmSetupResult setup_result);
void RecordPluginVmDlcUseResultHistogram(PluginVmDlcUseResult dlc_use_result);
void RecordPluginVmSetupTimeHistogram(base::TimeDelta setup_time);
} // namespace plugin_vm
#endif // CHROME_BROWSER_ASH_PLUGIN_VM_PLUGIN_VM_METRICS_UTIL_H_
|