Copyright 2020 Google LLC 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.
Code generated by protoc-gen-go. DO NOT EDIT. versions: protoc-gen-go v1.25.0 protoc v3.13.0 source: google/monitoring/v3/service.proto
`ServiceLevelObjective.View` determines what form of `ServiceLevelObjective` is returned from `GetServiceLevelObjective`, `ListServiceLevelObjectives`, and `ListServiceLevelObjectiveVersions` RPCs.
Return the embedded `ServiceLevelIndicator` in the form in which it was defined. If it was defined using a `BasicSli`, return that `BasicSli`.
For `ServiceLevelIndicator`s using `BasicSli` articulation, instead return the `ServiceLevelIndicator` with its mode of computation fully spelled out as a `RequestBasedSli`. For `ServiceLevelIndicator`s using `RequestBasedSli` or `WindowsBasedSli`, return the `ServiceLevelIndicator` as it was provided.
A `Service` is a discrete, autonomous, and network-accessible unit, designed to solve an individual concern ([Wikipedia](https://en.wikipedia.org/wiki/Service-orientation)). In Cloud Monitoring, a `Service` acts as the root resource under which operational aspects of the service are accessible.
Resource name for this Service. The format is: projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID]
Name used for UI elements listing this Service.
REQUIRED. Service-identifying atoms specifying the underlying service. Types that are assignable to Identifier: *Service_Custom_ *Service_AppEngine_ *Service_CloudEndpoints_ *Service_ClusterIstio_ *Service_MeshIstio_
Configuration for how to query telemetry on a Service.
A Service-Level Objective (SLO) describes a level of desired good service. It consists of a service-level indicator (SLI), a performance goal, and a period over which the objective is to be evaluated against that goal. The SLO can use SLIs defined in a number of different manners. Typical SLOs might include "99% of requests in each rolling week have latency below 200 milliseconds" or "99.5% of requests in each calendar month return successfully."
Resource name for this `ServiceLevelObjective`. The format is: projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID]/serviceLevelObjectives/[SLO_NAME]
Name used for UI elements listing this SLO.
The definition of good service, used to measure and calculate the quality of the `Service`'s performance with respect to a single aspect of service quality.
The fraction of service that must be good in order for this objective to be met. `0 < goal <= 0.999`.
The time period over which the objective will be evaluated. Types that are assignable to Period: *ServiceLevelObjective_RollingPeriod *ServiceLevelObjective_CalendarPeriod
A calendar period, semantically "since the start of the current `<calendar_period>`". At this time, only `DAY`, `WEEK`, `FORTNIGHT`, and `MONTH` are supported.
A Service-Level Indicator (SLI) describes the "performance" of a service. For some services, the SLI is well-defined. In such cases, the SLI can be described easily by referencing the well-known SLI and providing the needed parameters. Alternatively, a "custom" SLI can be defined with a query to the underlying metric store. An SLI is defined to be `good_service / total_service` over any queried time interval. The value of performance always falls into the range `0 <= performance <= 1`. A custom SLI describes how to compute this ratio, whether this is by dividing values from a pair of time series, cutting a `Distribution` into good and bad counts, or counting time windows in which the service complies with a criterion. For separation of concerns, a single Service-Level Indicator measures performance for only one aspect of service quality, such as fraction of successful queries or fast-enough queries.
Service level indicators can be grouped by whether the "unit" of service being measured is based on counts of good requests or on counts of good time windows Types that are assignable to Type: *ServiceLevelIndicator_BasicSli *ServiceLevelIndicator_RequestBased *ServiceLevelIndicator_WindowsBased
An SLI measuring performance on a well-known service type. Performance will be computed on the basis of pre-defined metrics. The type of the `service_resource` determines the metrics to use and the `service_resource.labels` and `metric_labels` are used to construct a monitoring filter to filter that metric down to just the data relevant to this service.
OPTIONAL: The set of RPCs to which this SLI is relevant. Telemetry from other methods will not be used to calculate performance for this SLI. If omitted, this SLI applies to all the Service's methods. For service types that don't support breaking down by method, setting this field will result in an error.
OPTIONAL: The set of locations to which this SLI is relevant. Telemetry from other locations will not be used to calculate performance for this SLI. If omitted, this SLI applies to all locations in which the Service has activity. For service types that don't support breaking down by location, setting this field will result in an error.
OPTIONAL: The set of API versions to which this SLI is relevant. Telemetry from other API versions will not be used to calculate performance for this SLI. If omitted, this SLI applies to all API versions. For service types that don't support breaking down by version, setting this field will result in an error.
This SLI can be evaluated on the basis of availability or latency. Types that are assignable to SliCriteria: *BasicSli_Availability *BasicSli_Latency
Range of numerical values, inclusive of `min` and exclusive of `max`. If the open range "< range.max" is desired, set `range.min = -infinity`. If the open range ">= range.min" is desired, set `range.max = infinity`.
The means to compute a ratio of `good_service` to `total_service`. Types that are assignable to Method: *RequestBasedSli_GoodTotalRatio *RequestBasedSli_DistributionCut
`distribution_cut` is used when `good_service` is a count of values aggregated in a `Distribution` that fall into a good range. The `total_service` is the total count of all values aggregated in the `Distribution`.
A `TimeSeriesRatio` specifies two `TimeSeries` to use for computing the `good_service / total_service` ratio. The specified `TimeSeries` must have `ValueType = DOUBLE` or `ValueType = INT64` and must have `MetricKind = DELTA` or `MetricKind = CUMULATIVE`. The `TimeSeriesRatio` must specify exactly two of good, bad, and total, and the relationship `good_service + bad_service = total_service` will be assumed.
A [monitoring filter](https://cloud.google.com/monitoring/api/v3/filters) specifying a `TimeSeries` quantifying good service provided. Must have `ValueType = DOUBLE` or `ValueType = INT64` and must have `MetricKind = DELTA` or `MetricKind = CUMULATIVE`.
A [monitoring filter](https://cloud.google.com/monitoring/api/v3/filters) specifying a `TimeSeries` quantifying bad service, either demanded service that was not provided or demanded service that was of inadequate quality. Must have `ValueType = DOUBLE` or `ValueType = INT64` and must have `MetricKind = DELTA` or `MetricKind = CUMULATIVE`.
A [monitoring filter](https://cloud.google.com/monitoring/api/v3/filters) specifying a `TimeSeries` quantifying total demanded service. Must have `ValueType = DOUBLE` or `ValueType = INT64` and must have `MetricKind = DELTA` or `MetricKind = CUMULATIVE`.
A `DistributionCut` defines a `TimeSeries` and thresholds used for measuring good service and total service. The `TimeSeries` must have `ValueType = DISTRIBUTION` and `MetricKind = DELTA` or `MetricKind = CUMULATIVE`. The computed `good_service` will be the count of values x in the `Distribution` such that `range.min <= x < range.max`.
A [monitoring filter](https://cloud.google.com/monitoring/api/v3/filters) specifying a `TimeSeries` aggregating values. Must have `ValueType = DISTRIBUTION` and `MetricKind = DELTA` or `MetricKind = CUMULATIVE`.
Range of values considered "good." For a one-sided range, set one bound to an infinite value.
A `WindowsBasedSli` defines `good_service` as the count of time windows for which the provided service was of good quality. Criteria for determining if service was good are embedded in the `window_criterion`.
The criterion to use for evaluating window goodness. Types that are assignable to WindowCriterion: *WindowsBasedSli_GoodBadMetricFilter *WindowsBasedSli_GoodTotalRatioThreshold *WindowsBasedSli_MetricMeanInRange *WindowsBasedSli_MetricSumInRange
Duration over which window quality is evaluated. Must be an integer fraction of a day and at least `60s`.
A [monitoring filter](https://cloud.google.com/monitoring/api/v3/filters) specifying a `TimeSeries` with `ValueType = BOOL`. The window is good if any `true` values appear in the window.
The ID of the App Engine module underlying this service. Corresponds to the `module_id` resource label in the `gae_app` monitored resource: https://cloud.google.com/monitoring/api/resources#tag_gae_app
The name of the Cloud Endpoints service underlying this service. Corresponds to the `service` resource label in the `api` monitored resource: https://cloud.google.com/monitoring/api/resources#tag_api
The location of the Kubernetes cluster in which this Istio service is defined. Corresponds to the `location` resource label in `k8s_cluster` resources.
The name of the Kubernetes cluster in which this Istio service is defined. Corresponds to the `cluster_name` resource label in `k8s_cluster` resources.
The namespace of the Istio service underlying this service. Corresponds to the `destination_service_namespace` metric label in Istio metrics.
The name of the Istio service underlying this service. Corresponds to the `destination_service_name` metric label in Istio metrics.
The means, either a request-based SLI or a basic SLI, by which to compute performance over a window. Types that are assignable to Type: *WindowsBasedSli_PerformanceThreshold_Performance *WindowsBasedSli_PerformanceThreshold_BasicSliPerformance
If window `performance >= threshold`, the window is counted as good.
A `MetricRange` is used when each window is good when the value x of a single `TimeSeries` satisfies `range.min <= x < range.max`. The provided `TimeSeries` must have `ValueType = INT64` or `ValueType = DOUBLE` and `MetricKind = GAUGE`.
The pages are generated with Goldsv0.3.2-preview. (GOOS=darwin GOARCH=amd64)
Golds is a Go 101 project developed by Tapir Liu.
PR and bug reports are welcome and can be submitted to the issue list.
Please follow @Go100and1 (reachable from the left QR code) to get the latest news of Golds.