| // Copyright 2022 The ChromiumOS Authors | |
| // Use of this source code is governed by a BSD-style license that can be | |
| // found in the LICENSE file. | |
| #ifndef RMAD_LOGS_LOGS_CONSTANTS_H_ | |
| #define RMAD_LOGS_LOGS_CONSTANTS_H_ | |
| #include <string_view> | |
| #include <base/containers/fixed_flat_map.h> | |
| namespace rmad { | |
| // JsonStore keys. | |
| inline constexpr char kLogs[] = "logs"; | |
| inline constexpr char kEvents[] = "events"; | |
| // Event keys. | |
| inline constexpr char kTimestamp[] = "timestamp"; | |
| inline constexpr char kStateId[] = "state_id"; | |
| inline constexpr char kType[] = "type"; | |
| inline constexpr char kDetails[] = "details"; | |
| // State transition keys. | |
| inline constexpr char kFromStateId[] = "from_state_id"; | |
| inline constexpr char kToStateId[] = "to_state_id"; | |
| // Error keys. | |
| inline constexpr char kOccurredError[] = "occurred_error"; | |
| // State specific attributes. | |
| inline constexpr char kLogIsCompliant[] = "is_compliant"; | |
| inline constexpr char kLogUnqualifiedComponents[] = "unqualified_components"; | |
| inline constexpr char kLogReplacedComponents[] = "replaced_components"; | |
| inline constexpr char kLogReworkSelected[] = "rework_selected"; | |
| inline constexpr char kLogDestination[] = "destination"; | |
| inline constexpr char kLogWipeDevice[] = "wipe_device"; | |
| inline constexpr char kLogWpDisableMethod[] = "wp_disable_method"; | |
| inline constexpr char kLogRsuChallengeCode[] = "challenge_code"; | |
| inline constexpr char kLogRsuHwid[] = "hwid"; | |
| inline constexpr char kLogRestockOption[] = "restock_option"; | |
| inline constexpr char kLogCalibrationComponents[] = "calibration_components"; | |
| inline constexpr char kLogCalibrationSetupInstruction[] = | |
| "calibration_instruction"; | |
| inline constexpr char kLogComponent[] = "component"; | |
| inline constexpr char kLogCalibrationStatus[] = "calibration_status"; | |
| inline constexpr char kFirmwareStatus[] = "firmware_status"; | |
| // Log string formats. | |
| constexpr char kLogTimestampFormat[] = "[%04d-%02d-%02d %02d:%02d:%02d] "; | |
| constexpr char kLogTransitionFormat[] = "Transitioned from %s to %s"; | |
| constexpr char kLogErrorFormat[] = "ERROR in %s: %s"; | |
| constexpr char kLogDetailPrefixFormat[] = "%s: "; | |
| constexpr char kLogRepairStartString[] = "Shimless RMA Started"; | |
| constexpr char kLogNoUnqualifiedComponentsString[] = | |
| "No unqualified components detected"; | |
| constexpr char kLogUnqualifiedComponentsDetectedFormat[] = | |
| "Unqualified components detected - %s"; | |
| constexpr char kLogSelectComponentsFormat[] = "Selected %s"; | |
| constexpr char kLogSelectComponentsReworkString[] = "Selected Mainboard Rework"; | |
| constexpr char kLogChooseDeviceDestinationFormat[] = "Selected %s"; | |
| constexpr char kLogWipeSelectionFormat[] = "Selected to %s user data"; | |
| constexpr char kLogWpDisableFormat[] = | |
| "Selected to disable write protect via %s"; | |
| constexpr char kLogRsuChallengeFormat[] = "The RSU challenge code is %s"; | |
| constexpr char kLogRestockContinueString[] = "Continuing"; | |
| constexpr char kLogRestockShutdownString[] = "Shutting down the device"; | |
| constexpr char kLogCalibrationSetupBaseString[] = "Place base on flat surface"; | |
| constexpr char kLogCalibrationSetupLidString[] = "Place lid on flat surface"; | |
| constexpr char kLogCalibrationSetupUnknownString[] = "Unknown"; | |
| constexpr char kLogCalibrationFormat[] = "Calibration for %s"; | |
| constexpr char kLogCalibrationStatusFailedString[] = "Failed"; | |
| constexpr char kLogCalibrationStatusSkippedString[] = "Skipped"; | |
| constexpr char kLogCalibrationStatusRetriedString[] = "Retried"; | |
| constexpr char kLogFirmwareUpdatePluggedInString[] = "Plugged in USB"; | |
| constexpr char kLogFirmwareUpdateFileNotFoundString[] = | |
| "Suitable OS image not detected on USB"; | |
| constexpr char kFirmwareUpdatedString[] = "Firmware updated. Going to reboot"; | |
| constexpr char kFirmwareCompleteString[] = "Firmware update complete"; | |
| enum class LogEventType { | |
| kTransition = 0, | |
| kData = 1, | |
| kError = 2, | |
| kMaxValue = kError, | |
| }; | |
| enum class LogCalibrationStatus { | |
| kFailed = 0, | |
| kSkip = 1, | |
| kRetry = 2, | |
| kMaxValue = kRetry, | |
| }; | |
| constexpr auto kLogCalibrationStatusMap = | |
| base::MakeFixedFlatMap<LogCalibrationStatus, std::string_view>( | |
| {{LogCalibrationStatus::kFailed, kLogCalibrationStatusFailedString}, | |
| {LogCalibrationStatus::kSkip, kLogCalibrationStatusSkippedString}, | |
| {LogCalibrationStatus::kRetry, kLogCalibrationStatusRetriedString}}); | |
| enum class FirmwareUpdateStatus { | |
| kUsbPluggedIn = 0, | |
| kUsbPluggedInFileNotFound = 1, | |
| kFirmwareUpdated = 2, | |
| kFirmwareComplete = 3, | |
| kMaxValue = kFirmwareComplete, | |
| }; | |
| constexpr auto kFirmwareUpdateStatusMap = | |
| base::MakeFixedFlatMap<FirmwareUpdateStatus, std::string_view>( | |
| {{FirmwareUpdateStatus::kUsbPluggedIn, | |
| kLogFirmwareUpdatePluggedInString}, | |
| {FirmwareUpdateStatus::kUsbPluggedInFileNotFound, | |
| kLogFirmwareUpdateFileNotFoundString}, | |
| {FirmwareUpdateStatus::kFirmwareUpdated, kFirmwareUpdatedString}, | |
| {FirmwareUpdateStatus::kFirmwareComplete, kFirmwareCompleteString}}); | |
| } // namespace rmad | |
| #endif // RMAD_LOGS_LOGS_CONSTANTS_H_ |