platform_system_core/libstats/expresslog/Counter.cpp
Vova Sharaienko d94d7f6e20 [TeX] Introduced Telemetry Express Logging APIs
- provided C++ Counter metric logging API with UID

Bug: 262791247
Test: m
Change-Id: I438bccc9e096ce3c0d7f6cdcb70e787b6ef44983
2023-03-18 06:25:47 +00:00

37 lines
1.3 KiB
C++

//
// Copyright (C) 2023 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
#include "include/Counter.h"
#include <statslog_express.h>
#include <string.h>
#include <utils/hash/farmhash.h>
namespace android {
namespace expresslog {
void Counter::logIncrement(const char* metricName, int64_t amount) {
const int64_t metricIdHash = farmhash::Fingerprint64(metricName, strlen(metricName));
stats_write(EXPRESS_EVENT_REPORTED, metricIdHash, amount);
}
void Counter::logIncrementWithUid(const char* metricName, int32_t uid, int64_t amount) {
const int64_t metricIdHash = farmhash::Fingerprint64(metricName, strlen(metricName));
stats_write(EXPRESS_UID_EVENT_REPORTED, metricIdHash, amount, uid);
}
} // namespace expresslog
} // namespace android