import * as pulumi from "@pulumi/pulumi"; import * as outputs from "../../types/output"; /** * Get a ServiceLevelObjective by name. */ export declare function getServiceLevelObjective(args: GetServiceLevelObjectiveArgs, opts?: pulumi.InvokeOptions): Promise; export interface GetServiceLevelObjectiveArgs { serviceId: string; serviceLevelObjectiveId: string; v3Id: string; v3Id1: string; view?: string; } export interface GetServiceLevelObjectiveResult { /** * A calendar period, semantically "since the start of the current ". At this time, only DAY, WEEK, FORTNIGHT, and MONTH are supported. */ readonly calendarPeriod: string; /** * Name used for UI elements listing this SLO. */ readonly displayName: string; /** * The fraction of service that must be good in order for this objective to be met. 0 < goal <= 0.999. */ readonly goal: number; /** * Resource name for this ServiceLevelObjective. The format is: projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID]/serviceLevelObjectives/[SLO_NAME] */ readonly name: string; /** * A rolling time period, semantically "in the past ". Must be an integer multiple of 1 day no larger than 30 days. */ readonly rollingPeriod: string; /** * 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. */ readonly serviceLevelIndicator: outputs.monitoring.v3.ServiceLevelIndicatorResponse; /** * 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. */ readonly userLabels: { [key: string]: string; }; } /** * Get a ServiceLevelObjective by name. */ export declare function getServiceLevelObjectiveOutput(args: GetServiceLevelObjectiveOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output; export interface GetServiceLevelObjectiveOutputArgs { serviceId: pulumi.Input; serviceLevelObjectiveId: pulumi.Input; v3Id: pulumi.Input; v3Id1: pulumi.Input; view?: pulumi.Input; }