public static final class Aggregation.Builder extends GeneratedMessageV3.Builder<Aggregation.Builder> implements AggregationOrBuilder
Describes how to combine multiple time series to provide different views of the data. Aggregation consists of an alignment step on individual time series (`alignment_period` and `per_series_aligner`) followed by an optional reduction step of the data across the aligned time series (`cross_series_reducer` and `group_by_fields`). For more details, see [Aggregation](/monitoring/api/learn_more#aggregation).Protobuf type
google.monitoring.v3.Aggregation| Modifier and Type | Method and Description |
|---|---|
Aggregation.Builder |
addAllGroupByFields(java.lang.Iterable<java.lang.String> values)
The set of fields to preserve when `crossSeriesReducer` is
specified.
|
Aggregation.Builder |
addGroupByFields(java.lang.String value)
The set of fields to preserve when `crossSeriesReducer` is
specified.
|
Aggregation.Builder |
addGroupByFieldsBytes(ByteString value)
The set of fields to preserve when `crossSeriesReducer` is
specified.
|
Aggregation.Builder |
addRepeatedField(Descriptors.FieldDescriptor field,
java.lang.Object value) |
Aggregation |
build() |
Aggregation |
buildPartial() |
Aggregation.Builder |
clear() |
Aggregation.Builder |
clearAlignmentPeriod()
The alignment period for per-[time series][google.monitoring.v3.TimeSeries]
alignment.
|
Aggregation.Builder |
clearCrossSeriesReducer()
The approach to be used to combine time series.
|
Aggregation.Builder |
clearField(Descriptors.FieldDescriptor field) |
Aggregation.Builder |
clearGroupByFields()
The set of fields to preserve when `crossSeriesReducer` is
specified.
|
Aggregation.Builder |
clearOneof(Descriptors.OneofDescriptor oneof) |
Aggregation.Builder |
clearPerSeriesAligner()
The approach to be used to align individual time series.
|
Aggregation.Builder |
clone() |
Duration |
getAlignmentPeriod()
The alignment period for per-[time series][google.monitoring.v3.TimeSeries]
alignment.
|
Duration.Builder |
getAlignmentPeriodBuilder()
The alignment period for per-[time series][google.monitoring.v3.TimeSeries]
alignment.
|
DurationOrBuilder |
getAlignmentPeriodOrBuilder()
The alignment period for per-[time series][google.monitoring.v3.TimeSeries]
alignment.
|
Aggregation.Reducer |
getCrossSeriesReducer()
The approach to be used to combine time series.
|
int |
getCrossSeriesReducerValue()
The approach to be used to combine time series.
|
Aggregation |
getDefaultInstanceForType() |
static Descriptors.Descriptor |
getDescriptor() |
Descriptors.Descriptor |
getDescriptorForType() |
java.lang.String |
getGroupByFields(int index)
The set of fields to preserve when `crossSeriesReducer` is
specified.
|
ByteString |
getGroupByFieldsBytes(int index)
The set of fields to preserve when `crossSeriesReducer` is
specified.
|
int |
getGroupByFieldsCount()
The set of fields to preserve when `crossSeriesReducer` is
specified.
|
ProtocolStringList |
getGroupByFieldsList()
The set of fields to preserve when `crossSeriesReducer` is
specified.
|
Aggregation.Aligner |
getPerSeriesAligner()
The approach to be used to align individual time series.
|
int |
getPerSeriesAlignerValue()
The approach to be used to align individual time series.
|
boolean |
hasAlignmentPeriod()
The alignment period for per-[time series][google.monitoring.v3.TimeSeries]
alignment.
|
protected GeneratedMessageV3.FieldAccessorTable |
internalGetFieldAccessorTable() |
boolean |
isInitialized() |
Aggregation.Builder |
mergeAlignmentPeriod(Duration value)
The alignment period for per-[time series][google.monitoring.v3.TimeSeries]
alignment.
|
Aggregation.Builder |
mergeFrom(Aggregation other) |
Aggregation.Builder |
mergeFrom(CodedInputStream input,
ExtensionRegistryLite extensionRegistry) |
Aggregation.Builder |
mergeFrom(Message other) |
Aggregation.Builder |
mergeUnknownFields(UnknownFieldSet unknownFields) |
Aggregation.Builder |
setAlignmentPeriod(Duration.Builder builderForValue)
The alignment period for per-[time series][google.monitoring.v3.TimeSeries]
alignment.
|
Aggregation.Builder |
setAlignmentPeriod(Duration value)
The alignment period for per-[time series][google.monitoring.v3.TimeSeries]
alignment.
|
Aggregation.Builder |
setCrossSeriesReducer(Aggregation.Reducer value)
The approach to be used to combine time series.
|
Aggregation.Builder |
setCrossSeriesReducerValue(int value)
The approach to be used to combine time series.
|
Aggregation.Builder |
setField(Descriptors.FieldDescriptor field,
java.lang.Object value) |
Aggregation.Builder |
setGroupByFields(int index,
java.lang.String value)
The set of fields to preserve when `crossSeriesReducer` is
specified.
|
Aggregation.Builder |
setPerSeriesAligner(Aggregation.Aligner value)
The approach to be used to align individual time series.
|
Aggregation.Builder |
setPerSeriesAlignerValue(int value)
The approach to be used to align individual time series.
|
Aggregation.Builder |
setRepeatedField(Descriptors.FieldDescriptor field,
int index,
java.lang.Object value) |
Aggregation.Builder |
setUnknownFields(UnknownFieldSet unknownFields) |
getAllFields, getField, getFieldBuilder, getOneofFieldDescriptor, getParentForChildren, getRepeatedField, getRepeatedFieldBuilder, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof, internalGetMapField, internalGetMutableMapField, isClean, markClean, newBuilderForField, onBuilt, onChanged, setUnknownFieldsProto3findInitializationErrors, getInitializationErrorString, internalMergeFrom, mergeDelimitedFrom, mergeDelimitedFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, newUninitializedMessageException, toStringaddAll, addAll, mergeFrom, newUninitializedMessageExceptionequals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitfindInitializationErrors, getAllFields, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneofmergeFrompublic static final Descriptors.Descriptor getDescriptor()
protected GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
internalGetFieldAccessorTable in class GeneratedMessageV3.Builder<Aggregation.Builder>public Aggregation.Builder clear()
clear in interface Message.Builderclear in interface MessageLite.Builderclear in class GeneratedMessageV3.Builder<Aggregation.Builder>public Descriptors.Descriptor getDescriptorForType()
getDescriptorForType in interface Message.BuildergetDescriptorForType in interface MessageOrBuildergetDescriptorForType in class GeneratedMessageV3.Builder<Aggregation.Builder>public Aggregation getDefaultInstanceForType()
getDefaultInstanceForType in interface MessageLiteOrBuildergetDefaultInstanceForType in interface MessageOrBuilderpublic Aggregation build()
build in interface Message.Builderbuild in interface MessageLite.Builderpublic Aggregation buildPartial()
buildPartial in interface Message.BuilderbuildPartial in interface MessageLite.Builderpublic Aggregation.Builder clone()
clone in interface Message.Builderclone in interface MessageLite.Builderclone in class GeneratedMessageV3.Builder<Aggregation.Builder>public Aggregation.Builder setField(Descriptors.FieldDescriptor field, java.lang.Object value)
setField in interface Message.BuildersetField in class GeneratedMessageV3.Builder<Aggregation.Builder>public Aggregation.Builder clearField(Descriptors.FieldDescriptor field)
clearField in interface Message.BuilderclearField in class GeneratedMessageV3.Builder<Aggregation.Builder>public Aggregation.Builder clearOneof(Descriptors.OneofDescriptor oneof)
clearOneof in interface Message.BuilderclearOneof in class GeneratedMessageV3.Builder<Aggregation.Builder>public Aggregation.Builder setRepeatedField(Descriptors.FieldDescriptor field, int index, java.lang.Object value)
setRepeatedField in interface Message.BuildersetRepeatedField in class GeneratedMessageV3.Builder<Aggregation.Builder>public Aggregation.Builder addRepeatedField(Descriptors.FieldDescriptor field, java.lang.Object value)
addRepeatedField in interface Message.BuilderaddRepeatedField in class GeneratedMessageV3.Builder<Aggregation.Builder>public Aggregation.Builder mergeFrom(Message other)
mergeFrom in interface Message.BuildermergeFrom in class AbstractMessage.Builder<Aggregation.Builder>public Aggregation.Builder mergeFrom(Aggregation other)
public final boolean isInitialized()
isInitialized in interface MessageLiteOrBuilderisInitialized in class GeneratedMessageV3.Builder<Aggregation.Builder>public Aggregation.Builder mergeFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry) throws java.io.IOException
mergeFrom in interface Message.BuildermergeFrom in interface MessageLite.BuildermergeFrom in class AbstractMessage.Builder<Aggregation.Builder>java.io.IOExceptionpublic boolean hasAlignmentPeriod()
The alignment period for per-[time series][google.monitoring.v3.TimeSeries] alignment. If present, `alignmentPeriod` must be at least 60 seconds. After per-time series alignment, each time series will contain data points only on the period boundaries. If `perSeriesAligner` is not specified or equals `ALIGN_NONE`, then this field is ignored. If `perSeriesAligner` is specified and does not equal `ALIGN_NONE`, then this field must be defined; otherwise an error is returned.
.google.protobuf.Duration alignment_period = 1;hasAlignmentPeriod in interface AggregationOrBuilderpublic Duration getAlignmentPeriod()
The alignment period for per-[time series][google.monitoring.v3.TimeSeries] alignment. If present, `alignmentPeriod` must be at least 60 seconds. After per-time series alignment, each time series will contain data points only on the period boundaries. If `perSeriesAligner` is not specified or equals `ALIGN_NONE`, then this field is ignored. If `perSeriesAligner` is specified and does not equal `ALIGN_NONE`, then this field must be defined; otherwise an error is returned.
.google.protobuf.Duration alignment_period = 1;getAlignmentPeriod in interface AggregationOrBuilderpublic Aggregation.Builder setAlignmentPeriod(Duration value)
The alignment period for per-[time series][google.monitoring.v3.TimeSeries] alignment. If present, `alignmentPeriod` must be at least 60 seconds. After per-time series alignment, each time series will contain data points only on the period boundaries. If `perSeriesAligner` is not specified or equals `ALIGN_NONE`, then this field is ignored. If `perSeriesAligner` is specified and does not equal `ALIGN_NONE`, then this field must be defined; otherwise an error is returned.
.google.protobuf.Duration alignment_period = 1;public Aggregation.Builder setAlignmentPeriod(Duration.Builder builderForValue)
The alignment period for per-[time series][google.monitoring.v3.TimeSeries] alignment. If present, `alignmentPeriod` must be at least 60 seconds. After per-time series alignment, each time series will contain data points only on the period boundaries. If `perSeriesAligner` is not specified or equals `ALIGN_NONE`, then this field is ignored. If `perSeriesAligner` is specified and does not equal `ALIGN_NONE`, then this field must be defined; otherwise an error is returned.
.google.protobuf.Duration alignment_period = 1;public Aggregation.Builder mergeAlignmentPeriod(Duration value)
The alignment period for per-[time series][google.monitoring.v3.TimeSeries] alignment. If present, `alignmentPeriod` must be at least 60 seconds. After per-time series alignment, each time series will contain data points only on the period boundaries. If `perSeriesAligner` is not specified or equals `ALIGN_NONE`, then this field is ignored. If `perSeriesAligner` is specified and does not equal `ALIGN_NONE`, then this field must be defined; otherwise an error is returned.
.google.protobuf.Duration alignment_period = 1;public Aggregation.Builder clearAlignmentPeriod()
The alignment period for per-[time series][google.monitoring.v3.TimeSeries] alignment. If present, `alignmentPeriod` must be at least 60 seconds. After per-time series alignment, each time series will contain data points only on the period boundaries. If `perSeriesAligner` is not specified or equals `ALIGN_NONE`, then this field is ignored. If `perSeriesAligner` is specified and does not equal `ALIGN_NONE`, then this field must be defined; otherwise an error is returned.
.google.protobuf.Duration alignment_period = 1;public Duration.Builder getAlignmentPeriodBuilder()
The alignment period for per-[time series][google.monitoring.v3.TimeSeries] alignment. If present, `alignmentPeriod` must be at least 60 seconds. After per-time series alignment, each time series will contain data points only on the period boundaries. If `perSeriesAligner` is not specified or equals `ALIGN_NONE`, then this field is ignored. If `perSeriesAligner` is specified and does not equal `ALIGN_NONE`, then this field must be defined; otherwise an error is returned.
.google.protobuf.Duration alignment_period = 1;public DurationOrBuilder getAlignmentPeriodOrBuilder()
The alignment period for per-[time series][google.monitoring.v3.TimeSeries] alignment. If present, `alignmentPeriod` must be at least 60 seconds. After per-time series alignment, each time series will contain data points only on the period boundaries. If `perSeriesAligner` is not specified or equals `ALIGN_NONE`, then this field is ignored. If `perSeriesAligner` is specified and does not equal `ALIGN_NONE`, then this field must be defined; otherwise an error is returned.
.google.protobuf.Duration alignment_period = 1;getAlignmentPeriodOrBuilder in interface AggregationOrBuilderpublic int getPerSeriesAlignerValue()
The approach to be used to align individual time series. Not all alignment functions may be applied to all time series, depending on the metric type and value type of the original time series. Alignment may change the metric type or the value type of the time series. Time series data must be aligned in order to perform cross-time series reduction. If `crossSeriesReducer` is specified, then `perSeriesAligner` must be specified and not equal `ALIGN_NONE` and `alignmentPeriod` must be specified; otherwise, an error is returned.
.google.monitoring.v3.Aggregation.Aligner per_series_aligner = 2;getPerSeriesAlignerValue in interface AggregationOrBuilderpublic Aggregation.Builder setPerSeriesAlignerValue(int value)
The approach to be used to align individual time series. Not all alignment functions may be applied to all time series, depending on the metric type and value type of the original time series. Alignment may change the metric type or the value type of the time series. Time series data must be aligned in order to perform cross-time series reduction. If `crossSeriesReducer` is specified, then `perSeriesAligner` must be specified and not equal `ALIGN_NONE` and `alignmentPeriod` must be specified; otherwise, an error is returned.
.google.monitoring.v3.Aggregation.Aligner per_series_aligner = 2;public Aggregation.Aligner getPerSeriesAligner()
The approach to be used to align individual time series. Not all alignment functions may be applied to all time series, depending on the metric type and value type of the original time series. Alignment may change the metric type or the value type of the time series. Time series data must be aligned in order to perform cross-time series reduction. If `crossSeriesReducer` is specified, then `perSeriesAligner` must be specified and not equal `ALIGN_NONE` and `alignmentPeriod` must be specified; otherwise, an error is returned.
.google.monitoring.v3.Aggregation.Aligner per_series_aligner = 2;getPerSeriesAligner in interface AggregationOrBuilderpublic Aggregation.Builder setPerSeriesAligner(Aggregation.Aligner value)
The approach to be used to align individual time series. Not all alignment functions may be applied to all time series, depending on the metric type and value type of the original time series. Alignment may change the metric type or the value type of the time series. Time series data must be aligned in order to perform cross-time series reduction. If `crossSeriesReducer` is specified, then `perSeriesAligner` must be specified and not equal `ALIGN_NONE` and `alignmentPeriod` must be specified; otherwise, an error is returned.
.google.monitoring.v3.Aggregation.Aligner per_series_aligner = 2;public Aggregation.Builder clearPerSeriesAligner()
The approach to be used to align individual time series. Not all alignment functions may be applied to all time series, depending on the metric type and value type of the original time series. Alignment may change the metric type or the value type of the time series. Time series data must be aligned in order to perform cross-time series reduction. If `crossSeriesReducer` is specified, then `perSeriesAligner` must be specified and not equal `ALIGN_NONE` and `alignmentPeriod` must be specified; otherwise, an error is returned.
.google.monitoring.v3.Aggregation.Aligner per_series_aligner = 2;public int getCrossSeriesReducerValue()
The approach to be used to combine time series. Not all reducer functions may be applied to all time series, depending on the metric type and the value type of the original time series. Reduction may change the metric type of value type of the time series. Time series data must be aligned in order to perform cross-time series reduction. If `crossSeriesReducer` is specified, then `perSeriesAligner` must be specified and not equal `ALIGN_NONE` and `alignmentPeriod` must be specified; otherwise, an error is returned.
.google.monitoring.v3.Aggregation.Reducer cross_series_reducer = 4;getCrossSeriesReducerValue in interface AggregationOrBuilderpublic Aggregation.Builder setCrossSeriesReducerValue(int value)
The approach to be used to combine time series. Not all reducer functions may be applied to all time series, depending on the metric type and the value type of the original time series. Reduction may change the metric type of value type of the time series. Time series data must be aligned in order to perform cross-time series reduction. If `crossSeriesReducer` is specified, then `perSeriesAligner` must be specified and not equal `ALIGN_NONE` and `alignmentPeriod` must be specified; otherwise, an error is returned.
.google.monitoring.v3.Aggregation.Reducer cross_series_reducer = 4;public Aggregation.Reducer getCrossSeriesReducer()
The approach to be used to combine time series. Not all reducer functions may be applied to all time series, depending on the metric type and the value type of the original time series. Reduction may change the metric type of value type of the time series. Time series data must be aligned in order to perform cross-time series reduction. If `crossSeriesReducer` is specified, then `perSeriesAligner` must be specified and not equal `ALIGN_NONE` and `alignmentPeriod` must be specified; otherwise, an error is returned.
.google.monitoring.v3.Aggregation.Reducer cross_series_reducer = 4;getCrossSeriesReducer in interface AggregationOrBuilderpublic Aggregation.Builder setCrossSeriesReducer(Aggregation.Reducer value)
The approach to be used to combine time series. Not all reducer functions may be applied to all time series, depending on the metric type and the value type of the original time series. Reduction may change the metric type of value type of the time series. Time series data must be aligned in order to perform cross-time series reduction. If `crossSeriesReducer` is specified, then `perSeriesAligner` must be specified and not equal `ALIGN_NONE` and `alignmentPeriod` must be specified; otherwise, an error is returned.
.google.monitoring.v3.Aggregation.Reducer cross_series_reducer = 4;public Aggregation.Builder clearCrossSeriesReducer()
The approach to be used to combine time series. Not all reducer functions may be applied to all time series, depending on the metric type and the value type of the original time series. Reduction may change the metric type of value type of the time series. Time series data must be aligned in order to perform cross-time series reduction. If `crossSeriesReducer` is specified, then `perSeriesAligner` must be specified and not equal `ALIGN_NONE` and `alignmentPeriod` must be specified; otherwise, an error is returned.
.google.monitoring.v3.Aggregation.Reducer cross_series_reducer = 4;public ProtocolStringList getGroupByFieldsList()
The set of fields to preserve when `crossSeriesReducer` is specified. The `groupByFields` determine how the time series are partitioned into subsets prior to applying the aggregation function. Each subset contains time series that have the same value for each of the grouping fields. Each individual time series is a member of exactly one subset. The `crossSeriesReducer` is applied to each subset of time series. It is not possible to reduce across different resource types, so this field implicitly contains `resource.type`. Fields not specified in `groupByFields` are aggregated away. If `groupByFields` is not specified and all the time series have the same resource type, then the time series are aggregated into a single output time series. If `crossSeriesReducer` is not defined, this field is ignored.
repeated string group_by_fields = 5;getGroupByFieldsList in interface AggregationOrBuilderpublic int getGroupByFieldsCount()
The set of fields to preserve when `crossSeriesReducer` is specified. The `groupByFields` determine how the time series are partitioned into subsets prior to applying the aggregation function. Each subset contains time series that have the same value for each of the grouping fields. Each individual time series is a member of exactly one subset. The `crossSeriesReducer` is applied to each subset of time series. It is not possible to reduce across different resource types, so this field implicitly contains `resource.type`. Fields not specified in `groupByFields` are aggregated away. If `groupByFields` is not specified and all the time series have the same resource type, then the time series are aggregated into a single output time series. If `crossSeriesReducer` is not defined, this field is ignored.
repeated string group_by_fields = 5;getGroupByFieldsCount in interface AggregationOrBuilderpublic java.lang.String getGroupByFields(int index)
The set of fields to preserve when `crossSeriesReducer` is specified. The `groupByFields` determine how the time series are partitioned into subsets prior to applying the aggregation function. Each subset contains time series that have the same value for each of the grouping fields. Each individual time series is a member of exactly one subset. The `crossSeriesReducer` is applied to each subset of time series. It is not possible to reduce across different resource types, so this field implicitly contains `resource.type`. Fields not specified in `groupByFields` are aggregated away. If `groupByFields` is not specified and all the time series have the same resource type, then the time series are aggregated into a single output time series. If `crossSeriesReducer` is not defined, this field is ignored.
repeated string group_by_fields = 5;getGroupByFields in interface AggregationOrBuilderpublic ByteString getGroupByFieldsBytes(int index)
The set of fields to preserve when `crossSeriesReducer` is specified. The `groupByFields` determine how the time series are partitioned into subsets prior to applying the aggregation function. Each subset contains time series that have the same value for each of the grouping fields. Each individual time series is a member of exactly one subset. The `crossSeriesReducer` is applied to each subset of time series. It is not possible to reduce across different resource types, so this field implicitly contains `resource.type`. Fields not specified in `groupByFields` are aggregated away. If `groupByFields` is not specified and all the time series have the same resource type, then the time series are aggregated into a single output time series. If `crossSeriesReducer` is not defined, this field is ignored.
repeated string group_by_fields = 5;getGroupByFieldsBytes in interface AggregationOrBuilderpublic Aggregation.Builder setGroupByFields(int index, java.lang.String value)
The set of fields to preserve when `crossSeriesReducer` is specified. The `groupByFields` determine how the time series are partitioned into subsets prior to applying the aggregation function. Each subset contains time series that have the same value for each of the grouping fields. Each individual time series is a member of exactly one subset. The `crossSeriesReducer` is applied to each subset of time series. It is not possible to reduce across different resource types, so this field implicitly contains `resource.type`. Fields not specified in `groupByFields` are aggregated away. If `groupByFields` is not specified and all the time series have the same resource type, then the time series are aggregated into a single output time series. If `crossSeriesReducer` is not defined, this field is ignored.
repeated string group_by_fields = 5;public Aggregation.Builder addGroupByFields(java.lang.String value)
The set of fields to preserve when `crossSeriesReducer` is specified. The `groupByFields` determine how the time series are partitioned into subsets prior to applying the aggregation function. Each subset contains time series that have the same value for each of the grouping fields. Each individual time series is a member of exactly one subset. The `crossSeriesReducer` is applied to each subset of time series. It is not possible to reduce across different resource types, so this field implicitly contains `resource.type`. Fields not specified in `groupByFields` are aggregated away. If `groupByFields` is not specified and all the time series have the same resource type, then the time series are aggregated into a single output time series. If `crossSeriesReducer` is not defined, this field is ignored.
repeated string group_by_fields = 5;public Aggregation.Builder addAllGroupByFields(java.lang.Iterable<java.lang.String> values)
The set of fields to preserve when `crossSeriesReducer` is specified. The `groupByFields` determine how the time series are partitioned into subsets prior to applying the aggregation function. Each subset contains time series that have the same value for each of the grouping fields. Each individual time series is a member of exactly one subset. The `crossSeriesReducer` is applied to each subset of time series. It is not possible to reduce across different resource types, so this field implicitly contains `resource.type`. Fields not specified in `groupByFields` are aggregated away. If `groupByFields` is not specified and all the time series have the same resource type, then the time series are aggregated into a single output time series. If `crossSeriesReducer` is not defined, this field is ignored.
repeated string group_by_fields = 5;public Aggregation.Builder clearGroupByFields()
The set of fields to preserve when `crossSeriesReducer` is specified. The `groupByFields` determine how the time series are partitioned into subsets prior to applying the aggregation function. Each subset contains time series that have the same value for each of the grouping fields. Each individual time series is a member of exactly one subset. The `crossSeriesReducer` is applied to each subset of time series. It is not possible to reduce across different resource types, so this field implicitly contains `resource.type`. Fields not specified in `groupByFields` are aggregated away. If `groupByFields` is not specified and all the time series have the same resource type, then the time series are aggregated into a single output time series. If `crossSeriesReducer` is not defined, this field is ignored.
repeated string group_by_fields = 5;public Aggregation.Builder addGroupByFieldsBytes(ByteString value)
The set of fields to preserve when `crossSeriesReducer` is specified. The `groupByFields` determine how the time series are partitioned into subsets prior to applying the aggregation function. Each subset contains time series that have the same value for each of the grouping fields. Each individual time series is a member of exactly one subset. The `crossSeriesReducer` is applied to each subset of time series. It is not possible to reduce across different resource types, so this field implicitly contains `resource.type`. Fields not specified in `groupByFields` are aggregated away. If `groupByFields` is not specified and all the time series have the same resource type, then the time series are aggregated into a single output time series. If `crossSeriesReducer` is not defined, this field is ignored.
repeated string group_by_fields = 5;public final Aggregation.Builder setUnknownFields(UnknownFieldSet unknownFields)
setUnknownFields in interface Message.BuildersetUnknownFields in class GeneratedMessageV3.Builder<Aggregation.Builder>public final Aggregation.Builder mergeUnknownFields(UnknownFieldSet unknownFields)
mergeUnknownFields in interface Message.BuildermergeUnknownFields in class GeneratedMessageV3.Builder<Aggregation.Builder>