blob: 042ef3aba44223520185295b4fca05a4d98071c5 [file] [log] [blame]
// Copyright 2019 The Chromium OS Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include <re2/re2.h>
#include "timberslide/fingerprint_log_listener_impl.h"
namespace timberslide {
namespace {
constexpr char kFingerprintMCUReboot[] = "Fingerprint.MCU.Reboot";
} // namespace
void FingerprintLogListenerImpl::OnLogLine(const std::string& line) {
if (!IsRebootLine(line)) {
return;
}
if (have_seen_first_boot_) {
SendFingerprintMCUReboot();
}
have_seen_first_boot_ = true;
}
bool FingerprintLogListenerImpl::SendFingerprintMCUReboot() {
return metrics_lib_->SendCrosEventToUMA(kFingerprintMCUReboot);
}
bool FingerprintLogListenerImpl::IsRebootLine(const std::string& line) {
return RE2::FullMatch(line, R"(^\[Image: RW.*)");
}
} // namespace timberslide