[Metric Definition] Remove string_buffer_max field
Remove the string_buffer_max field from the metric_definition.proto.
The string_buffer_max field will now be under the
report_definition.proto.
Bug: 79464
Change-Id: Id44d3ad6a73fd9e28e7c761ff7f4b91b160ab044
Reviewed-on: https://fuchsia-review.googlesource.com/c/cobalt/+/670597
Reviewed-by: Cameron Dale <camrdale@google.com>
Commit-Queue: Andrew Hwang <anhwang@google.com>
diff --git a/src/registry/metric_definition.proto b/src/registry/metric_definition.proto
index 5ed893c..4068c6c 100644
--- a/src/registry/metric_definition.proto
+++ b/src/registry/metric_definition.proto
@@ -32,8 +32,8 @@
//
// Next ID: 27
message MetricDefinition {
- reserved 6, 7, 9, 17;
- reserved "event_codes", "max_event_code", "parts", "event_code_buffer_max";
+ reserved 6, 7, 9, 17, 21;
+ reserved "event_codes", "max_event_code", "parts", "event_code_buffer_max", "string_buffer_max";
// Unique name for this Metric within its owning project.
// The name must obey the syntax of a C variable name and must have length
@@ -253,7 +253,6 @@
// - metric_dimensions (0 or more)
// - metric_semantics (required)
// - string_candidate_file. (required)
- // - string_buffer_max (required)
STRING = 11;
// Allows users of Cobalt to define custom Metrics with custom semantics and
@@ -361,20 +360,6 @@
// This should augment the description given in the comments.
repeated MetricSemantics metric_semantics = 20;
- // The maximum number of distinct strings that Cobalt must
- // keep in its in-memory buffer on any single device.
- // During local aggregation for metrics of type STRING, Cobalt will keep track
- // of this many distinct strings per aggregation period. The metric's project
- // will be charged against a resource budget for this value so project owners
- // are encouraged to set this as small as possible. A STRING metric
- // includes a file of candidate strings that may contain many thousands
- // of strings. But it is expected that any one device will log only a few of
- // these strings per day. We may set string_buffer_max to a relatively
- // small number, say 20.
- //
- // This is a required field for metrics of type STRING.
- uint32 string_buffer_max = 21;
-
// The path to a list of candidate strings for a metric of type STRING.
//
// This is a required field for metrics of type STRING.
diff --git a/src/registry/report_definition.proto b/src/registry/report_definition.proto
index efcbe92..6a1a685 100644
--- a/src/registry/report_definition.proto
+++ b/src/registry/report_definition.proto
@@ -520,7 +520,8 @@
// (See report_row.proto)
//
// ReportDefinition fields particular to this type:
- // candidate_file
+ // - candidate_file
+ // - string_buffer_max
STRING_COUNTS = 20;
// For each system_profile SP, each event_vector EV, and each string value
@@ -548,6 +549,7 @@
// ReportDefinition fields particular to this type:
// - candidate_file
// - local_aggregation_period
+ // - string_buffer_max
// - system_profile_selection (SELECT_FIRST and SELECT LAST will maintain
// uniqueness, REPORT_ALL may be useful in some cases)
UNIQUE_DEVICE_STRING_COUNTS = 21;
@@ -892,17 +894,16 @@
// observations.
uint64 event_vector_buffer_max = 26;
- // This field will soon replace the `string_buffer_max` field of MetricDefinition
- // as a required field for reports of type STRING_COUNTS. Do not use it yet.
- //
// The maximum number of distinct strings that Cobalt must keep in its in-memory buffer
- // on any single device. During local aggregation for reports of type STRING_COUNTS,
- // Cobalt will keep track of this many distinct strings per aggregation period. The report's
- // project will be charged against a resource budget for this value so project owners are
- // encouraged to set this as small as possible. A STRING metric includes a file of candidate
- // strings that may contain many thousands of strings. But it is expected that any one device
- // will log only a few of these strings per day. We may set string_buffer_max to a relatively
- // small number, say 20.
+ // on any single device. During local aggregation for reports of type STRING_COUNTS and
+ // UNIQUE_DEVICE_STRING_COUNTS, Cobalt will keep track of this many distinct strings per
+ // aggregation period. The report's project will be charged against a resource budget for this
+ // value so project owners are encouraged to set this as small as possible. A STRING metric
+ // includes a file of candidate strings that may contain many thousands of strings. But it is
+ // expected that any one device will log only a few of these strings per day. We may set
+ // string_buffer_max to a relatively small number, say 20.
+ //
+ // This is a required field for reports of type STRING_COUNTS and UNIQUE_DEVICE_STRING_COUNTS.
uint32 string_buffer_max = 28;
// For reports of type UNIQUE_DEVICE_COUNTS, send observations as soon as the