service_level_objectives
Creates, updates, deletes, gets or lists a service_level_objectives resource.
Overview
| Name | service_level_objectives |
| Type | Resource |
| Id | google.monitoring.service_level_objectives |
Fields
The following fields are returned by SELECT queries:
- services_service_level_objectives_list
| Name | Datatype | Description |
|---|---|---|
name | string | Identifier. Resource name for this ServiceLevelObjective. The format is: projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID]/serviceLevelObjectives/[SLO_NAME] |
calendarPeriod | string | A calendar period, semantically "since the start of the current ". At this time, only DAY, WEEK, FORTNIGHT, and MONTH are supported. (CALENDAR_PERIOD_UNSPECIFIED, DAY, WEEK, FORTNIGHT, MONTH, QUARTER, HALF, YEAR) |
displayName | string | Name used for UI elements listing this SLO. |
goal | number (double) | The fraction of service that must be good in order for this objective to be met. 0 < goal <= 0.9999. |
rollingPeriod | string (google-duration) | A rolling time period, semantically "in the past ". Must be an integer multiple of 1 day no larger than 30 days. |
serviceLevelIndicator | object | 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. (id: ServiceLevelIndicator) |
userLabels | object | Labels which have been used to annotate the service-level objective. Label keys must start with a letter. Label keys and values may contain lowercase letters, numbers, underscores, and dashes. Label keys and values have a maximum length of 63 characters, and must be less than 128 bytes in size. Up to 64 label entries may be stored. For labels which do not have a semantic value, the empty string may be supplied for the label value. |
Methods
The following methods are available for this resource:
| Name | Accessible by | Required Params | Optional Params | Description |
|---|---|---|---|---|
services_service_level_objectives_list | select | parentType, parent | filter, pageSize, pageToken, view | List the ServiceLevelObjectives for the given Service. |
services_service_level_objectives_create | insert | parentType, parent | serviceLevelObjectiveId | Create a ServiceLevelObjective for the given Service. |
Parameters
Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.
| Name | Datatype | Description |
|---|---|---|
parent | string | |
parentType | string | |
filter | string | |
pageSize | integer (int32) | |
pageToken | string | |
serviceLevelObjectiveId | string | |
view | string |
SELECT examples
- services_service_level_objectives_list
List the ServiceLevelObjectives for the given Service.
SELECT
name,
calendarPeriod,
displayName,
goal,
rollingPeriod,
serviceLevelIndicator,
userLabels
FROM google.monitoring.service_level_objectives
WHERE parentType = '{{ parentType }}' -- required
AND parent = '{{ parent }}' -- required
AND filter = '{{ filter }}'
AND pageSize = '{{ pageSize }}'
AND pageToken = '{{ pageToken }}'
AND view = '{{ view }}'
;
INSERT examples
- services_service_level_objectives_create
- Manifest
Create a ServiceLevelObjective for the given Service.
INSERT INTO google.monitoring.service_level_objectives (
data__calendarPeriod,
data__displayName,
data__goal,
data__name,
data__rollingPeriod,
data__serviceLevelIndicator,
data__userLabels,
parentType,
parent,
serviceLevelObjectiveId
)
SELECT
'{{ calendarPeriod }}',
'{{ displayName }}',
{{ goal }},
'{{ name }}',
'{{ rollingPeriod }}',
'{{ serviceLevelIndicator }}',
'{{ userLabels }}',
'{{ parentType }}',
'{{ parent }}',
'{{ serviceLevelObjectiveId }}'
RETURNING
name,
calendarPeriod,
displayName,
goal,
rollingPeriod,
serviceLevelIndicator,
userLabels
;
# Description fields are for documentation purposes
- name: service_level_objectives
props:
- name: parentType
value: "{{ parentType }}"
description: Required parameter for the service_level_objectives resource.
- name: parent
value: "{{ parent }}"
description: Required parameter for the service_level_objectives resource.
- name: calendarPeriod
value: "{{ calendarPeriod }}"
description: |
A calendar period, semantically "since the start of the current ". At this time, only DAY, WEEK, FORTNIGHT, and MONTH are supported.
valid_values: ['CALENDAR_PERIOD_UNSPECIFIED', 'DAY', 'WEEK', 'FORTNIGHT', 'MONTH', 'QUARTER', 'HALF', 'YEAR']
- name: displayName
value: "{{ displayName }}"
description: |
Name used for UI elements listing this SLO.
- name: goal
value: {{ goal }}
description: |
The fraction of service that must be good in order for this objective to be met. 0 < goal <= 0.9999.
- name: name
value: "{{ name }}"
description: |
Identifier. Resource name for this ServiceLevelObjective. The format is: projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID]/serviceLevelObjectives/[SLO_NAME]
- name: rollingPeriod
value: "{{ rollingPeriod }}"
description: |
A rolling time period, semantically "in the past ". Must be an integer multiple of 1 day no larger than 30 days.
- name: serviceLevelIndicator
description: |
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.
value:
basicSli:
availability: "{{ availability }}"
latency:
threshold: "{{ threshold }}"
location:
- "{{ location }}"
method:
- "{{ method }}"
version:
- "{{ version }}"
requestBased:
distributionCut:
distributionFilter: "{{ distributionFilter }}"
range:
max: {{ max }}
min: {{ min }}
goodTotalRatio:
badServiceFilter: "{{ badServiceFilter }}"
goodServiceFilter: "{{ goodServiceFilter }}"
totalServiceFilter: "{{ totalServiceFilter }}"
windowsBased:
goodBadMetricFilter: "{{ goodBadMetricFilter }}"
goodTotalRatioThreshold:
basicSliPerformance:
availability: "{{ availability }}"
latency:
threshold: "{{ threshold }}"
location:
- "{{ location }}"
method:
- "{{ method }}"
version:
- "{{ version }}"
performance:
distributionCut:
distributionFilter: "{{ distributionFilter }}"
range: "{{ range }}"
goodTotalRatio:
badServiceFilter: "{{ badServiceFilter }}"
goodServiceFilter: "{{ goodServiceFilter }}"
totalServiceFilter: "{{ totalServiceFilter }}"
threshold: {{ threshold }}
metricMeanInRange:
range:
max: {{ max }}
min: {{ min }}
timeSeries: "{{ timeSeries }}"
metricSumInRange:
range:
max: {{ max }}
min: {{ min }}
timeSeries: "{{ timeSeries }}"
windowPeriod: "{{ windowPeriod }}"
- name: userLabels
value: "{{ userLabels }}"
description: |
Labels which have been used to annotate the service-level objective. Label keys must start with a letter. Label keys and values may contain lowercase letters, numbers, underscores, and dashes. Label keys and values have a maximum length of 63 characters, and must be less than 128 bytes in size. Up to 64 label entries may be stored. For labels which do not have a semantic value, the empty string may be supplied for the label value.
- name: serviceLevelObjectiveId
value: "{{ serviceLevelObjectiveId }}"