- Resource: LogMetric
- MetricDescriptor
- LabelDescriptor
- ValueType
- MetricKind
- ValueType
- MetricDescriptorMetadata
- LaunchStage
- TimeSeriesResourceHierarchyLevel
- BucketOptions
- Linear
- Exponential
- Explicit
- ApiVersion
- Methods
Resource: LogMetric
Describes a logs-based metric. The value of the metric is the number of log entries that match a logs filter in a given time interval.
Logs-based metrics can also be used to extract values from logs and create a distribution of the values. The distribution records the statistics of the extracted values along with an optional histogram of the values as specified by the bucket options.
JSON representation |
---|
{ "name": string, "resourceName": string, "description": string, "filter": string, "bucketName": string, "disabled": boolean, "metricDescriptor": { object ( |
Fields | |
---|---|
name |
Required. The client-assigned metric identifier. Examples: Metric identifiers are limited to 100 characters and can include only the following characters: This field is the |
resource |
Output only. The resource name of the metric:
|
description |
Optional. A description of this metric, which is used in documentation. The maximum length of the description is 8000 characters. |
filter |
Required. An advanced logs filter which is used to match log entries. Example:
The maximum length of the filter is 20000 characters. |
bucket |
Optional. The resource name of the Log Bucket that owns the Log Metric. Only Log Buckets in projects are supported. The bucket has to be in the same project as the metric. For example:
If empty, then the Log Metric is considered a non-Bucket Log Metric. |
disabled |
Optional. If set to True, then this metric is disabled and it does not generate any points. |
metric |
Optional. The metric descriptor associated with the logs-based metric. If unspecified, it uses a default metric descriptor with a DELTA metric kind, INT64 value type, with no labels and a unit of "1". Such a metric counts the number of log entries matching the The To create a logs-based metric that records a distribution of log values, a DELTA metric kind with a DISTRIBUTION value type must be used along with a Each label in the metric descriptor must have a matching label name as the key and an extractor expression as the value in the The |
value |
Optional. A
The result of the extraction must be convertible to a double type, as the distribution always records double values. If either the extraction or the conversion to double fails, then those values are not recorded in the distribution. Example: |
label |
Optional. A map from a label key string to an extractor expression which is used to extract data from a log entry field and assign as the label value. Each label key specified in the LabelDescriptor must have an associated extractor expression in this map. The syntax of the extractor expression is the same as for the The extracted value is converted to the type defined in the label descriptor. If either the extraction or the type conversion fails, the label will have a default value. The default value for a string label is an empty string, for an integer label its 0, and for a boolean label its Note that there are upper bounds on the maximum number of labels and the number of active time series that are allowed in a project. |
bucket |
Optional. The |
create |
Output only. The creation timestamp of the metric. This field may not be present for older metrics. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: |
update |
Output only. The last update timestamp of the metric. This field may not be present for older metrics. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: |
version |
Deprecated. The API version that created or updated this metric. The v2 format is used by default and cannot be changed. |
MetricDescriptor
Defines a metric type and its schema. Once a metric descriptor is created, deleting or altering it stops data collection and makes the metric type's existing data unusable.
JSON representation |
---|
{ "name": string, "type": string, "labels": [ { object ( |
Fields | |
---|---|
name |
The resource name of the metric descriptor. |
type |
The metric type, including its DNS name prefix. The type is not URL-encoded. All user-defined metric types have the DNS name
|
labels[] |
The set of labels that can be used to describe a specific instance of this metric type. For example, the |
metric |
Whether the metric records instantaneous values, changes to a value, etc. Some combinations of |
value |
Whether the measurement is an integer, a floating-point number, etc. Some combinations of |
unit |
The units in which the metric value is reported. It is only applicable if the Different systems might scale the values to be more easily displayed (so a value of If you want a custom metric to record the exact number of CPU-seconds used by a job, you can create an Alternatively, if you want a custom metric to record data in a more granular way, you can create a The supported units are a subset of The Unified Code for Units of Measure standard: Basic units (UNIT)
Prefixes (PREFIX)
Grammar The grammar also includes these connectors:
The grammar for a unit is as follows:
Notes:
|
description |
A detailed description of the metric, which can be used in documentation. |
display |
A concise name for the metric, which can be displayed in user interfaces. Use sentence case without an ending period, for example "Request count". This field is optional but it is recommended to be set for any metrics associated with user-visible concepts, such as Quota. |
metadata |
Optional. Metadata which can be used to guide usage of the metric. |
launch |
Optional. The launch stage of the metric definition. |
monitored |
Read-only. If present, then a time series, which is identified partially by a metric type and a |
LabelDescriptor
A description of a label.
JSON representation |
---|
{
"key": string,
"valueType": enum ( |
Fields | |
---|---|
key |
The label key. |
value |
The type of data that can be assigned to the label. |
description |
A human-readable description for the label. |
ValueType
Value types that can be used as label values.
Enums | |
---|---|
STRING |
A variable-length string. This is the default. |
BOOL |
Boolean; true or false. |
INT64 |
A 64-bit signed integer. |
MetricKind
The kind of measurement. It describes how the data is reported. For information on setting the start time and end time based on the MetricKind, see TimeInterval.
Enums | |
---|---|
METRIC_KIND_UNSPECIFIED |
Do not use this default value. |
GAUGE |
An instantaneous measurement of a value. |
DELTA |
The change in a value during a time interval. |
CUMULATIVE |
A value accumulated over a time interval. Cumulative measurements in a time series should have the same start time and increasing end times, until an event resets the cumulative value to zero and sets a new start time for the following points. |
ValueType
The value type of a metric.
Enums | |
---|---|
VALUE_TYPE_UNSPECIFIED |
Do not use this default value. |
BOOL |
The value is a boolean. This value type can be used only if the metric kind is GAUGE . |
INT64 |
The value is a signed 64-bit integer. |
DOUBLE |
The value is a double precision floating point number. |
STRING |
The value is a text string. This value type can be used only if the metric kind is GAUGE . |
DISTRIBUTION |
The value is a . |
MONEY |
The value is money. |
MetricDescriptorMetadata
Additional annotations that can be used to guide the usage of a metric.
JSON representation |
---|
{ "launchStage": enum ( |
Fields | |
---|---|
launchStage |
Deprecated. Must use the |
sample |
The sampling period of metric data points. For metrics which are written periodically, consecutive data points are stored at this time interval, excluding data loss due to errors. Metrics with a higher granularity have a smaller sampling period. A duration in seconds with up to nine fractional digits, ending with ' |
ingest |
The delay of data points caused by ingestion. Data points older than this age are guaranteed to be ingested and available to be read, excluding data loss due to errors. A duration in seconds with up to nine fractional digits, ending with ' |
time |
The scope of the timeseries data of the metric. |
LaunchStage
The launch stage as defined by Google Cloud Platform Launch Stages.
Enums | |
---|---|
LAUNCH_STAGE_UNSPECIFIED |
Do not use this default value. |
UNIMPLEMENTED |
The feature is not yet implemented. Users can not use it. |
PRELAUNCH |
Prelaunch features are hidden from users and are only visible internally. |
EARLY_ACCESS |
Early Access features are limited to a closed group of testers. To use these features, you must sign up in advance and sign a Trusted Tester agreement (which includes confidentiality provisions). These features may be unstable, changed in backward-incompatible ways, and are not guaranteed to be released. |
ALPHA |
Alpha is a limited availability test for releases before they are cleared for widespread use. By Alpha, all significant design issues are resolved and we are in the process of verifying functionality. Alpha customers need to apply for access, agree to applicable terms, and have their projects allowlisted. Alpha releases don't have to be feature complete, no SLAs are provided, and there are no technical support obligations, but they will be far enough along that customers can actually use them in test environments or for limited-use tests -- just like they would in normal production cases. |
BETA |
Beta is the point at which we are ready to open a release for any customer to use. There are no SLA or technical support obligations in a Beta release. Products will be complete from a feature perspective, but may have some open outstanding issues. Beta releases are suitable for limited production use cases. |
GA |
GA features are open to all developers and are considered stable and fully qualified for production use. |
DEPRECATED |
Deprecated features are scheduled to be shut down and removed. For more information, see the "Deprecation Policy" section of our Terms of Service and the Google Cloud Platform Subject to the Deprecation Policy documentation. |
TimeSeriesResourceHierarchyLevel
The resource hierarchy level of the timeseries data of a metric.
Enums | |
---|---|
TIME_SERIES_RESOURCE_HIERARCHY_LEVEL_UNSPECIFIED |
Do not use this default value. |
PROJECT |
Scopes a metric to a project. |
ORGANIZATION |
Scopes a metric to an organization. |
FOLDER |
Scopes a metric to a folder. |
BucketOptions
BucketOptions
describes the bucket boundaries used to create a histogram for the distribution. The buckets can be in a linear sequence, an exponential sequence, or each bucket can be specified explicitly. BucketOptions
does not include the number of values in each bucket.
A bucket has an inclusive lower bound and exclusive upper bound for the values that are counted for that bucket. The upper bound of a bucket must be strictly greater than the lower bound. The sequence of N buckets for a distribution consists of an underflow bucket (number 0), zero or more finite buckets (number 1 through N - 2) and an overflow bucket (number N - 1). The buckets are contiguous: the lower bound of bucket i (i > 0) is the same as the upper bound of bucket i - 1. The buckets span the whole range of finite values: lower bound of the underflow bucket is -infinity and the upper bound of the overflow bucket is +infinity. The finite buckets are so-called because both bounds are finite.
JSON representation |
---|
{ // Union field |
Fields | |
---|---|
Union field options . Exactly one of these three fields must be set. options can be only one of the following: |
|
linear |
The linear bucket. |
exponential |
The exponential buckets. |
explicit |
The explicit buckets. |
Linear
Specifies a linear sequence of buckets that all have the same width (except overflow and underflow). Each bucket represents a constant absolute uncertainty on the specific value in the bucket.
There are numFiniteBuckets + 2
(= N) buckets. Bucket i
has the following boundaries:
Upper bound (0 <= i < N-1): offset + (width * i).
Lower bound (1 <= i < N): offset + (width * (i - 1)).
JSON representation |
---|
{ "numFiniteBuckets": integer, "width": number, "offset": number } |
Fields | |
---|---|
num |
Must be greater than 0. |
width |
Must be greater than 0. |
offset |
Lower bound of the first bucket. |
Exponential
Specifies an exponential sequence of buckets that have a width that is proportional to the value of the lower bound. Each bucket represents a constant relative uncertainty on a specific value in the bucket.
There are numFiniteBuckets + 2
(= N) buckets. Bucket i
has the following boundaries:
Upper bound (0 <= i < N-1): scale * (growthFactor ^ i).
Lower bound (1 <= i < N): scale * (growthFactor ^ (i - 1)).
JSON representation |
---|
{ "numFiniteBuckets": integer, "growthFactor": number, "scale": number } |
Fields | |
---|---|
num |
Must be greater than 0. |
growth |
Must be greater than 1. |
scale |
Must be greater than 0. |
Explicit
Specifies a set of buckets with arbitrary widths.
There are size(bounds) + 1
(= N) buckets. Bucket i
has the following boundaries:
Upper bound (0 <= i < N-1): bounds[i] Lower bound (1 <= i < N); bounds[i - 1]
The bounds
field must contain at least one element. If bounds
has only one element, then there are no finite buckets, and that single element is the common boundary of the overflow and underflow buckets.
JSON representation |
---|
{ "bounds": [ number ] } |
Fields | |
---|---|
bounds[] |
The values must be monotonically increasing. |
ApiVersion
Logging API version.
Enums | |
---|---|
V2 |
Logging API v2. |
V1 |
Logging API v1. |
Methods |
|
---|---|
|
Creates a logs-based metric. |
|
Deletes a logs-based metric. |
|
Gets a logs-based metric. |
|
Lists logs-based metrics. |
|
Creates or updates a logs-based metric. |