/* * Copyright (C) 2020 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. */ syntax = "proto2"; package android.os.statsd.metadata; message ConfigKey { optional int64 config_id = 1; optional int32 uid = 2; } message Field { optional int32 tag = 1; optional int32 field = 2; } message FieldValue { optional Field field = 1; oneof value { int32 value_int = 2; int64 value_long = 3; float value_float = 4; double value_double = 5; string value_str = 6; bytes value_storage = 7; } } message MetricDimensionKey { repeated FieldValue dimension_key_in_what = 1; repeated FieldValue state_values_key = 2; } message AlertDimensionKeyedData { // The earliest time the alert can be fired again in wall clock time. optional int32 last_refractory_ends_sec = 1; optional MetricDimensionKey dimension_key = 2; } message AlertMetadata { optional int64 alert_id = 1; repeated AlertDimensionKeyedData alert_dim_keyed_data = 2; } // All metadata for a config in statsd message StatsMetadata { optional ConfigKey config_key = 1; repeated AlertMetadata alert_metadata = 2; } message StatsMetadataList { repeated StatsMetadata stats_metadata = 1; }