blob: ec76cb8300930477746c07ee95d05ef9e14328e1 [file] [log] [blame]
/*
* Copyright (C) 2021 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.
*/
// Partial clone packages/modules/StatsD/statsd/src/stats_log.proto. Unused messages are not copied
// here.
syntax = "proto2";
package android.car.telemetry.statsd;
option java_package = "com.android.car.telemetry";
option java_outer_classname = "StatsLogProto";
import "packages/services/Car/service/src/com/android/car/telemetry/proto/atoms.proto";
message DimensionsValueTuple {
repeated DimensionsValue dimensions_value = 1;
}
message DimensionsValue {
optional int32 field = 1;
oneof value {
string value_str = 2;
int32 value_int = 3;
int64 value_long = 4;
bool value_bool = 5;
float value_float = 6;
DimensionsValueTuple value_tuple = 7;
uint64 value_str_hash = 8;
}
}
message EventMetricData {
optional int64 elapsed_timestamp_nanos = 1;
optional Atom atom = 2;
reserved 3, 4;
}
message GaugeBucketInfo {
repeated Atom atom = 3;
repeated int64 elapsed_timestamp_nanos = 4;
reserved 1, 2, 5, 6, 7, 8, 9;
}
message GaugeMetricData {
repeated GaugeBucketInfo bucket_info = 3;
repeated DimensionsValue dimension_leaf_values_in_what = 4;
reserved 1, 2, 5, 6;
}
message StatsLogReport {
optional int64 metric_id = 1;
message EventMetricDataWrapper {
repeated EventMetricData data = 1;
}
message GaugeMetricDataWrapper {
repeated GaugeMetricData data = 1;
reserved 2;
}
oneof data {
EventMetricDataWrapper event_metrics = 4;
GaugeMetricDataWrapper gauge_metrics = 8;
}
optional DimensionsValue dimensions_path_in_what = 11;
optional bool is_active = 14;
reserved 2, 3, 5, 6, 7, 9, 10, 12, 13, 15, 16;
}
message ConfigMetricsReport {
repeated StatsLogReport metrics = 1;
repeated string strings = 9;
reserved 2, 3, 4, 5, 6, 7, 8;
}
message ConfigMetricsReportList {
repeated ConfigMetricsReport reports = 2;
reserved 1, 10;
}
message StatsdStatsReport {
message ConfigStats {
optional int32 uid = 1;
optional int64 id = 2;
optional bool is_valid = 9;
}
repeated ConfigStats config_stats = 3;
reserved 1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19;
}