45 auto manager = MonitorManager::Instance();
46 auto* component = apollo::common::util::FindOrNull(
47 *manager->GetStatus()->mutable_components(),
48 FLAGS_localization_component_name);
49 if (component ==
nullptr) {
57 const auto status = reader->GetLatestObserved();
59 ComponentStatus* component_status = component->mutable_other_status();
60 component_status->clear_status();
61 if (status ==
nullptr) {
63 "No LocalizationStatus received",
70 switch (status->fusion_status()) {
71 case MeasureState::OK:
74 case MeasureState::WARNNING:
76 ComponentStatus::WARN,
77 absl::StrCat(
"WARNNING: ", status->state_message()),
80 case MeasureState::ERROR:
82 ComponentStatus::WARN,
83 absl::StrCat(
"ERROR: ", status->state_message()), component_status);
85 case MeasureState::CRITICAL_ERROR:
87 ComponentStatus::ERROR,
88 absl::StrCat(
"CRITICAL_ERROR: ", status->state_message()),
91 case MeasureState::FATAL_ERROR:
93 ComponentStatus::FATAL,
94 absl::StrCat(
"FATAL_ERROR: ", status->state_message()),
98 AFATAL <<
"Unknown fusion_status: " << status->fusion_status();