1. Packages
  2. Google Cloud (GCP) Classic
  3. API Docs
  4. monitoring
  5. Slo
Google Cloud v8.26.0 published on Thursday, Apr 10, 2025 by Pulumi

gcp.monitoring.Slo

Explore with Pulumi AI

A Service-Level Objective (SLO) describes the 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.”

To get more information about Slo, see:

Example Usage

Monitoring Slo Appengine

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const _default = gcp.monitoring.getAppEngineService({
    moduleId: "default",
});
const appengSlo = new gcp.monitoring.Slo("appeng_slo", {
    service: _default.then(_default => _default.serviceId),
    sloId: "ae-slo",
    displayName: "Test SLO for App Engine",
    goal: 0.9,
    calendarPeriod: "DAY",
    basicSli: {
        latency: {
            threshold: "1s",
        },
    },
    userLabels: {
        my_key: "my_value",
        my_other_key: "my_other_value",
    },
});
Copy
import pulumi
import pulumi_gcp as gcp

default = gcp.monitoring.get_app_engine_service(module_id="default")
appeng_slo = gcp.monitoring.Slo("appeng_slo",
    service=default.service_id,
    slo_id="ae-slo",
    display_name="Test SLO for App Engine",
    goal=0.9,
    calendar_period="DAY",
    basic_sli={
        "latency": {
            "threshold": "1s",
        },
    },
    user_labels={
        "my_key": "my_value",
        "my_other_key": "my_other_value",
    })
Copy
package main

import (
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/monitoring"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_default, err := monitoring.GetAppEngineService(ctx, &monitoring.GetAppEngineServiceArgs{
			ModuleId: "default",
		}, nil)
		if err != nil {
			return err
		}
		_, err = monitoring.NewSlo(ctx, "appeng_slo", &monitoring.SloArgs{
			Service:        pulumi.String(_default.ServiceId),
			SloId:          pulumi.String("ae-slo"),
			DisplayName:    pulumi.String("Test SLO for App Engine"),
			Goal:           pulumi.Float64(0.9),
			CalendarPeriod: pulumi.String("DAY"),
			BasicSli: &monitoring.SloBasicSliArgs{
				Latency: &monitoring.SloBasicSliLatencyArgs{
					Threshold: pulumi.String("1s"),
				},
			},
			UserLabels: pulumi.StringMap{
				"my_key":       pulumi.String("my_value"),
				"my_other_key": pulumi.String("my_other_value"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;

return await Deployment.RunAsync(() => 
{
    var @default = Gcp.Monitoring.GetAppEngineService.Invoke(new()
    {
        ModuleId = "default",
    });

    var appengSlo = new Gcp.Monitoring.Slo("appeng_slo", new()
    {
        Service = @default.Apply(@default => @default.Apply(getAppEngineServiceResult => getAppEngineServiceResult.ServiceId)),
        SloId = "ae-slo",
        DisplayName = "Test SLO for App Engine",
        Goal = 0.9,
        CalendarPeriod = "DAY",
        BasicSli = new Gcp.Monitoring.Inputs.SloBasicSliArgs
        {
            Latency = new Gcp.Monitoring.Inputs.SloBasicSliLatencyArgs
            {
                Threshold = "1s",
            },
        },
        UserLabels = 
        {
            { "my_key", "my_value" },
            { "my_other_key", "my_other_value" },
        },
    });

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.monitoring.MonitoringFunctions;
import com.pulumi.gcp.monitoring.inputs.GetAppEngineServiceArgs;
import com.pulumi.gcp.monitoring.Slo;
import com.pulumi.gcp.monitoring.SloArgs;
import com.pulumi.gcp.monitoring.inputs.SloBasicSliArgs;
import com.pulumi.gcp.monitoring.inputs.SloBasicSliLatencyArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        final var default = MonitoringFunctions.getAppEngineService(GetAppEngineServiceArgs.builder()
            .moduleId("default")
            .build());

        var appengSlo = new Slo("appengSlo", SloArgs.builder()
            .service(default_.serviceId())
            .sloId("ae-slo")
            .displayName("Test SLO for App Engine")
            .goal(0.9)
            .calendarPeriod("DAY")
            .basicSli(SloBasicSliArgs.builder()
                .latency(SloBasicSliLatencyArgs.builder()
                    .threshold("1s")
                    .build())
                .build())
            .userLabels(Map.ofEntries(
                Map.entry("my_key", "my_value"),
                Map.entry("my_other_key", "my_other_value")
            ))
            .build());

    }
}
Copy
resources:
  appengSlo:
    type: gcp:monitoring:Slo
    name: appeng_slo
    properties:
      service: ${default.serviceId}
      sloId: ae-slo
      displayName: Test SLO for App Engine
      goal: 0.9
      calendarPeriod: DAY
      basicSli:
        latency:
          threshold: 1s
      userLabels:
        my_key: my_value
        my_other_key: my_other_value
variables:
  default:
    fn::invoke:
      function: gcp:monitoring:getAppEngineService
      arguments:
        moduleId: default
Copy

Monitoring Slo Request Based

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const customsrv = new gcp.monitoring.CustomService("customsrv", {
    serviceId: "custom-srv-request-slos",
    displayName: "My Custom Service",
});
const requestBasedSlo = new gcp.monitoring.Slo("request_based_slo", {
    service: customsrv.serviceId,
    sloId: "consumed-api-slo",
    displayName: "Test SLO with request based SLI (good total ratio)",
    goal: 0.9,
    rollingPeriodDays: 30,
    requestBasedSli: {
        distributionCut: {
            distributionFilter: "metric.type=\"serviceruntime.googleapis.com/api/request_latencies\" resource.type=\"api\"  ",
            range: {
                max: 0.5,
            },
        },
    },
});
Copy
import pulumi
import pulumi_gcp as gcp

customsrv = gcp.monitoring.CustomService("customsrv",
    service_id="custom-srv-request-slos",
    display_name="My Custom Service")
request_based_slo = gcp.monitoring.Slo("request_based_slo",
    service=customsrv.service_id,
    slo_id="consumed-api-slo",
    display_name="Test SLO with request based SLI (good total ratio)",
    goal=0.9,
    rolling_period_days=30,
    request_based_sli={
        "distribution_cut": {
            "distribution_filter": "metric.type=\"serviceruntime.googleapis.com/api/request_latencies\" resource.type=\"api\"  ",
            "range": {
                "max": 0.5,
            },
        },
    })
Copy
package main

import (
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/monitoring"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		customsrv, err := monitoring.NewCustomService(ctx, "customsrv", &monitoring.CustomServiceArgs{
			ServiceId:   pulumi.String("custom-srv-request-slos"),
			DisplayName: pulumi.String("My Custom Service"),
		})
		if err != nil {
			return err
		}
		_, err = monitoring.NewSlo(ctx, "request_based_slo", &monitoring.SloArgs{
			Service:           customsrv.ServiceId,
			SloId:             pulumi.String("consumed-api-slo"),
			DisplayName:       pulumi.String("Test SLO with request based SLI (good total ratio)"),
			Goal:              pulumi.Float64(0.9),
			RollingPeriodDays: pulumi.Int(30),
			RequestBasedSli: &monitoring.SloRequestBasedSliArgs{
				DistributionCut: &monitoring.SloRequestBasedSliDistributionCutArgs{
					DistributionFilter: pulumi.String("metric.type=\"serviceruntime.googleapis.com/api/request_latencies\" resource.type=\"api\"  "),
					Range: &monitoring.SloRequestBasedSliDistributionCutRangeArgs{
						Max: pulumi.Float64(0.5),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;

return await Deployment.RunAsync(() => 
{
    var customsrv = new Gcp.Monitoring.CustomService("customsrv", new()
    {
        ServiceId = "custom-srv-request-slos",
        DisplayName = "My Custom Service",
    });

    var requestBasedSlo = new Gcp.Monitoring.Slo("request_based_slo", new()
    {
        Service = customsrv.ServiceId,
        SloId = "consumed-api-slo",
        DisplayName = "Test SLO with request based SLI (good total ratio)",
        Goal = 0.9,
        RollingPeriodDays = 30,
        RequestBasedSli = new Gcp.Monitoring.Inputs.SloRequestBasedSliArgs
        {
            DistributionCut = new Gcp.Monitoring.Inputs.SloRequestBasedSliDistributionCutArgs
            {
                DistributionFilter = "metric.type=\"serviceruntime.googleapis.com/api/request_latencies\" resource.type=\"api\"  ",
                Range = new Gcp.Monitoring.Inputs.SloRequestBasedSliDistributionCutRangeArgs
                {
                    Max = 0.5,
                },
            },
        },
    });

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.monitoring.CustomService;
import com.pulumi.gcp.monitoring.CustomServiceArgs;
import com.pulumi.gcp.monitoring.Slo;
import com.pulumi.gcp.monitoring.SloArgs;
import com.pulumi.gcp.monitoring.inputs.SloRequestBasedSliArgs;
import com.pulumi.gcp.monitoring.inputs.SloRequestBasedSliDistributionCutArgs;
import com.pulumi.gcp.monitoring.inputs.SloRequestBasedSliDistributionCutRangeArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        var customsrv = new CustomService("customsrv", CustomServiceArgs.builder()
            .serviceId("custom-srv-request-slos")
            .displayName("My Custom Service")
            .build());

        var requestBasedSlo = new Slo("requestBasedSlo", SloArgs.builder()
            .service(customsrv.serviceId())
            .sloId("consumed-api-slo")
            .displayName("Test SLO with request based SLI (good total ratio)")
            .goal(0.9)
            .rollingPeriodDays(30)
            .requestBasedSli(SloRequestBasedSliArgs.builder()
                .distributionCut(SloRequestBasedSliDistributionCutArgs.builder()
                    .distributionFilter("metric.type=\"serviceruntime.googleapis.com/api/request_latencies\" resource.type=\"api\"  ")
                    .range(SloRequestBasedSliDistributionCutRangeArgs.builder()
                        .max(0.5)
                        .build())
                    .build())
                .build())
            .build());

    }
}
Copy
resources:
  customsrv:
    type: gcp:monitoring:CustomService
    properties:
      serviceId: custom-srv-request-slos
      displayName: My Custom Service
  requestBasedSlo:
    type: gcp:monitoring:Slo
    name: request_based_slo
    properties:
      service: ${customsrv.serviceId}
      sloId: consumed-api-slo
      displayName: Test SLO with request based SLI (good total ratio)
      goal: 0.9
      rollingPeriodDays: 30
      requestBasedSli:
        distributionCut:
          distributionFilter: 'metric.type="serviceruntime.googleapis.com/api/request_latencies" resource.type="api"  '
          range:
            max: 0.5
Copy

Monitoring Slo Windows Based Good Bad Metric Filter

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
import * as std from "@pulumi/std";

const customsrv = new gcp.monitoring.CustomService("customsrv", {
    serviceId: "custom-srv-windows-slos",
    displayName: "My Custom Service",
});
const windowsBased = new gcp.monitoring.Slo("windows_based", {
    service: customsrv.serviceId,
    displayName: "Test SLO with window based SLI",
    goal: 0.95,
    calendarPeriod: "FORTNIGHT",
    windowsBasedSli: {
        windowPeriod: "400s",
        goodBadMetricFilter: std.join({
            separator: " AND ",
            input: [
                "metric.type=\"monitoring.googleapis.com/uptime_check/check_passed\"",
                "resource.type=\"uptime_url\"",
            ],
        }).then(invoke => invoke.result),
    },
});
Copy
import pulumi
import pulumi_gcp as gcp
import pulumi_std as std

customsrv = gcp.monitoring.CustomService("customsrv",
    service_id="custom-srv-windows-slos",
    display_name="My Custom Service")
windows_based = gcp.monitoring.Slo("windows_based",
    service=customsrv.service_id,
    display_name="Test SLO with window based SLI",
    goal=0.95,
    calendar_period="FORTNIGHT",
    windows_based_sli={
        "window_period": "400s",
        "good_bad_metric_filter": std.join(separator=" AND ",
            input=[
                "metric.type=\"monitoring.googleapis.com/uptime_check/check_passed\"",
                "resource.type=\"uptime_url\"",
            ]).result,
    })
Copy
package main

import (
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/monitoring"
	"github.com/pulumi/pulumi-std/sdk/go/std"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		customsrv, err := monitoring.NewCustomService(ctx, "customsrv", &monitoring.CustomServiceArgs{
			ServiceId:   pulumi.String("custom-srv-windows-slos"),
			DisplayName: pulumi.String("My Custom Service"),
		})
		if err != nil {
			return err
		}
		invokeJoin, err := std.Join(ctx, &std.JoinArgs{
			Separator: " AND ",
			Input: []string{
				"metric.type=\"monitoring.googleapis.com/uptime_check/check_passed\"",
				"resource.type=\"uptime_url\"",
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = monitoring.NewSlo(ctx, "windows_based", &monitoring.SloArgs{
			Service:        customsrv.ServiceId,
			DisplayName:    pulumi.String("Test SLO with window based SLI"),
			Goal:           pulumi.Float64(0.95),
			CalendarPeriod: pulumi.String("FORTNIGHT"),
			WindowsBasedSli: &monitoring.SloWindowsBasedSliArgs{
				WindowPeriod:        pulumi.String("400s"),
				GoodBadMetricFilter: pulumi.String(invokeJoin.Result),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
using Std = Pulumi.Std;

return await Deployment.RunAsync(() => 
{
    var customsrv = new Gcp.Monitoring.CustomService("customsrv", new()
    {
        ServiceId = "custom-srv-windows-slos",
        DisplayName = "My Custom Service",
    });

    var windowsBased = new Gcp.Monitoring.Slo("windows_based", new()
    {
        Service = customsrv.ServiceId,
        DisplayName = "Test SLO with window based SLI",
        Goal = 0.95,
        CalendarPeriod = "FORTNIGHT",
        WindowsBasedSli = new Gcp.Monitoring.Inputs.SloWindowsBasedSliArgs
        {
            WindowPeriod = "400s",
            GoodBadMetricFilter = Std.Join.Invoke(new()
            {
                Separator = " AND ",
                Input = new[]
                {
                    "metric.type=\"monitoring.googleapis.com/uptime_check/check_passed\"",
                    "resource.type=\"uptime_url\"",
                },
            }).Apply(invoke => invoke.Result),
        },
    });

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.monitoring.CustomService;
import com.pulumi.gcp.monitoring.CustomServiceArgs;
import com.pulumi.gcp.monitoring.Slo;
import com.pulumi.gcp.monitoring.SloArgs;
import com.pulumi.gcp.monitoring.inputs.SloWindowsBasedSliArgs;
import com.pulumi.std.StdFunctions;
import com.pulumi.std.inputs.JoinArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        var customsrv = new CustomService("customsrv", CustomServiceArgs.builder()
            .serviceId("custom-srv-windows-slos")
            .displayName("My Custom Service")
            .build());

        var windowsBased = new Slo("windowsBased", SloArgs.builder()
            .service(customsrv.serviceId())
            .displayName("Test SLO with window based SLI")
            .goal(0.95)
            .calendarPeriod("FORTNIGHT")
            .windowsBasedSli(SloWindowsBasedSliArgs.builder()
                .windowPeriod("400s")
                .goodBadMetricFilter(StdFunctions.join(JoinArgs.builder()
                    .separator(" AND ")
                    .input(                    
                        "metric.type=\"monitoring.googleapis.com/uptime_check/check_passed\"",
                        "resource.type=\"uptime_url\"")
                    .build()).result())
                .build())
            .build());

    }
}
Copy
resources:
  customsrv:
    type: gcp:monitoring:CustomService
    properties:
      serviceId: custom-srv-windows-slos
      displayName: My Custom Service
  windowsBased:
    type: gcp:monitoring:Slo
    name: windows_based
    properties:
      service: ${customsrv.serviceId}
      displayName: Test SLO with window based SLI
      goal: 0.95
      calendarPeriod: FORTNIGHT
      windowsBasedSli:
        windowPeriod: 400s
        goodBadMetricFilter:
          fn::invoke:
            function: std:join
            arguments:
              separator: ' AND '
              input:
                - metric.type="monitoring.googleapis.com/uptime_check/check_passed"
                - resource.type="uptime_url"
            return: result
Copy

Monitoring Slo Windows Based Metric Mean

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
import * as std from "@pulumi/std";

const customsrv = new gcp.monitoring.CustomService("customsrv", {
    serviceId: "custom-srv-windows-slos",
    displayName: "My Custom Service",
});
const windowsBased = new gcp.monitoring.Slo("windows_based", {
    service: customsrv.serviceId,
    displayName: "Test SLO with window based SLI",
    goal: 0.9,
    rollingPeriodDays: 20,
    windowsBasedSli: {
        windowPeriod: "600s",
        metricMeanInRange: {
            timeSeries: std.join({
                separator: " AND ",
                input: [
                    "metric.type=\"agent.googleapis.com/cassandra/client_request/latency/95p\"",
                    "resource.type=\"gce_instance\"",
                ],
            }).then(invoke => invoke.result),
            range: {
                max: 5,
            },
        },
    },
});
Copy
import pulumi
import pulumi_gcp as gcp
import pulumi_std as std

customsrv = gcp.monitoring.CustomService("customsrv",
    service_id="custom-srv-windows-slos",
    display_name="My Custom Service")
windows_based = gcp.monitoring.Slo("windows_based",
    service=customsrv.service_id,
    display_name="Test SLO with window based SLI",
    goal=0.9,
    rolling_period_days=20,
    windows_based_sli={
        "window_period": "600s",
        "metric_mean_in_range": {
            "time_series": std.join(separator=" AND ",
                input=[
                    "metric.type=\"agent.googleapis.com/cassandra/client_request/latency/95p\"",
                    "resource.type=\"gce_instance\"",
                ]).result,
            "range": {
                "max": 5,
            },
        },
    })
Copy
package main

import (
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/monitoring"
	"github.com/pulumi/pulumi-std/sdk/go/std"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		customsrv, err := monitoring.NewCustomService(ctx, "customsrv", &monitoring.CustomServiceArgs{
			ServiceId:   pulumi.String("custom-srv-windows-slos"),
			DisplayName: pulumi.String("My Custom Service"),
		})
		if err != nil {
			return err
		}
		invokeJoin, err := std.Join(ctx, &std.JoinArgs{
			Separator: " AND ",
			Input: []string{
				"metric.type=\"agent.googleapis.com/cassandra/client_request/latency/95p\"",
				"resource.type=\"gce_instance\"",
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = monitoring.NewSlo(ctx, "windows_based", &monitoring.SloArgs{
			Service:           customsrv.ServiceId,
			DisplayName:       pulumi.String("Test SLO with window based SLI"),
			Goal:              pulumi.Float64(0.9),
			RollingPeriodDays: pulumi.Int(20),
			WindowsBasedSli: &monitoring.SloWindowsBasedSliArgs{
				WindowPeriod: pulumi.String("600s"),
				MetricMeanInRange: &monitoring.SloWindowsBasedSliMetricMeanInRangeArgs{
					TimeSeries: pulumi.String(invokeJoin.Result),
					Range: &monitoring.SloWindowsBasedSliMetricMeanInRangeRangeArgs{
						Max: pulumi.Float64(5),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
using Std = Pulumi.Std;

return await Deployment.RunAsync(() => 
{
    var customsrv = new Gcp.Monitoring.CustomService("customsrv", new()
    {
        ServiceId = "custom-srv-windows-slos",
        DisplayName = "My Custom Service",
    });

    var windowsBased = new Gcp.Monitoring.Slo("windows_based", new()
    {
        Service = customsrv.ServiceId,
        DisplayName = "Test SLO with window based SLI",
        Goal = 0.9,
        RollingPeriodDays = 20,
        WindowsBasedSli = new Gcp.Monitoring.Inputs.SloWindowsBasedSliArgs
        {
            WindowPeriod = "600s",
            MetricMeanInRange = new Gcp.Monitoring.Inputs.SloWindowsBasedSliMetricMeanInRangeArgs
            {
                TimeSeries = Std.Join.Invoke(new()
                {
                    Separator = " AND ",
                    Input = new[]
                    {
                        "metric.type=\"agent.googleapis.com/cassandra/client_request/latency/95p\"",
                        "resource.type=\"gce_instance\"",
                    },
                }).Apply(invoke => invoke.Result),
                Range = new Gcp.Monitoring.Inputs.SloWindowsBasedSliMetricMeanInRangeRangeArgs
                {
                    Max = 5,
                },
            },
        },
    });

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.monitoring.CustomService;
import com.pulumi.gcp.monitoring.CustomServiceArgs;
import com.pulumi.gcp.monitoring.Slo;
import com.pulumi.gcp.monitoring.SloArgs;
import com.pulumi.gcp.monitoring.inputs.SloWindowsBasedSliArgs;
import com.pulumi.gcp.monitoring.inputs.SloWindowsBasedSliMetricMeanInRangeArgs;
import com.pulumi.gcp.monitoring.inputs.SloWindowsBasedSliMetricMeanInRangeRangeArgs;
import com.pulumi.std.StdFunctions;
import com.pulumi.std.inputs.JoinArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        var customsrv = new CustomService("customsrv", CustomServiceArgs.builder()
            .serviceId("custom-srv-windows-slos")
            .displayName("My Custom Service")
            .build());

        var windowsBased = new Slo("windowsBased", SloArgs.builder()
            .service(customsrv.serviceId())
            .displayName("Test SLO with window based SLI")
            .goal(0.9)
            .rollingPeriodDays(20)
            .windowsBasedSli(SloWindowsBasedSliArgs.builder()
                .windowPeriod("600s")
                .metricMeanInRange(SloWindowsBasedSliMetricMeanInRangeArgs.builder()
                    .timeSeries(StdFunctions.join(JoinArgs.builder()
                        .separator(" AND ")
                        .input(                        
                            "metric.type=\"agent.googleapis.com/cassandra/client_request/latency/95p\"",
                            "resource.type=\"gce_instance\"")
                        .build()).result())
                    .range(SloWindowsBasedSliMetricMeanInRangeRangeArgs.builder()
                        .max(5.0)
                        .build())
                    .build())
                .build())
            .build());

    }
}
Copy
resources:
  customsrv:
    type: gcp:monitoring:CustomService
    properties:
      serviceId: custom-srv-windows-slos
      displayName: My Custom Service
  windowsBased:
    type: gcp:monitoring:Slo
    name: windows_based
    properties:
      service: ${customsrv.serviceId}
      displayName: Test SLO with window based SLI
      goal: 0.9
      rollingPeriodDays: 20
      windowsBasedSli:
        windowPeriod: 600s
        metricMeanInRange:
          timeSeries:
            fn::invoke:
              function: std:join
              arguments:
                separator: ' AND '
                input:
                  - metric.type="agent.googleapis.com/cassandra/client_request/latency/95p"
                  - resource.type="gce_instance"
              return: result
          range:
            max: 5
Copy

Monitoring Slo Windows Based Metric Sum

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
import * as std from "@pulumi/std";

const customsrv = new gcp.monitoring.CustomService("customsrv", {
    serviceId: "custom-srv-windows-slos",
    displayName: "My Custom Service",
});
const windowsBased = new gcp.monitoring.Slo("windows_based", {
    service: customsrv.serviceId,
    displayName: "Test SLO with window based SLI",
    goal: 0.9,
    rollingPeriodDays: 20,
    windowsBasedSli: {
        windowPeriod: "400s",
        metricSumInRange: {
            timeSeries: std.join({
                separator: " AND ",
                input: [
                    "metric.type=\"monitoring.googleapis.com/uptime_check/request_latency\"",
                    "resource.type=\"uptime_url\"",
                ],
            }).then(invoke => invoke.result),
            range: {
                max: 5000,
            },
        },
    },
});
Copy
import pulumi
import pulumi_gcp as gcp
import pulumi_std as std

customsrv = gcp.monitoring.CustomService("customsrv",
    service_id="custom-srv-windows-slos",
    display_name="My Custom Service")
windows_based = gcp.monitoring.Slo("windows_based",
    service=customsrv.service_id,
    display_name="Test SLO with window based SLI",
    goal=0.9,
    rolling_period_days=20,
    windows_based_sli={
        "window_period": "400s",
        "metric_sum_in_range": {
            "time_series": std.join(separator=" AND ",
                input=[
                    "metric.type=\"monitoring.googleapis.com/uptime_check/request_latency\"",
                    "resource.type=\"uptime_url\"",
                ]).result,
            "range": {
                "max": 5000,
            },
        },
    })
Copy
package main

import (
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/monitoring"
	"github.com/pulumi/pulumi-std/sdk/go/std"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		customsrv, err := monitoring.NewCustomService(ctx, "customsrv", &monitoring.CustomServiceArgs{
			ServiceId:   pulumi.String("custom-srv-windows-slos"),
			DisplayName: pulumi.String("My Custom Service"),
		})
		if err != nil {
			return err
		}
		invokeJoin, err := std.Join(ctx, &std.JoinArgs{
			Separator: " AND ",
			Input: []string{
				"metric.type=\"monitoring.googleapis.com/uptime_check/request_latency\"",
				"resource.type=\"uptime_url\"",
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = monitoring.NewSlo(ctx, "windows_based", &monitoring.SloArgs{
			Service:           customsrv.ServiceId,
			DisplayName:       pulumi.String("Test SLO with window based SLI"),
			Goal:              pulumi.Float64(0.9),
			RollingPeriodDays: pulumi.Int(20),
			WindowsBasedSli: &monitoring.SloWindowsBasedSliArgs{
				WindowPeriod: pulumi.String("400s"),
				MetricSumInRange: &monitoring.SloWindowsBasedSliMetricSumInRangeArgs{
					TimeSeries: pulumi.String(invokeJoin.Result),
					Range: &monitoring.SloWindowsBasedSliMetricSumInRangeRangeArgs{
						Max: pulumi.Float64(5000),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
using Std = Pulumi.Std;

return await Deployment.RunAsync(() => 
{
    var customsrv = new Gcp.Monitoring.CustomService("customsrv", new()
    {
        ServiceId = "custom-srv-windows-slos",
        DisplayName = "My Custom Service",
    });

    var windowsBased = new Gcp.Monitoring.Slo("windows_based", new()
    {
        Service = customsrv.ServiceId,
        DisplayName = "Test SLO with window based SLI",
        Goal = 0.9,
        RollingPeriodDays = 20,
        WindowsBasedSli = new Gcp.Monitoring.Inputs.SloWindowsBasedSliArgs
        {
            WindowPeriod = "400s",
            MetricSumInRange = new Gcp.Monitoring.Inputs.SloWindowsBasedSliMetricSumInRangeArgs
            {
                TimeSeries = Std.Join.Invoke(new()
                {
                    Separator = " AND ",
                    Input = new[]
                    {
                        "metric.type=\"monitoring.googleapis.com/uptime_check/request_latency\"",
                        "resource.type=\"uptime_url\"",
                    },
                }).Apply(invoke => invoke.Result),
                Range = new Gcp.Monitoring.Inputs.SloWindowsBasedSliMetricSumInRangeRangeArgs
                {
                    Max = 5000,
                },
            },
        },
    });

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.monitoring.CustomService;
import com.pulumi.gcp.monitoring.CustomServiceArgs;
import com.pulumi.gcp.monitoring.Slo;
import com.pulumi.gcp.monitoring.SloArgs;
import com.pulumi.gcp.monitoring.inputs.SloWindowsBasedSliArgs;
import com.pulumi.gcp.monitoring.inputs.SloWindowsBasedSliMetricSumInRangeArgs;
import com.pulumi.gcp.monitoring.inputs.SloWindowsBasedSliMetricSumInRangeRangeArgs;
import com.pulumi.std.StdFunctions;
import com.pulumi.std.inputs.JoinArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        var customsrv = new CustomService("customsrv", CustomServiceArgs.builder()
            .serviceId("custom-srv-windows-slos")
            .displayName("My Custom Service")
            .build());

        var windowsBased = new Slo("windowsBased", SloArgs.builder()
            .service(customsrv.serviceId())
            .displayName("Test SLO with window based SLI")
            .goal(0.9)
            .rollingPeriodDays(20)
            .windowsBasedSli(SloWindowsBasedSliArgs.builder()
                .windowPeriod("400s")
                .metricSumInRange(SloWindowsBasedSliMetricSumInRangeArgs.builder()
                    .timeSeries(StdFunctions.join(JoinArgs.builder()
                        .separator(" AND ")
                        .input(                        
                            "metric.type=\"monitoring.googleapis.com/uptime_check/request_latency\"",
                            "resource.type=\"uptime_url\"")
                        .build()).result())
                    .range(SloWindowsBasedSliMetricSumInRangeRangeArgs.builder()
                        .max(5000.0)
                        .build())
                    .build())
                .build())
            .build());

    }
}
Copy
resources:
  customsrv:
    type: gcp:monitoring:CustomService
    properties:
      serviceId: custom-srv-windows-slos
      displayName: My Custom Service
  windowsBased:
    type: gcp:monitoring:Slo
    name: windows_based
    properties:
      service: ${customsrv.serviceId}
      displayName: Test SLO with window based SLI
      goal: 0.9
      rollingPeriodDays: 20
      windowsBasedSli:
        windowPeriod: 400s
        metricSumInRange:
          timeSeries:
            fn::invoke:
              function: std:join
              arguments:
                separator: ' AND '
                input:
                  - metric.type="monitoring.googleapis.com/uptime_check/request_latency"
                  - resource.type="uptime_url"
              return: result
          range:
            max: 5000
Copy

Monitoring Slo Windows Based Ratio Threshold

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
import * as std from "@pulumi/std";

const customsrv = new gcp.monitoring.CustomService("customsrv", {
    serviceId: "custom-srv-windows-slos",
    displayName: "My Custom Service",
});
const windowsBased = new gcp.monitoring.Slo("windows_based", {
    service: customsrv.serviceId,
    displayName: "Test SLO with window based SLI",
    goal: 0.9,
    rollingPeriodDays: 20,
    windowsBasedSli: {
        windowPeriod: "100s",
        goodTotalRatioThreshold: {
            threshold: 0.1,
            performance: {
                distributionCut: {
                    distributionFilter: std.join({
                        separator: " AND ",
                        input: [
                            "metric.type=\"serviceruntime.googleapis.com/api/request_latencies\"",
                            "resource.type=\"consumed_api\"",
                        ],
                    }).then(invoke => invoke.result),
                    range: {
                        min: 1,
                        max: 9,
                    },
                },
            },
        },
    },
});
Copy
import pulumi
import pulumi_gcp as gcp
import pulumi_std as std

customsrv = gcp.monitoring.CustomService("customsrv",
    service_id="custom-srv-windows-slos",
    display_name="My Custom Service")
windows_based = gcp.monitoring.Slo("windows_based",
    service=customsrv.service_id,
    display_name="Test SLO with window based SLI",
    goal=0.9,
    rolling_period_days=20,
    windows_based_sli={
        "window_period": "100s",
        "good_total_ratio_threshold": {
            "threshold": 0.1,
            "performance": {
                "distribution_cut": {
                    "distribution_filter": std.join(separator=" AND ",
                        input=[
                            "metric.type=\"serviceruntime.googleapis.com/api/request_latencies\"",
                            "resource.type=\"consumed_api\"",
                        ]).result,
                    "range": {
                        "min": 1,
                        "max": 9,
                    },
                },
            },
        },
    })
Copy
package main

import (
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/monitoring"
	"github.com/pulumi/pulumi-std/sdk/go/std"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		customsrv, err := monitoring.NewCustomService(ctx, "customsrv", &monitoring.CustomServiceArgs{
			ServiceId:   pulumi.String("custom-srv-windows-slos"),
			DisplayName: pulumi.String("My Custom Service"),
		})
		if err != nil {
			return err
		}
		invokeJoin, err := std.Join(ctx, &std.JoinArgs{
			Separator: " AND ",
			Input: []string{
				"metric.type=\"serviceruntime.googleapis.com/api/request_latencies\"",
				"resource.type=\"consumed_api\"",
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = monitoring.NewSlo(ctx, "windows_based", &monitoring.SloArgs{
			Service:           customsrv.ServiceId,
			DisplayName:       pulumi.String("Test SLO with window based SLI"),
			Goal:              pulumi.Float64(0.9),
			RollingPeriodDays: pulumi.Int(20),
			WindowsBasedSli: &monitoring.SloWindowsBasedSliArgs{
				WindowPeriod: pulumi.String("100s"),
				GoodTotalRatioThreshold: &monitoring.SloWindowsBasedSliGoodTotalRatioThresholdArgs{
					Threshold: pulumi.Float64(0.1),
					Performance: &monitoring.SloWindowsBasedSliGoodTotalRatioThresholdPerformanceArgs{
						DistributionCut: &monitoring.SloWindowsBasedSliGoodTotalRatioThresholdPerformanceDistributionCutArgs{
							DistributionFilter: pulumi.String(invokeJoin.Result),
							Range: &monitoring.SloWindowsBasedSliGoodTotalRatioThresholdPerformanceDistributionCutRangeArgs{
								Min: pulumi.Float64(1),
								Max: pulumi.Float64(9),
							},
						},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
using Std = Pulumi.Std;

return await Deployment.RunAsync(() => 
{
    var customsrv = new Gcp.Monitoring.CustomService("customsrv", new()
    {
        ServiceId = "custom-srv-windows-slos",
        DisplayName = "My Custom Service",
    });

    var windowsBased = new Gcp.Monitoring.Slo("windows_based", new()
    {
        Service = customsrv.ServiceId,
        DisplayName = "Test SLO with window based SLI",
        Goal = 0.9,
        RollingPeriodDays = 20,
        WindowsBasedSli = new Gcp.Monitoring.Inputs.SloWindowsBasedSliArgs
        {
            WindowPeriod = "100s",
            GoodTotalRatioThreshold = new Gcp.Monitoring.Inputs.SloWindowsBasedSliGoodTotalRatioThresholdArgs
            {
                Threshold = 0.1,
                Performance = new Gcp.Monitoring.Inputs.SloWindowsBasedSliGoodTotalRatioThresholdPerformanceArgs
                {
                    DistributionCut = new Gcp.Monitoring.Inputs.SloWindowsBasedSliGoodTotalRatioThresholdPerformanceDistributionCutArgs
                    {
                        DistributionFilter = Std.Join.Invoke(new()
                        {
                            Separator = " AND ",
                            Input = new[]
                            {
                                "metric.type=\"serviceruntime.googleapis.com/api/request_latencies\"",
                                "resource.type=\"consumed_api\"",
                            },
                        }).Apply(invoke => invoke.Result),
                        Range = new Gcp.Monitoring.Inputs.SloWindowsBasedSliGoodTotalRatioThresholdPerformanceDistributionCutRangeArgs
                        {
                            Min = 1,
                            Max = 9,
                        },
                    },
                },
            },
        },
    });

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.monitoring.CustomService;
import com.pulumi.gcp.monitoring.CustomServiceArgs;
import com.pulumi.gcp.monitoring.Slo;
import com.pulumi.gcp.monitoring.SloArgs;
import com.pulumi.gcp.monitoring.inputs.SloWindowsBasedSliArgs;
import com.pulumi.gcp.monitoring.inputs.SloWindowsBasedSliGoodTotalRatioThresholdArgs;
import com.pulumi.gcp.monitoring.inputs.SloWindowsBasedSliGoodTotalRatioThresholdPerformanceArgs;
import com.pulumi.gcp.monitoring.inputs.SloWindowsBasedSliGoodTotalRatioThresholdPerformanceDistributionCutArgs;
import com.pulumi.gcp.monitoring.inputs.SloWindowsBasedSliGoodTotalRatioThresholdPerformanceDistributionCutRangeArgs;
import com.pulumi.std.StdFunctions;
import com.pulumi.std.inputs.JoinArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        var customsrv = new CustomService("customsrv", CustomServiceArgs.builder()
            .serviceId("custom-srv-windows-slos")
            .displayName("My Custom Service")
            .build());

        var windowsBased = new Slo("windowsBased", SloArgs.builder()
            .service(customsrv.serviceId())
            .displayName("Test SLO with window based SLI")
            .goal(0.9)
            .rollingPeriodDays(20)
            .windowsBasedSli(SloWindowsBasedSliArgs.builder()
                .windowPeriod("100s")
                .goodTotalRatioThreshold(SloWindowsBasedSliGoodTotalRatioThresholdArgs.builder()
                    .threshold(0.1)
                    .performance(SloWindowsBasedSliGoodTotalRatioThresholdPerformanceArgs.builder()
                        .distributionCut(SloWindowsBasedSliGoodTotalRatioThresholdPerformanceDistributionCutArgs.builder()
                            .distributionFilter(StdFunctions.join(JoinArgs.builder()
                                .separator(" AND ")
                                .input(                                
                                    "metric.type=\"serviceruntime.googleapis.com/api/request_latencies\"",
                                    "resource.type=\"consumed_api\"")
                                .build()).result())
                            .range(SloWindowsBasedSliGoodTotalRatioThresholdPerformanceDistributionCutRangeArgs.builder()
                                .min(1.0)
                                .max(9.0)
                                .build())
                            .build())
                        .build())
                    .build())
                .build())
            .build());

    }
}
Copy
resources:
  customsrv:
    type: gcp:monitoring:CustomService
    properties:
      serviceId: custom-srv-windows-slos
      displayName: My Custom Service
  windowsBased:
    type: gcp:monitoring:Slo
    name: windows_based
    properties:
      service: ${customsrv.serviceId}
      displayName: Test SLO with window based SLI
      goal: 0.9
      rollingPeriodDays: 20
      windowsBasedSli:
        windowPeriod: 100s
        goodTotalRatioThreshold:
          threshold: 0.1
          performance:
            distributionCut:
              distributionFilter:
                fn::invoke:
                  function: std:join
                  arguments:
                    separator: ' AND '
                    input:
                      - metric.type="serviceruntime.googleapis.com/api/request_latencies"
                      - resource.type="consumed_api"
                  return: result
              range:
                min: 1
                max: 9
Copy

Create Slo Resource

Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

Constructor syntax

new Slo(name: string, args: SloArgs, opts?: CustomResourceOptions);
@overload
def Slo(resource_name: str,
        args: SloArgs,
        opts: Optional[ResourceOptions] = None)

@overload
def Slo(resource_name: str,
        opts: Optional[ResourceOptions] = None,
        goal: Optional[float] = None,
        service: Optional[str] = None,
        basic_sli: Optional[SloBasicSliArgs] = None,
        calendar_period: Optional[str] = None,
        display_name: Optional[str] = None,
        project: Optional[str] = None,
        request_based_sli: Optional[SloRequestBasedSliArgs] = None,
        rolling_period_days: Optional[int] = None,
        slo_id: Optional[str] = None,
        user_labels: Optional[Mapping[str, str]] = None,
        windows_based_sli: Optional[SloWindowsBasedSliArgs] = None)
func NewSlo(ctx *Context, name string, args SloArgs, opts ...ResourceOption) (*Slo, error)
public Slo(string name, SloArgs args, CustomResourceOptions? opts = null)
public Slo(String name, SloArgs args)
public Slo(String name, SloArgs args, CustomResourceOptions options)
type: gcp:monitoring:Slo
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

Parameters

name This property is required. string
The unique name of the resource.
args This property is required. SloArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name This property is required. str
The unique name of the resource.
args This property is required. SloArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name This property is required. string
The unique name of the resource.
args This property is required. SloArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name This property is required. string
The unique name of the resource.
args This property is required. SloArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name This property is required. String
The unique name of the resource.
args This property is required. SloArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

Constructor example

The following reference example uses placeholder values for all input properties.

var sloResource = new Gcp.Monitoring.Slo("sloResource", new()
{
    Goal = 0,
    Service = "string",
    BasicSli = new Gcp.Monitoring.Inputs.SloBasicSliArgs
    {
        Availability = new Gcp.Monitoring.Inputs.SloBasicSliAvailabilityArgs
        {
            Enabled = false,
        },
        Latency = new Gcp.Monitoring.Inputs.SloBasicSliLatencyArgs
        {
            Threshold = "string",
        },
        Locations = new[]
        {
            "string",
        },
        Methods = new[]
        {
            "string",
        },
        Versions = new[]
        {
            "string",
        },
    },
    CalendarPeriod = "string",
    DisplayName = "string",
    Project = "string",
    RequestBasedSli = new Gcp.Monitoring.Inputs.SloRequestBasedSliArgs
    {
        DistributionCut = new Gcp.Monitoring.Inputs.SloRequestBasedSliDistributionCutArgs
        {
            DistributionFilter = "string",
            Range = new Gcp.Monitoring.Inputs.SloRequestBasedSliDistributionCutRangeArgs
            {
                Max = 0,
                Min = 0,
            },
        },
        GoodTotalRatio = new Gcp.Monitoring.Inputs.SloRequestBasedSliGoodTotalRatioArgs
        {
            BadServiceFilter = "string",
            GoodServiceFilter = "string",
            TotalServiceFilter = "string",
        },
    },
    RollingPeriodDays = 0,
    SloId = "string",
    UserLabels = 
    {
        { "string", "string" },
    },
    WindowsBasedSli = new Gcp.Monitoring.Inputs.SloWindowsBasedSliArgs
    {
        GoodBadMetricFilter = "string",
        GoodTotalRatioThreshold = new Gcp.Monitoring.Inputs.SloWindowsBasedSliGoodTotalRatioThresholdArgs
        {
            BasicSliPerformance = new Gcp.Monitoring.Inputs.SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformanceArgs
            {
                Availability = new Gcp.Monitoring.Inputs.SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformanceAvailabilityArgs
                {
                    Enabled = false,
                },
                Latency = new Gcp.Monitoring.Inputs.SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformanceLatencyArgs
                {
                    Threshold = "string",
                },
                Locations = new[]
                {
                    "string",
                },
                Methods = new[]
                {
                    "string",
                },
                Versions = new[]
                {
                    "string",
                },
            },
            Performance = new Gcp.Monitoring.Inputs.SloWindowsBasedSliGoodTotalRatioThresholdPerformanceArgs
            {
                DistributionCut = new Gcp.Monitoring.Inputs.SloWindowsBasedSliGoodTotalRatioThresholdPerformanceDistributionCutArgs
                {
                    DistributionFilter = "string",
                    Range = new Gcp.Monitoring.Inputs.SloWindowsBasedSliGoodTotalRatioThresholdPerformanceDistributionCutRangeArgs
                    {
                        Max = 0,
                        Min = 0,
                    },
                },
                GoodTotalRatio = new Gcp.Monitoring.Inputs.SloWindowsBasedSliGoodTotalRatioThresholdPerformanceGoodTotalRatioArgs
                {
                    BadServiceFilter = "string",
                    GoodServiceFilter = "string",
                    TotalServiceFilter = "string",
                },
            },
            Threshold = 0,
        },
        MetricMeanInRange = new Gcp.Monitoring.Inputs.SloWindowsBasedSliMetricMeanInRangeArgs
        {
            Range = new Gcp.Monitoring.Inputs.SloWindowsBasedSliMetricMeanInRangeRangeArgs
            {
                Max = 0,
                Min = 0,
            },
            TimeSeries = "string",
        },
        MetricSumInRange = new Gcp.Monitoring.Inputs.SloWindowsBasedSliMetricSumInRangeArgs
        {
            Range = new Gcp.Monitoring.Inputs.SloWindowsBasedSliMetricSumInRangeRangeArgs
            {
                Max = 0,
                Min = 0,
            },
            TimeSeries = "string",
        },
        WindowPeriod = "string",
    },
});
Copy
example, err := monitoring.NewSlo(ctx, "sloResource", &monitoring.SloArgs{
	Goal:    pulumi.Float64(0),
	Service: pulumi.String("string"),
	BasicSli: &monitoring.SloBasicSliArgs{
		Availability: &monitoring.SloBasicSliAvailabilityArgs{
			Enabled: pulumi.Bool(false),
		},
		Latency: &monitoring.SloBasicSliLatencyArgs{
			Threshold: pulumi.String("string"),
		},
		Locations: pulumi.StringArray{
			pulumi.String("string"),
		},
		Methods: pulumi.StringArray{
			pulumi.String("string"),
		},
		Versions: pulumi.StringArray{
			pulumi.String("string"),
		},
	},
	CalendarPeriod: pulumi.String("string"),
	DisplayName:    pulumi.String("string"),
	Project:        pulumi.String("string"),
	RequestBasedSli: &monitoring.SloRequestBasedSliArgs{
		DistributionCut: &monitoring.SloRequestBasedSliDistributionCutArgs{
			DistributionFilter: pulumi.String("string"),
			Range: &monitoring.SloRequestBasedSliDistributionCutRangeArgs{
				Max: pulumi.Float64(0),
				Min: pulumi.Float64(0),
			},
		},
		GoodTotalRatio: &monitoring.SloRequestBasedSliGoodTotalRatioArgs{
			BadServiceFilter:   pulumi.String("string"),
			GoodServiceFilter:  pulumi.String("string"),
			TotalServiceFilter: pulumi.String("string"),
		},
	},
	RollingPeriodDays: pulumi.Int(0),
	SloId:             pulumi.String("string"),
	UserLabels: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
	WindowsBasedSli: &monitoring.SloWindowsBasedSliArgs{
		GoodBadMetricFilter: pulumi.String("string"),
		GoodTotalRatioThreshold: &monitoring.SloWindowsBasedSliGoodTotalRatioThresholdArgs{
			BasicSliPerformance: &monitoring.SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformanceArgs{
				Availability: &monitoring.SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformanceAvailabilityArgs{
					Enabled: pulumi.Bool(false),
				},
				Latency: &monitoring.SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformanceLatencyArgs{
					Threshold: pulumi.String("string"),
				},
				Locations: pulumi.StringArray{
					pulumi.String("string"),
				},
				Methods: pulumi.StringArray{
					pulumi.String("string"),
				},
				Versions: pulumi.StringArray{
					pulumi.String("string"),
				},
			},
			Performance: &monitoring.SloWindowsBasedSliGoodTotalRatioThresholdPerformanceArgs{
				DistributionCut: &monitoring.SloWindowsBasedSliGoodTotalRatioThresholdPerformanceDistributionCutArgs{
					DistributionFilter: pulumi.String("string"),
					Range: &monitoring.SloWindowsBasedSliGoodTotalRatioThresholdPerformanceDistributionCutRangeArgs{
						Max: pulumi.Float64(0),
						Min: pulumi.Float64(0),
					},
				},
				GoodTotalRatio: &monitoring.SloWindowsBasedSliGoodTotalRatioThresholdPerformanceGoodTotalRatioArgs{
					BadServiceFilter:   pulumi.String("string"),
					GoodServiceFilter:  pulumi.String("string"),
					TotalServiceFilter: pulumi.String("string"),
				},
			},
			Threshold: pulumi.Float64(0),
		},
		MetricMeanInRange: &monitoring.SloWindowsBasedSliMetricMeanInRangeArgs{
			Range: &monitoring.SloWindowsBasedSliMetricMeanInRangeRangeArgs{
				Max: pulumi.Float64(0),
				Min: pulumi.Float64(0),
			},
			TimeSeries: pulumi.String("string"),
		},
		MetricSumInRange: &monitoring.SloWindowsBasedSliMetricSumInRangeArgs{
			Range: &monitoring.SloWindowsBasedSliMetricSumInRangeRangeArgs{
				Max: pulumi.Float64(0),
				Min: pulumi.Float64(0),
			},
			TimeSeries: pulumi.String("string"),
		},
		WindowPeriod: pulumi.String("string"),
	},
})
Copy
var sloResource = new Slo("sloResource", SloArgs.builder()
    .goal(0)
    .service("string")
    .basicSli(SloBasicSliArgs.builder()
        .availability(SloBasicSliAvailabilityArgs.builder()
            .enabled(false)
            .build())
        .latency(SloBasicSliLatencyArgs.builder()
            .threshold("string")
            .build())
        .locations("string")
        .methods("string")
        .versions("string")
        .build())
    .calendarPeriod("string")
    .displayName("string")
    .project("string")
    .requestBasedSli(SloRequestBasedSliArgs.builder()
        .distributionCut(SloRequestBasedSliDistributionCutArgs.builder()
            .distributionFilter("string")
            .range(SloRequestBasedSliDistributionCutRangeArgs.builder()
                .max(0)
                .min(0)
                .build())
            .build())
        .goodTotalRatio(SloRequestBasedSliGoodTotalRatioArgs.builder()
            .badServiceFilter("string")
            .goodServiceFilter("string")
            .totalServiceFilter("string")
            .build())
        .build())
    .rollingPeriodDays(0)
    .sloId("string")
    .userLabels(Map.of("string", "string"))
    .windowsBasedSli(SloWindowsBasedSliArgs.builder()
        .goodBadMetricFilter("string")
        .goodTotalRatioThreshold(SloWindowsBasedSliGoodTotalRatioThresholdArgs.builder()
            .basicSliPerformance(SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformanceArgs.builder()
                .availability(SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformanceAvailabilityArgs.builder()
                    .enabled(false)
                    .build())
                .latency(SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformanceLatencyArgs.builder()
                    .threshold("string")
                    .build())
                .locations("string")
                .methods("string")
                .versions("string")
                .build())
            .performance(SloWindowsBasedSliGoodTotalRatioThresholdPerformanceArgs.builder()
                .distributionCut(SloWindowsBasedSliGoodTotalRatioThresholdPerformanceDistributionCutArgs.builder()
                    .distributionFilter("string")
                    .range(SloWindowsBasedSliGoodTotalRatioThresholdPerformanceDistributionCutRangeArgs.builder()
                        .max(0)
                        .min(0)
                        .build())
                    .build())
                .goodTotalRatio(SloWindowsBasedSliGoodTotalRatioThresholdPerformanceGoodTotalRatioArgs.builder()
                    .badServiceFilter("string")
                    .goodServiceFilter("string")
                    .totalServiceFilter("string")
                    .build())
                .build())
            .threshold(0)
            .build())
        .metricMeanInRange(SloWindowsBasedSliMetricMeanInRangeArgs.builder()
            .range(SloWindowsBasedSliMetricMeanInRangeRangeArgs.builder()
                .max(0)
                .min(0)
                .build())
            .timeSeries("string")
            .build())
        .metricSumInRange(SloWindowsBasedSliMetricSumInRangeArgs.builder()
            .range(SloWindowsBasedSliMetricSumInRangeRangeArgs.builder()
                .max(0)
                .min(0)
                .build())
            .timeSeries("string")
            .build())
        .windowPeriod("string")
        .build())
    .build());
Copy
slo_resource = gcp.monitoring.Slo("sloResource",
    goal=0,
    service="string",
    basic_sli={
        "availability": {
            "enabled": False,
        },
        "latency": {
            "threshold": "string",
        },
        "locations": ["string"],
        "methods": ["string"],
        "versions": ["string"],
    },
    calendar_period="string",
    display_name="string",
    project="string",
    request_based_sli={
        "distribution_cut": {
            "distribution_filter": "string",
            "range": {
                "max": 0,
                "min": 0,
            },
        },
        "good_total_ratio": {
            "bad_service_filter": "string",
            "good_service_filter": "string",
            "total_service_filter": "string",
        },
    },
    rolling_period_days=0,
    slo_id="string",
    user_labels={
        "string": "string",
    },
    windows_based_sli={
        "good_bad_metric_filter": "string",
        "good_total_ratio_threshold": {
            "basic_sli_performance": {
                "availability": {
                    "enabled": False,
                },
                "latency": {
                    "threshold": "string",
                },
                "locations": ["string"],
                "methods": ["string"],
                "versions": ["string"],
            },
            "performance": {
                "distribution_cut": {
                    "distribution_filter": "string",
                    "range": {
                        "max": 0,
                        "min": 0,
                    },
                },
                "good_total_ratio": {
                    "bad_service_filter": "string",
                    "good_service_filter": "string",
                    "total_service_filter": "string",
                },
            },
            "threshold": 0,
        },
        "metric_mean_in_range": {
            "range": {
                "max": 0,
                "min": 0,
            },
            "time_series": "string",
        },
        "metric_sum_in_range": {
            "range": {
                "max": 0,
                "min": 0,
            },
            "time_series": "string",
        },
        "window_period": "string",
    })
Copy
const sloResource = new gcp.monitoring.Slo("sloResource", {
    goal: 0,
    service: "string",
    basicSli: {
        availability: {
            enabled: false,
        },
        latency: {
            threshold: "string",
        },
        locations: ["string"],
        methods: ["string"],
        versions: ["string"],
    },
    calendarPeriod: "string",
    displayName: "string",
    project: "string",
    requestBasedSli: {
        distributionCut: {
            distributionFilter: "string",
            range: {
                max: 0,
                min: 0,
            },
        },
        goodTotalRatio: {
            badServiceFilter: "string",
            goodServiceFilter: "string",
            totalServiceFilter: "string",
        },
    },
    rollingPeriodDays: 0,
    sloId: "string",
    userLabels: {
        string: "string",
    },
    windowsBasedSli: {
        goodBadMetricFilter: "string",
        goodTotalRatioThreshold: {
            basicSliPerformance: {
                availability: {
                    enabled: false,
                },
                latency: {
                    threshold: "string",
                },
                locations: ["string"],
                methods: ["string"],
                versions: ["string"],
            },
            performance: {
                distributionCut: {
                    distributionFilter: "string",
                    range: {
                        max: 0,
                        min: 0,
                    },
                },
                goodTotalRatio: {
                    badServiceFilter: "string",
                    goodServiceFilter: "string",
                    totalServiceFilter: "string",
                },
            },
            threshold: 0,
        },
        metricMeanInRange: {
            range: {
                max: 0,
                min: 0,
            },
            timeSeries: "string",
        },
        metricSumInRange: {
            range: {
                max: 0,
                min: 0,
            },
            timeSeries: "string",
        },
        windowPeriod: "string",
    },
});
Copy
type: gcp:monitoring:Slo
properties:
    basicSli:
        availability:
            enabled: false
        latency:
            threshold: string
        locations:
            - string
        methods:
            - string
        versions:
            - string
    calendarPeriod: string
    displayName: string
    goal: 0
    project: string
    requestBasedSli:
        distributionCut:
            distributionFilter: string
            range:
                max: 0
                min: 0
        goodTotalRatio:
            badServiceFilter: string
            goodServiceFilter: string
            totalServiceFilter: string
    rollingPeriodDays: 0
    service: string
    sloId: string
    userLabels:
        string: string
    windowsBasedSli:
        goodBadMetricFilter: string
        goodTotalRatioThreshold:
            basicSliPerformance:
                availability:
                    enabled: false
                latency:
                    threshold: string
                locations:
                    - string
                methods:
                    - string
                versions:
                    - string
            performance:
                distributionCut:
                    distributionFilter: string
                    range:
                        max: 0
                        min: 0
                goodTotalRatio:
                    badServiceFilter: string
                    goodServiceFilter: string
                    totalServiceFilter: string
            threshold: 0
        metricMeanInRange:
            range:
                max: 0
                min: 0
            timeSeries: string
        metricSumInRange:
            range:
                max: 0
                min: 0
            timeSeries: string
        windowPeriod: string
Copy

Slo Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

The Slo resource accepts the following input properties:

Goal This property is required. double
The fraction of service that must be good in order for this objective to be met. 0 < goal <= 0.999
Service
This property is required.
Changes to this property will trigger replacement.
string
ID of the service to which this SLO belongs.


BasicSli SloBasicSli
Basic Service-Level Indicator (SLI) on a well-known service type. Performance will be computed on the basis of pre-defined metrics. SLIs are used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.
CalendarPeriod string
A calendar period, semantically "since the start of the current ". Possible values are: DAY, WEEK, FORTNIGHT, MONTH.
DisplayName string
Name used for UI elements listing this SLO.
Project Changes to this property will trigger replacement. string
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
RequestBasedSli SloRequestBasedSli
A request-based SLI defines a SLI for which atomic units of service are counted directly. A SLI describes a good service. It is used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.
RollingPeriodDays int
A rolling time period, semantically "in the past X days". Must be between 1 to 30 days, inclusive.
SloId Changes to this property will trigger replacement. string
The id to use for this ServiceLevelObjective. If omitted, an id will be generated instead.
UserLabels Dictionary<string, string>
This field is intended to be used for organizing and identifying the AlertPolicy objects.The field can contain up to 64 entries. Each key and value is limited to 63 Unicode characters or 128 bytes, whichever is smaller. Labels and values can contain only lowercase letters, numerals, underscores, and dashes. Keys must begin with a letter.
WindowsBasedSli SloWindowsBasedSli
A windows-based SLI defines the criteria for time windows. good_service is defined based off the count of these time windows for which the provided service was of good quality. A SLI describes a good service. It is used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.
Goal This property is required. float64
The fraction of service that must be good in order for this objective to be met. 0 < goal <= 0.999
Service
This property is required.
Changes to this property will trigger replacement.
string
ID of the service to which this SLO belongs.


BasicSli SloBasicSliArgs
Basic Service-Level Indicator (SLI) on a well-known service type. Performance will be computed on the basis of pre-defined metrics. SLIs are used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.
CalendarPeriod string
A calendar period, semantically "since the start of the current ". Possible values are: DAY, WEEK, FORTNIGHT, MONTH.
DisplayName string
Name used for UI elements listing this SLO.
Project Changes to this property will trigger replacement. string
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
RequestBasedSli SloRequestBasedSliArgs
A request-based SLI defines a SLI for which atomic units of service are counted directly. A SLI describes a good service. It is used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.
RollingPeriodDays int
A rolling time period, semantically "in the past X days". Must be between 1 to 30 days, inclusive.
SloId Changes to this property will trigger replacement. string
The id to use for this ServiceLevelObjective. If omitted, an id will be generated instead.
UserLabels map[string]string
This field is intended to be used for organizing and identifying the AlertPolicy objects.The field can contain up to 64 entries. Each key and value is limited to 63 Unicode characters or 128 bytes, whichever is smaller. Labels and values can contain only lowercase letters, numerals, underscores, and dashes. Keys must begin with a letter.
WindowsBasedSli SloWindowsBasedSliArgs
A windows-based SLI defines the criteria for time windows. good_service is defined based off the count of these time windows for which the provided service was of good quality. A SLI describes a good service. It is used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.
goal This property is required. Double
The fraction of service that must be good in order for this objective to be met. 0 < goal <= 0.999
service
This property is required.
Changes to this property will trigger replacement.
String
ID of the service to which this SLO belongs.


basicSli SloBasicSli
Basic Service-Level Indicator (SLI) on a well-known service type. Performance will be computed on the basis of pre-defined metrics. SLIs are used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.
calendarPeriod String
A calendar period, semantically "since the start of the current ". Possible values are: DAY, WEEK, FORTNIGHT, MONTH.
displayName String
Name used for UI elements listing this SLO.
project Changes to this property will trigger replacement. String
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
requestBasedSli SloRequestBasedSli
A request-based SLI defines a SLI for which atomic units of service are counted directly. A SLI describes a good service. It is used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.
rollingPeriodDays Integer
A rolling time period, semantically "in the past X days". Must be between 1 to 30 days, inclusive.
sloId Changes to this property will trigger replacement. String
The id to use for this ServiceLevelObjective. If omitted, an id will be generated instead.
userLabels Map<String,String>
This field is intended to be used for organizing and identifying the AlertPolicy objects.The field can contain up to 64 entries. Each key and value is limited to 63 Unicode characters or 128 bytes, whichever is smaller. Labels and values can contain only lowercase letters, numerals, underscores, and dashes. Keys must begin with a letter.
windowsBasedSli SloWindowsBasedSli
A windows-based SLI defines the criteria for time windows. good_service is defined based off the count of these time windows for which the provided service was of good quality. A SLI describes a good service. It is used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.
goal This property is required. number
The fraction of service that must be good in order for this objective to be met. 0 < goal <= 0.999
service
This property is required.
Changes to this property will trigger replacement.
string
ID of the service to which this SLO belongs.


basicSli SloBasicSli
Basic Service-Level Indicator (SLI) on a well-known service type. Performance will be computed on the basis of pre-defined metrics. SLIs are used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.
calendarPeriod string
A calendar period, semantically "since the start of the current ". Possible values are: DAY, WEEK, FORTNIGHT, MONTH.
displayName string
Name used for UI elements listing this SLO.
project Changes to this property will trigger replacement. string
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
requestBasedSli SloRequestBasedSli
A request-based SLI defines a SLI for which atomic units of service are counted directly. A SLI describes a good service. It is used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.
rollingPeriodDays number
A rolling time period, semantically "in the past X days". Must be between 1 to 30 days, inclusive.
sloId Changes to this property will trigger replacement. string
The id to use for this ServiceLevelObjective. If omitted, an id will be generated instead.
userLabels {[key: string]: string}
This field is intended to be used for organizing and identifying the AlertPolicy objects.The field can contain up to 64 entries. Each key and value is limited to 63 Unicode characters or 128 bytes, whichever is smaller. Labels and values can contain only lowercase letters, numerals, underscores, and dashes. Keys must begin with a letter.
windowsBasedSli SloWindowsBasedSli
A windows-based SLI defines the criteria for time windows. good_service is defined based off the count of these time windows for which the provided service was of good quality. A SLI describes a good service. It is used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.
goal This property is required. float
The fraction of service that must be good in order for this objective to be met. 0 < goal <= 0.999
service
This property is required.
Changes to this property will trigger replacement.
str
ID of the service to which this SLO belongs.


basic_sli SloBasicSliArgs
Basic Service-Level Indicator (SLI) on a well-known service type. Performance will be computed on the basis of pre-defined metrics. SLIs are used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.
calendar_period str
A calendar period, semantically "since the start of the current ". Possible values are: DAY, WEEK, FORTNIGHT, MONTH.
display_name str
Name used for UI elements listing this SLO.
project Changes to this property will trigger replacement. str
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
request_based_sli SloRequestBasedSliArgs
A request-based SLI defines a SLI for which atomic units of service are counted directly. A SLI describes a good service. It is used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.
rolling_period_days int
A rolling time period, semantically "in the past X days". Must be between 1 to 30 days, inclusive.
slo_id Changes to this property will trigger replacement. str
The id to use for this ServiceLevelObjective. If omitted, an id will be generated instead.
user_labels Mapping[str, str]
This field is intended to be used for organizing and identifying the AlertPolicy objects.The field can contain up to 64 entries. Each key and value is limited to 63 Unicode characters or 128 bytes, whichever is smaller. Labels and values can contain only lowercase letters, numerals, underscores, and dashes. Keys must begin with a letter.
windows_based_sli SloWindowsBasedSliArgs
A windows-based SLI defines the criteria for time windows. good_service is defined based off the count of these time windows for which the provided service was of good quality. A SLI describes a good service. It is used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.
goal This property is required. Number
The fraction of service that must be good in order for this objective to be met. 0 < goal <= 0.999
service
This property is required.
Changes to this property will trigger replacement.
String
ID of the service to which this SLO belongs.


basicSli Property Map
Basic Service-Level Indicator (SLI) on a well-known service type. Performance will be computed on the basis of pre-defined metrics. SLIs are used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.
calendarPeriod String
A calendar period, semantically "since the start of the current ". Possible values are: DAY, WEEK, FORTNIGHT, MONTH.
displayName String
Name used for UI elements listing this SLO.
project Changes to this property will trigger replacement. String
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
requestBasedSli Property Map
A request-based SLI defines a SLI for which atomic units of service are counted directly. A SLI describes a good service. It is used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.
rollingPeriodDays Number
A rolling time period, semantically "in the past X days". Must be between 1 to 30 days, inclusive.
sloId Changes to this property will trigger replacement. String
The id to use for this ServiceLevelObjective. If omitted, an id will be generated instead.
userLabels Map<String>
This field is intended to be used for organizing and identifying the AlertPolicy objects.The field can contain up to 64 entries. Each key and value is limited to 63 Unicode characters or 128 bytes, whichever is smaller. Labels and values can contain only lowercase letters, numerals, underscores, and dashes. Keys must begin with a letter.
windowsBasedSli Property Map
A windows-based SLI defines the criteria for time windows. good_service is defined based off the count of these time windows for which the provided service was of good quality. A SLI describes a good service. It is used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.

Outputs

All input properties are implicitly available as output properties. Additionally, the Slo resource produces the following output properties:

Id string
The provider-assigned unique ID for this managed resource.
Name string
The full resource name for this service. The syntax is: projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID]/serviceLevelObjectives/[SLO_NAME]
Id string
The provider-assigned unique ID for this managed resource.
Name string
The full resource name for this service. The syntax is: projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID]/serviceLevelObjectives/[SLO_NAME]
id String
The provider-assigned unique ID for this managed resource.
name String
The full resource name for this service. The syntax is: projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID]/serviceLevelObjectives/[SLO_NAME]
id string
The provider-assigned unique ID for this managed resource.
name string
The full resource name for this service. The syntax is: projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID]/serviceLevelObjectives/[SLO_NAME]
id str
The provider-assigned unique ID for this managed resource.
name str
The full resource name for this service. The syntax is: projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID]/serviceLevelObjectives/[SLO_NAME]
id String
The provider-assigned unique ID for this managed resource.
name String
The full resource name for this service. The syntax is: projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID]/serviceLevelObjectives/[SLO_NAME]

Look up Existing Slo Resource

Get an existing Slo resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

public static get(name: string, id: Input<ID>, state?: SloState, opts?: CustomResourceOptions): Slo
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        basic_sli: Optional[SloBasicSliArgs] = None,
        calendar_period: Optional[str] = None,
        display_name: Optional[str] = None,
        goal: Optional[float] = None,
        name: Optional[str] = None,
        project: Optional[str] = None,
        request_based_sli: Optional[SloRequestBasedSliArgs] = None,
        rolling_period_days: Optional[int] = None,
        service: Optional[str] = None,
        slo_id: Optional[str] = None,
        user_labels: Optional[Mapping[str, str]] = None,
        windows_based_sli: Optional[SloWindowsBasedSliArgs] = None) -> Slo
func GetSlo(ctx *Context, name string, id IDInput, state *SloState, opts ...ResourceOption) (*Slo, error)
public static Slo Get(string name, Input<string> id, SloState? state, CustomResourceOptions? opts = null)
public static Slo get(String name, Output<String> id, SloState state, CustomResourceOptions options)
resources:  _:    type: gcp:monitoring:Slo    get:      id: ${id}
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
resource_name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
The following state arguments are supported:
BasicSli SloBasicSli
Basic Service-Level Indicator (SLI) on a well-known service type. Performance will be computed on the basis of pre-defined metrics. SLIs are used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.
CalendarPeriod string
A calendar period, semantically "since the start of the current ". Possible values are: DAY, WEEK, FORTNIGHT, MONTH.
DisplayName string
Name used for UI elements listing this SLO.
Goal double
The fraction of service that must be good in order for this objective to be met. 0 < goal <= 0.999
Name string
The full resource name for this service. The syntax is: projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID]/serviceLevelObjectives/[SLO_NAME]
Project Changes to this property will trigger replacement. string
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
RequestBasedSli SloRequestBasedSli
A request-based SLI defines a SLI for which atomic units of service are counted directly. A SLI describes a good service. It is used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.
RollingPeriodDays int
A rolling time period, semantically "in the past X days". Must be between 1 to 30 days, inclusive.
Service Changes to this property will trigger replacement. string
ID of the service to which this SLO belongs.


SloId Changes to this property will trigger replacement. string
The id to use for this ServiceLevelObjective. If omitted, an id will be generated instead.
UserLabels Dictionary<string, string>
This field is intended to be used for organizing and identifying the AlertPolicy objects.The field can contain up to 64 entries. Each key and value is limited to 63 Unicode characters or 128 bytes, whichever is smaller. Labels and values can contain only lowercase letters, numerals, underscores, and dashes. Keys must begin with a letter.
WindowsBasedSli SloWindowsBasedSli
A windows-based SLI defines the criteria for time windows. good_service is defined based off the count of these time windows for which the provided service was of good quality. A SLI describes a good service. It is used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.
BasicSli SloBasicSliArgs
Basic Service-Level Indicator (SLI) on a well-known service type. Performance will be computed on the basis of pre-defined metrics. SLIs are used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.
CalendarPeriod string
A calendar period, semantically "since the start of the current ". Possible values are: DAY, WEEK, FORTNIGHT, MONTH.
DisplayName string
Name used for UI elements listing this SLO.
Goal float64
The fraction of service that must be good in order for this objective to be met. 0 < goal <= 0.999
Name string
The full resource name for this service. The syntax is: projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID]/serviceLevelObjectives/[SLO_NAME]
Project Changes to this property will trigger replacement. string
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
RequestBasedSli SloRequestBasedSliArgs
A request-based SLI defines a SLI for which atomic units of service are counted directly. A SLI describes a good service. It is used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.
RollingPeriodDays int
A rolling time period, semantically "in the past X days". Must be between 1 to 30 days, inclusive.
Service Changes to this property will trigger replacement. string
ID of the service to which this SLO belongs.


SloId Changes to this property will trigger replacement. string
The id to use for this ServiceLevelObjective. If omitted, an id will be generated instead.
UserLabels map[string]string
This field is intended to be used for organizing and identifying the AlertPolicy objects.The field can contain up to 64 entries. Each key and value is limited to 63 Unicode characters or 128 bytes, whichever is smaller. Labels and values can contain only lowercase letters, numerals, underscores, and dashes. Keys must begin with a letter.
WindowsBasedSli SloWindowsBasedSliArgs
A windows-based SLI defines the criteria for time windows. good_service is defined based off the count of these time windows for which the provided service was of good quality. A SLI describes a good service. It is used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.
basicSli SloBasicSli
Basic Service-Level Indicator (SLI) on a well-known service type. Performance will be computed on the basis of pre-defined metrics. SLIs are used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.
calendarPeriod String
A calendar period, semantically "since the start of the current ". Possible values are: DAY, WEEK, FORTNIGHT, MONTH.
displayName String
Name used for UI elements listing this SLO.
goal Double
The fraction of service that must be good in order for this objective to be met. 0 < goal <= 0.999
name String
The full resource name for this service. The syntax is: projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID]/serviceLevelObjectives/[SLO_NAME]
project Changes to this property will trigger replacement. String
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
requestBasedSli SloRequestBasedSli
A request-based SLI defines a SLI for which atomic units of service are counted directly. A SLI describes a good service. It is used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.
rollingPeriodDays Integer
A rolling time period, semantically "in the past X days". Must be between 1 to 30 days, inclusive.
service Changes to this property will trigger replacement. String
ID of the service to which this SLO belongs.


sloId Changes to this property will trigger replacement. String
The id to use for this ServiceLevelObjective. If omitted, an id will be generated instead.
userLabels Map<String,String>
This field is intended to be used for organizing and identifying the AlertPolicy objects.The field can contain up to 64 entries. Each key and value is limited to 63 Unicode characters or 128 bytes, whichever is smaller. Labels and values can contain only lowercase letters, numerals, underscores, and dashes. Keys must begin with a letter.
windowsBasedSli SloWindowsBasedSli
A windows-based SLI defines the criteria for time windows. good_service is defined based off the count of these time windows for which the provided service was of good quality. A SLI describes a good service. It is used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.
basicSli SloBasicSli
Basic Service-Level Indicator (SLI) on a well-known service type. Performance will be computed on the basis of pre-defined metrics. SLIs are used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.
calendarPeriod string
A calendar period, semantically "since the start of the current ". Possible values are: DAY, WEEK, FORTNIGHT, MONTH.
displayName string
Name used for UI elements listing this SLO.
goal number
The fraction of service that must be good in order for this objective to be met. 0 < goal <= 0.999
name string
The full resource name for this service. The syntax is: projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID]/serviceLevelObjectives/[SLO_NAME]
project Changes to this property will trigger replacement. string
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
requestBasedSli SloRequestBasedSli
A request-based SLI defines a SLI for which atomic units of service are counted directly. A SLI describes a good service. It is used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.
rollingPeriodDays number
A rolling time period, semantically "in the past X days". Must be between 1 to 30 days, inclusive.
service Changes to this property will trigger replacement. string
ID of the service to which this SLO belongs.


sloId Changes to this property will trigger replacement. string
The id to use for this ServiceLevelObjective. If omitted, an id will be generated instead.
userLabels {[key: string]: string}
This field is intended to be used for organizing and identifying the AlertPolicy objects.The field can contain up to 64 entries. Each key and value is limited to 63 Unicode characters or 128 bytes, whichever is smaller. Labels and values can contain only lowercase letters, numerals, underscores, and dashes. Keys must begin with a letter.
windowsBasedSli SloWindowsBasedSli
A windows-based SLI defines the criteria for time windows. good_service is defined based off the count of these time windows for which the provided service was of good quality. A SLI describes a good service. It is used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.
basic_sli SloBasicSliArgs
Basic Service-Level Indicator (SLI) on a well-known service type. Performance will be computed on the basis of pre-defined metrics. SLIs are used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.
calendar_period str
A calendar period, semantically "since the start of the current ". Possible values are: DAY, WEEK, FORTNIGHT, MONTH.
display_name str
Name used for UI elements listing this SLO.
goal float
The fraction of service that must be good in order for this objective to be met. 0 < goal <= 0.999
name str
The full resource name for this service. The syntax is: projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID]/serviceLevelObjectives/[SLO_NAME]
project Changes to this property will trigger replacement. str
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
request_based_sli SloRequestBasedSliArgs
A request-based SLI defines a SLI for which atomic units of service are counted directly. A SLI describes a good service. It is used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.
rolling_period_days int
A rolling time period, semantically "in the past X days". Must be between 1 to 30 days, inclusive.
service Changes to this property will trigger replacement. str
ID of the service to which this SLO belongs.


slo_id Changes to this property will trigger replacement. str
The id to use for this ServiceLevelObjective. If omitted, an id will be generated instead.
user_labels Mapping[str, str]
This field is intended to be used for organizing and identifying the AlertPolicy objects.The field can contain up to 64 entries. Each key and value is limited to 63 Unicode characters or 128 bytes, whichever is smaller. Labels and values can contain only lowercase letters, numerals, underscores, and dashes. Keys must begin with a letter.
windows_based_sli SloWindowsBasedSliArgs
A windows-based SLI defines the criteria for time windows. good_service is defined based off the count of these time windows for which the provided service was of good quality. A SLI describes a good service. It is used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.
basicSli Property Map
Basic Service-Level Indicator (SLI) on a well-known service type. Performance will be computed on the basis of pre-defined metrics. SLIs are used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.
calendarPeriod String
A calendar period, semantically "since the start of the current ". Possible values are: DAY, WEEK, FORTNIGHT, MONTH.
displayName String
Name used for UI elements listing this SLO.
goal Number
The fraction of service that must be good in order for this objective to be met. 0 < goal <= 0.999
name String
The full resource name for this service. The syntax is: projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID]/serviceLevelObjectives/[SLO_NAME]
project Changes to this property will trigger replacement. String
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
requestBasedSli Property Map
A request-based SLI defines a SLI for which atomic units of service are counted directly. A SLI describes a good service. It is used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.
rollingPeriodDays Number
A rolling time period, semantically "in the past X days". Must be between 1 to 30 days, inclusive.
service Changes to this property will trigger replacement. String
ID of the service to which this SLO belongs.


sloId Changes to this property will trigger replacement. String
The id to use for this ServiceLevelObjective. If omitted, an id will be generated instead.
userLabels Map<String>
This field is intended to be used for organizing and identifying the AlertPolicy objects.The field can contain up to 64 entries. Each key and value is limited to 63 Unicode characters or 128 bytes, whichever is smaller. Labels and values can contain only lowercase letters, numerals, underscores, and dashes. Keys must begin with a letter.
windowsBasedSli Property Map
A windows-based SLI defines the criteria for time windows. good_service is defined based off the count of these time windows for which the provided service was of good quality. A SLI describes a good service. It is used to measure and calculate the quality of the Service's performance with respect to a single aspect of service quality. Exactly one of the following must be set: basic_sli, request_based_sli, windows_based_sli Structure is documented below.

Supporting Types

SloBasicSli
, SloBasicSliArgs

Availability SloBasicSliAvailability
Availability based SLI, dervied from count of requests made to this service that return successfully. Structure is documented below.
Latency SloBasicSliLatency
Parameters for a latency threshold SLI. Structure is documented below.
Locations List<string>
An optional 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.
Methods List<string>
An optional 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.
Versions List<string>
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.
Availability SloBasicSliAvailability
Availability based SLI, dervied from count of requests made to this service that return successfully. Structure is documented below.
Latency SloBasicSliLatency
Parameters for a latency threshold SLI. Structure is documented below.
Locations []string
An optional 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.
Methods []string
An optional 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.
Versions []string
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.
availability SloBasicSliAvailability
Availability based SLI, dervied from count of requests made to this service that return successfully. Structure is documented below.
latency SloBasicSliLatency
Parameters for a latency threshold SLI. Structure is documented below.
locations List<String>
An optional 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.
methods List<String>
An optional 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.
versions List<String>
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.
availability SloBasicSliAvailability
Availability based SLI, dervied from count of requests made to this service that return successfully. Structure is documented below.
latency SloBasicSliLatency
Parameters for a latency threshold SLI. Structure is documented below.
locations string[]
An optional 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.
methods string[]
An optional 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.
versions string[]
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.
availability SloBasicSliAvailability
Availability based SLI, dervied from count of requests made to this service that return successfully. Structure is documented below.
latency SloBasicSliLatency
Parameters for a latency threshold SLI. Structure is documented below.
locations Sequence[str]
An optional 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.
methods Sequence[str]
An optional 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.
versions Sequence[str]
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.
availability Property Map
Availability based SLI, dervied from count of requests made to this service that return successfully. Structure is documented below.
latency Property Map
Parameters for a latency threshold SLI. Structure is documented below.
locations List<String>
An optional 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.
methods List<String>
An optional 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.
versions List<String>
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.

SloBasicSliAvailability
, SloBasicSliAvailabilityArgs

Enabled bool
Whether an availability SLI is enabled or not. Must be set to true. Defaults to true`.
Enabled bool
Whether an availability SLI is enabled or not. Must be set to true. Defaults to true`.
enabled Boolean
Whether an availability SLI is enabled or not. Must be set to true. Defaults to true`.
enabled boolean
Whether an availability SLI is enabled or not. Must be set to true. Defaults to true`.
enabled bool
Whether an availability SLI is enabled or not. Must be set to true. Defaults to true`.
enabled Boolean
Whether an availability SLI is enabled or not. Must be set to true. Defaults to true`.

SloBasicSliLatency
, SloBasicSliLatencyArgs

Threshold This property is required. string
A duration string, e.g. 10s. Good service is defined to be the count of requests made to this service that return in no more than threshold.
Threshold This property is required. string
A duration string, e.g. 10s. Good service is defined to be the count of requests made to this service that return in no more than threshold.
threshold This property is required. String
A duration string, e.g. 10s. Good service is defined to be the count of requests made to this service that return in no more than threshold.
threshold This property is required. string
A duration string, e.g. 10s. Good service is defined to be the count of requests made to this service that return in no more than threshold.
threshold This property is required. str
A duration string, e.g. 10s. Good service is defined to be the count of requests made to this service that return in no more than threshold.
threshold This property is required. String
A duration string, e.g. 10s. Good service is defined to be the count of requests made to this service that return in no more than threshold.

SloRequestBasedSli
, SloRequestBasedSliArgs

DistributionCut SloRequestBasedSliDistributionCut
Used when good_service is defined by 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. Defines a distribution TimeSeries filter and thresholds used for measuring good service and total service. Exactly one of distribution_cut or good_total_ratio can be set. Structure is documented below.
GoodTotalRatio SloRequestBasedSliGoodTotalRatio
A means to compute a ratio of good_service to total_service. Defines computing this ratio with two TimeSeries monitoring filters Must specify exactly two of good, bad, and total service filters. The relationship good_service + bad_service = total_service will be assumed. Exactly one of distribution_cut or good_total_ratio can be set. Structure is documented below.
DistributionCut SloRequestBasedSliDistributionCut
Used when good_service is defined by 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. Defines a distribution TimeSeries filter and thresholds used for measuring good service and total service. Exactly one of distribution_cut or good_total_ratio can be set. Structure is documented below.
GoodTotalRatio SloRequestBasedSliGoodTotalRatio
A means to compute a ratio of good_service to total_service. Defines computing this ratio with two TimeSeries monitoring filters Must specify exactly two of good, bad, and total service filters. The relationship good_service + bad_service = total_service will be assumed. Exactly one of distribution_cut or good_total_ratio can be set. Structure is documented below.
distributionCut SloRequestBasedSliDistributionCut
Used when good_service is defined by 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. Defines a distribution TimeSeries filter and thresholds used for measuring good service and total service. Exactly one of distribution_cut or good_total_ratio can be set. Structure is documented below.
goodTotalRatio SloRequestBasedSliGoodTotalRatio
A means to compute a ratio of good_service to total_service. Defines computing this ratio with two TimeSeries monitoring filters Must specify exactly two of good, bad, and total service filters. The relationship good_service + bad_service = total_service will be assumed. Exactly one of distribution_cut or good_total_ratio can be set. Structure is documented below.
distributionCut SloRequestBasedSliDistributionCut
Used when good_service is defined by 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. Defines a distribution TimeSeries filter and thresholds used for measuring good service and total service. Exactly one of distribution_cut or good_total_ratio can be set. Structure is documented below.
goodTotalRatio SloRequestBasedSliGoodTotalRatio
A means to compute a ratio of good_service to total_service. Defines computing this ratio with two TimeSeries monitoring filters Must specify exactly two of good, bad, and total service filters. The relationship good_service + bad_service = total_service will be assumed. Exactly one of distribution_cut or good_total_ratio can be set. Structure is documented below.
distribution_cut SloRequestBasedSliDistributionCut
Used when good_service is defined by 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. Defines a distribution TimeSeries filter and thresholds used for measuring good service and total service. Exactly one of distribution_cut or good_total_ratio can be set. Structure is documented below.
good_total_ratio SloRequestBasedSliGoodTotalRatio
A means to compute a ratio of good_service to total_service. Defines computing this ratio with two TimeSeries monitoring filters Must specify exactly two of good, bad, and total service filters. The relationship good_service + bad_service = total_service will be assumed. Exactly one of distribution_cut or good_total_ratio can be set. Structure is documented below.
distributionCut Property Map
Used when good_service is defined by 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. Defines a distribution TimeSeries filter and thresholds used for measuring good service and total service. Exactly one of distribution_cut or good_total_ratio can be set. Structure is documented below.
goodTotalRatio Property Map
A means to compute a ratio of good_service to total_service. Defines computing this ratio with two TimeSeries monitoring filters Must specify exactly two of good, bad, and total service filters. The relationship good_service + bad_service = total_service will be assumed. Exactly one of distribution_cut or good_total_ratio can be set. Structure is documented below.

SloRequestBasedSliDistributionCut
, SloRequestBasedSliDistributionCutArgs

DistributionFilter This property is required. string
A TimeSeries monitoring filter aggregating values to quantify the good service provided. Must have ValueType = DISTRIBUTION and MetricKind = DELTA or MetricKind = CUMULATIVE.
Range This property is required. SloRequestBasedSliDistributionCutRange
Range of numerical values. The computed good_service will be the count of values x in the Distribution such that range.min <= x <= range.max. inclusive of min and max. Open ranges can be defined by setting just one of min or max. Structure is documented below.
DistributionFilter This property is required. string
A TimeSeries monitoring filter aggregating values to quantify the good service provided. Must have ValueType = DISTRIBUTION and MetricKind = DELTA or MetricKind = CUMULATIVE.
Range This property is required. SloRequestBasedSliDistributionCutRange
Range of numerical values. The computed good_service will be the count of values x in the Distribution such that range.min <= x <= range.max. inclusive of min and max. Open ranges can be defined by setting just one of min or max. Structure is documented below.
distributionFilter This property is required. String
A TimeSeries monitoring filter aggregating values to quantify the good service provided. Must have ValueType = DISTRIBUTION and MetricKind = DELTA or MetricKind = CUMULATIVE.
range This property is required. SloRequestBasedSliDistributionCutRange
Range of numerical values. The computed good_service will be the count of values x in the Distribution such that range.min <= x <= range.max. inclusive of min and max. Open ranges can be defined by setting just one of min or max. Structure is documented below.
distributionFilter This property is required. string
A TimeSeries monitoring filter aggregating values to quantify the good service provided. Must have ValueType = DISTRIBUTION and MetricKind = DELTA or MetricKind = CUMULATIVE.
range This property is required. SloRequestBasedSliDistributionCutRange
Range of numerical values. The computed good_service will be the count of values x in the Distribution such that range.min <= x <= range.max. inclusive of min and max. Open ranges can be defined by setting just one of min or max. Structure is documented below.
distribution_filter This property is required. str
A TimeSeries monitoring filter aggregating values to quantify the good service provided. Must have ValueType = DISTRIBUTION and MetricKind = DELTA or MetricKind = CUMULATIVE.
range This property is required. SloRequestBasedSliDistributionCutRange
Range of numerical values. The computed good_service will be the count of values x in the Distribution such that range.min <= x <= range.max. inclusive of min and max. Open ranges can be defined by setting just one of min or max. Structure is documented below.
distributionFilter This property is required. String
A TimeSeries monitoring filter aggregating values to quantify the good service provided. Must have ValueType = DISTRIBUTION and MetricKind = DELTA or MetricKind = CUMULATIVE.
range This property is required. Property Map
Range of numerical values. The computed good_service will be the count of values x in the Distribution such that range.min <= x <= range.max. inclusive of min and max. Open ranges can be defined by setting just one of min or max. Structure is documented below.

SloRequestBasedSliDistributionCutRange
, SloRequestBasedSliDistributionCutRangeArgs

Max double
max value for the range (inclusive). If not given, will be set to "infinity", defining an open range ">= range.min"
Min double
Min value for the range (inclusive). If not given, will be set to "-infinity", defining an open range "< range.max"
Max float64
max value for the range (inclusive). If not given, will be set to "infinity", defining an open range ">= range.min"
Min float64
Min value for the range (inclusive). If not given, will be set to "-infinity", defining an open range "< range.max"
max Double
max value for the range (inclusive). If not given, will be set to "infinity", defining an open range ">= range.min"
min Double
Min value for the range (inclusive). If not given, will be set to "-infinity", defining an open range "< range.max"
max number
max value for the range (inclusive). If not given, will be set to "infinity", defining an open range ">= range.min"
min number
Min value for the range (inclusive). If not given, will be set to "-infinity", defining an open range "< range.max"
max float
max value for the range (inclusive). If not given, will be set to "infinity", defining an open range ">= range.min"
min float
Min value for the range (inclusive). If not given, will be set to "-infinity", defining an open range "< range.max"
max Number
max value for the range (inclusive). If not given, will be set to "infinity", defining an open range ">= range.min"
min Number
Min value for the range (inclusive). If not given, will be set to "-infinity", defining an open range "< range.max"

SloRequestBasedSliGoodTotalRatio
, SloRequestBasedSliGoodTotalRatioArgs

BadServiceFilter string
A TimeSeries monitoring filter quantifying bad service provided, either demanded service that was not provided or demanded service that was of inadequate quality. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.
GoodServiceFilter string
A TimeSeries monitoring filter quantifying good service provided. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.
TotalServiceFilter string
A TimeSeries monitoring filter quantifying total demanded service. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.
BadServiceFilter string
A TimeSeries monitoring filter quantifying bad service provided, either demanded service that was not provided or demanded service that was of inadequate quality. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.
GoodServiceFilter string
A TimeSeries monitoring filter quantifying good service provided. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.
TotalServiceFilter string
A TimeSeries monitoring filter quantifying total demanded service. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.
badServiceFilter String
A TimeSeries monitoring filter quantifying bad service provided, either demanded service that was not provided or demanded service that was of inadequate quality. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.
goodServiceFilter String
A TimeSeries monitoring filter quantifying good service provided. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.
totalServiceFilter String
A TimeSeries monitoring filter quantifying total demanded service. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.
badServiceFilter string
A TimeSeries monitoring filter quantifying bad service provided, either demanded service that was not provided or demanded service that was of inadequate quality. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.
goodServiceFilter string
A TimeSeries monitoring filter quantifying good service provided. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.
totalServiceFilter string
A TimeSeries monitoring filter quantifying total demanded service. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.
bad_service_filter str
A TimeSeries monitoring filter quantifying bad service provided, either demanded service that was not provided or demanded service that was of inadequate quality. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.
good_service_filter str
A TimeSeries monitoring filter quantifying good service provided. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.
total_service_filter str
A TimeSeries monitoring filter quantifying total demanded service. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.
badServiceFilter String
A TimeSeries monitoring filter quantifying bad service provided, either demanded service that was not provided or demanded service that was of inadequate quality. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.
goodServiceFilter String
A TimeSeries monitoring filter quantifying good service provided. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.
totalServiceFilter String
A TimeSeries monitoring filter quantifying total demanded service. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.

SloWindowsBasedSli
, SloWindowsBasedSliArgs

GoodBadMetricFilter string
A TimeSeries monitoring filter with ValueType = BOOL. The window is good if any true values appear in the window. One of good_bad_metric_filter, good_total_ratio_threshold, metric_mean_in_range, metric_sum_in_range must be set for windows_based_sli.
GoodTotalRatioThreshold SloWindowsBasedSliGoodTotalRatioThreshold
Criterion that describes a window as good if its performance is high enough. One of good_bad_metric_filter, good_total_ratio_threshold, metric_mean_in_range, metric_sum_in_range must be set for windows_based_sli. Structure is documented below.
MetricMeanInRange SloWindowsBasedSliMetricMeanInRange
Criterion that describes a window as good if the metric's value is in a good range, averaged across returned streams. One of good_bad_metric_filter, good_total_ratio_threshold, metric_mean_in_range, metric_sum_in_range must be set for windows_based_sli. Average value X of time_series should satisfy range.min <= X <= range.max for a good window. Structure is documented below.
MetricSumInRange SloWindowsBasedSliMetricSumInRange
Criterion that describes a window as good if the metric's value is in a good range, summed across returned streams. Summed value X of time_series should satisfy range.min <= X <= range.max for a good window. One of good_bad_metric_filter, good_total_ratio_threshold, metric_mean_in_range, metric_sum_in_range must be set for windows_based_sli. Structure is documented below.
WindowPeriod string
Duration over which window quality is evaluated, given as a duration string "{X}s" representing X seconds. Must be an integer fraction of a day and at least 60s.
GoodBadMetricFilter string
A TimeSeries monitoring filter with ValueType = BOOL. The window is good if any true values appear in the window. One of good_bad_metric_filter, good_total_ratio_threshold, metric_mean_in_range, metric_sum_in_range must be set for windows_based_sli.
GoodTotalRatioThreshold SloWindowsBasedSliGoodTotalRatioThreshold
Criterion that describes a window as good if its performance is high enough. One of good_bad_metric_filter, good_total_ratio_threshold, metric_mean_in_range, metric_sum_in_range must be set for windows_based_sli. Structure is documented below.
MetricMeanInRange SloWindowsBasedSliMetricMeanInRange
Criterion that describes a window as good if the metric's value is in a good range, averaged across returned streams. One of good_bad_metric_filter, good_total_ratio_threshold, metric_mean_in_range, metric_sum_in_range must be set for windows_based_sli. Average value X of time_series should satisfy range.min <= X <= range.max for a good window. Structure is documented below.
MetricSumInRange SloWindowsBasedSliMetricSumInRange
Criterion that describes a window as good if the metric's value is in a good range, summed across returned streams. Summed value X of time_series should satisfy range.min <= X <= range.max for a good window. One of good_bad_metric_filter, good_total_ratio_threshold, metric_mean_in_range, metric_sum_in_range must be set for windows_based_sli. Structure is documented below.
WindowPeriod string
Duration over which window quality is evaluated, given as a duration string "{X}s" representing X seconds. Must be an integer fraction of a day and at least 60s.
goodBadMetricFilter String
A TimeSeries monitoring filter with ValueType = BOOL. The window is good if any true values appear in the window. One of good_bad_metric_filter, good_total_ratio_threshold, metric_mean_in_range, metric_sum_in_range must be set for windows_based_sli.
goodTotalRatioThreshold SloWindowsBasedSliGoodTotalRatioThreshold
Criterion that describes a window as good if its performance is high enough. One of good_bad_metric_filter, good_total_ratio_threshold, metric_mean_in_range, metric_sum_in_range must be set for windows_based_sli. Structure is documented below.
metricMeanInRange SloWindowsBasedSliMetricMeanInRange
Criterion that describes a window as good if the metric's value is in a good range, averaged across returned streams. One of good_bad_metric_filter, good_total_ratio_threshold, metric_mean_in_range, metric_sum_in_range must be set for windows_based_sli. Average value X of time_series should satisfy range.min <= X <= range.max for a good window. Structure is documented below.
metricSumInRange SloWindowsBasedSliMetricSumInRange
Criterion that describes a window as good if the metric's value is in a good range, summed across returned streams. Summed value X of time_series should satisfy range.min <= X <= range.max for a good window. One of good_bad_metric_filter, good_total_ratio_threshold, metric_mean_in_range, metric_sum_in_range must be set for windows_based_sli. Structure is documented below.
windowPeriod String
Duration over which window quality is evaluated, given as a duration string "{X}s" representing X seconds. Must be an integer fraction of a day and at least 60s.
goodBadMetricFilter string
A TimeSeries monitoring filter with ValueType = BOOL. The window is good if any true values appear in the window. One of good_bad_metric_filter, good_total_ratio_threshold, metric_mean_in_range, metric_sum_in_range must be set for windows_based_sli.
goodTotalRatioThreshold SloWindowsBasedSliGoodTotalRatioThreshold
Criterion that describes a window as good if its performance is high enough. One of good_bad_metric_filter, good_total_ratio_threshold, metric_mean_in_range, metric_sum_in_range must be set for windows_based_sli. Structure is documented below.
metricMeanInRange SloWindowsBasedSliMetricMeanInRange
Criterion that describes a window as good if the metric's value is in a good range, averaged across returned streams. One of good_bad_metric_filter, good_total_ratio_threshold, metric_mean_in_range, metric_sum_in_range must be set for windows_based_sli. Average value X of time_series should satisfy range.min <= X <= range.max for a good window. Structure is documented below.
metricSumInRange SloWindowsBasedSliMetricSumInRange
Criterion that describes a window as good if the metric's value is in a good range, summed across returned streams. Summed value X of time_series should satisfy range.min <= X <= range.max for a good window. One of good_bad_metric_filter, good_total_ratio_threshold, metric_mean_in_range, metric_sum_in_range must be set for windows_based_sli. Structure is documented below.
windowPeriod string
Duration over which window quality is evaluated, given as a duration string "{X}s" representing X seconds. Must be an integer fraction of a day and at least 60s.
good_bad_metric_filter str
A TimeSeries monitoring filter with ValueType = BOOL. The window is good if any true values appear in the window. One of good_bad_metric_filter, good_total_ratio_threshold, metric_mean_in_range, metric_sum_in_range must be set for windows_based_sli.
good_total_ratio_threshold SloWindowsBasedSliGoodTotalRatioThreshold
Criterion that describes a window as good if its performance is high enough. One of good_bad_metric_filter, good_total_ratio_threshold, metric_mean_in_range, metric_sum_in_range must be set for windows_based_sli. Structure is documented below.
metric_mean_in_range SloWindowsBasedSliMetricMeanInRange
Criterion that describes a window as good if the metric's value is in a good range, averaged across returned streams. One of good_bad_metric_filter, good_total_ratio_threshold, metric_mean_in_range, metric_sum_in_range must be set for windows_based_sli. Average value X of time_series should satisfy range.min <= X <= range.max for a good window. Structure is documented below.
metric_sum_in_range SloWindowsBasedSliMetricSumInRange
Criterion that describes a window as good if the metric's value is in a good range, summed across returned streams. Summed value X of time_series should satisfy range.min <= X <= range.max for a good window. One of good_bad_metric_filter, good_total_ratio_threshold, metric_mean_in_range, metric_sum_in_range must be set for windows_based_sli. Structure is documented below.
window_period str
Duration over which window quality is evaluated, given as a duration string "{X}s" representing X seconds. Must be an integer fraction of a day and at least 60s.
goodBadMetricFilter String
A TimeSeries monitoring filter with ValueType = BOOL. The window is good if any true values appear in the window. One of good_bad_metric_filter, good_total_ratio_threshold, metric_mean_in_range, metric_sum_in_range must be set for windows_based_sli.
goodTotalRatioThreshold Property Map
Criterion that describes a window as good if its performance is high enough. One of good_bad_metric_filter, good_total_ratio_threshold, metric_mean_in_range, metric_sum_in_range must be set for windows_based_sli. Structure is documented below.
metricMeanInRange Property Map
Criterion that describes a window as good if the metric's value is in a good range, averaged across returned streams. One of good_bad_metric_filter, good_total_ratio_threshold, metric_mean_in_range, metric_sum_in_range must be set for windows_based_sli. Average value X of time_series should satisfy range.min <= X <= range.max for a good window. Structure is documented below.
metricSumInRange Property Map
Criterion that describes a window as good if the metric's value is in a good range, summed across returned streams. Summed value X of time_series should satisfy range.min <= X <= range.max for a good window. One of good_bad_metric_filter, good_total_ratio_threshold, metric_mean_in_range, metric_sum_in_range must be set for windows_based_sli. Structure is documented below.
windowPeriod String
Duration over which window quality is evaluated, given as a duration string "{X}s" representing X seconds. Must be an integer fraction of a day and at least 60s.

SloWindowsBasedSliGoodTotalRatioThreshold
, SloWindowsBasedSliGoodTotalRatioThresholdArgs

BasicSliPerformance SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformance
Basic SLI to evaluate to judge window quality. Structure is documented below.
Performance SloWindowsBasedSliGoodTotalRatioThresholdPerformance
Request-based SLI to evaluate to judge window quality. Structure is documented below.
Threshold double
If window performance >= threshold, the window is counted as good.
BasicSliPerformance SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformance
Basic SLI to evaluate to judge window quality. Structure is documented below.
Performance SloWindowsBasedSliGoodTotalRatioThresholdPerformance
Request-based SLI to evaluate to judge window quality. Structure is documented below.
Threshold float64
If window performance >= threshold, the window is counted as good.
basicSliPerformance SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformance
Basic SLI to evaluate to judge window quality. Structure is documented below.
performance SloWindowsBasedSliGoodTotalRatioThresholdPerformance
Request-based SLI to evaluate to judge window quality. Structure is documented below.
threshold Double
If window performance >= threshold, the window is counted as good.
basicSliPerformance SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformance
Basic SLI to evaluate to judge window quality. Structure is documented below.
performance SloWindowsBasedSliGoodTotalRatioThresholdPerformance
Request-based SLI to evaluate to judge window quality. Structure is documented below.
threshold number
If window performance >= threshold, the window is counted as good.
basic_sli_performance SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformance
Basic SLI to evaluate to judge window quality. Structure is documented below.
performance SloWindowsBasedSliGoodTotalRatioThresholdPerformance
Request-based SLI to evaluate to judge window quality. Structure is documented below.
threshold float
If window performance >= threshold, the window is counted as good.
basicSliPerformance Property Map
Basic SLI to evaluate to judge window quality. Structure is documented below.
performance Property Map
Request-based SLI to evaluate to judge window quality. Structure is documented below.
threshold Number
If window performance >= threshold, the window is counted as good.

SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformance
, SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformanceArgs

Availability SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformanceAvailability
Availability based SLI, dervied from count of requests made to this service that return successfully. Structure is documented below.
Latency SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformanceLatency
Parameters for a latency threshold SLI. Structure is documented below.
Locations List<string>
An optional 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.
Methods List<string>
An optional 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.
Versions List<string>
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.
Availability SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformanceAvailability
Availability based SLI, dervied from count of requests made to this service that return successfully. Structure is documented below.
Latency SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformanceLatency
Parameters for a latency threshold SLI. Structure is documented below.
Locations []string
An optional 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.
Methods []string
An optional 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.
Versions []string
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.
availability SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformanceAvailability
Availability based SLI, dervied from count of requests made to this service that return successfully. Structure is documented below.
latency SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformanceLatency
Parameters for a latency threshold SLI. Structure is documented below.
locations List<String>
An optional 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.
methods List<String>
An optional 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.
versions List<String>
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.
availability SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformanceAvailability
Availability based SLI, dervied from count of requests made to this service that return successfully. Structure is documented below.
latency SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformanceLatency
Parameters for a latency threshold SLI. Structure is documented below.
locations string[]
An optional 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.
methods string[]
An optional 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.
versions string[]
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.
availability SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformanceAvailability
Availability based SLI, dervied from count of requests made to this service that return successfully. Structure is documented below.
latency SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformanceLatency
Parameters for a latency threshold SLI. Structure is documented below.
locations Sequence[str]
An optional 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.
methods Sequence[str]
An optional 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.
versions Sequence[str]
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.
availability Property Map
Availability based SLI, dervied from count of requests made to this service that return successfully. Structure is documented below.
latency Property Map
Parameters for a latency threshold SLI. Structure is documented below.
locations List<String>
An optional 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.
methods List<String>
An optional 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.
versions List<String>
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.

SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformanceAvailability
, SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformanceAvailabilityArgs

Enabled bool
Whether an availability SLI is enabled or not. Must be set to true. Defaults to true`.
Enabled bool
Whether an availability SLI is enabled or not. Must be set to true. Defaults to true`.
enabled Boolean
Whether an availability SLI is enabled or not. Must be set to true. Defaults to true`.
enabled boolean
Whether an availability SLI is enabled or not. Must be set to true. Defaults to true`.
enabled bool
Whether an availability SLI is enabled or not. Must be set to true. Defaults to true`.
enabled Boolean
Whether an availability SLI is enabled or not. Must be set to true. Defaults to true`.

SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformanceLatency
, SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformanceLatencyArgs

Threshold This property is required. string
A duration string, e.g. 10s. Good service is defined to be the count of requests made to this service that return in no more than threshold.
Threshold This property is required. string
A duration string, e.g. 10s. Good service is defined to be the count of requests made to this service that return in no more than threshold.
threshold This property is required. String
A duration string, e.g. 10s. Good service is defined to be the count of requests made to this service that return in no more than threshold.
threshold This property is required. string
A duration string, e.g. 10s. Good service is defined to be the count of requests made to this service that return in no more than threshold.
threshold This property is required. str
A duration string, e.g. 10s. Good service is defined to be the count of requests made to this service that return in no more than threshold.
threshold This property is required. String
A duration string, e.g. 10s. Good service is defined to be the count of requests made to this service that return in no more than threshold.

SloWindowsBasedSliGoodTotalRatioThresholdPerformance
, SloWindowsBasedSliGoodTotalRatioThresholdPerformanceArgs

DistributionCut SloWindowsBasedSliGoodTotalRatioThresholdPerformanceDistributionCut
Used when good_service is defined by 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. Defines a distribution TimeSeries filter and thresholds used for measuring good service and total service. Structure is documented below.
GoodTotalRatio SloWindowsBasedSliGoodTotalRatioThresholdPerformanceGoodTotalRatio
A means to compute a ratio of good_service to total_service. Defines computing this ratio with two TimeSeries monitoring filters Must specify exactly two of good, bad, and total service filters. The relationship good_service + bad_service = total_service will be assumed. Structure is documented below.
DistributionCut SloWindowsBasedSliGoodTotalRatioThresholdPerformanceDistributionCut
Used when good_service is defined by 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. Defines a distribution TimeSeries filter and thresholds used for measuring good service and total service. Structure is documented below.
GoodTotalRatio SloWindowsBasedSliGoodTotalRatioThresholdPerformanceGoodTotalRatio
A means to compute a ratio of good_service to total_service. Defines computing this ratio with two TimeSeries monitoring filters Must specify exactly two of good, bad, and total service filters. The relationship good_service + bad_service = total_service will be assumed. Structure is documented below.
distributionCut SloWindowsBasedSliGoodTotalRatioThresholdPerformanceDistributionCut
Used when good_service is defined by 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. Defines a distribution TimeSeries filter and thresholds used for measuring good service and total service. Structure is documented below.
goodTotalRatio SloWindowsBasedSliGoodTotalRatioThresholdPerformanceGoodTotalRatio
A means to compute a ratio of good_service to total_service. Defines computing this ratio with two TimeSeries monitoring filters Must specify exactly two of good, bad, and total service filters. The relationship good_service + bad_service = total_service will be assumed. Structure is documented below.
distributionCut SloWindowsBasedSliGoodTotalRatioThresholdPerformanceDistributionCut
Used when good_service is defined by 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. Defines a distribution TimeSeries filter and thresholds used for measuring good service and total service. Structure is documented below.
goodTotalRatio SloWindowsBasedSliGoodTotalRatioThresholdPerformanceGoodTotalRatio
A means to compute a ratio of good_service to total_service. Defines computing this ratio with two TimeSeries monitoring filters Must specify exactly two of good, bad, and total service filters. The relationship good_service + bad_service = total_service will be assumed. Structure is documented below.
distribution_cut SloWindowsBasedSliGoodTotalRatioThresholdPerformanceDistributionCut
Used when good_service is defined by 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. Defines a distribution TimeSeries filter and thresholds used for measuring good service and total service. Structure is documented below.
good_total_ratio SloWindowsBasedSliGoodTotalRatioThresholdPerformanceGoodTotalRatio
A means to compute a ratio of good_service to total_service. Defines computing this ratio with two TimeSeries monitoring filters Must specify exactly two of good, bad, and total service filters. The relationship good_service + bad_service = total_service will be assumed. Structure is documented below.
distributionCut Property Map
Used when good_service is defined by 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. Defines a distribution TimeSeries filter and thresholds used for measuring good service and total service. Structure is documented below.
goodTotalRatio Property Map
A means to compute a ratio of good_service to total_service. Defines computing this ratio with two TimeSeries monitoring filters Must specify exactly two of good, bad, and total service filters. The relationship good_service + bad_service = total_service will be assumed. Structure is documented below.

SloWindowsBasedSliGoodTotalRatioThresholdPerformanceDistributionCut
, SloWindowsBasedSliGoodTotalRatioThresholdPerformanceDistributionCutArgs

DistributionFilter This property is required. string
A TimeSeries monitoring filter aggregating values to quantify the good service provided. Must have ValueType = DISTRIBUTION and MetricKind = DELTA or MetricKind = CUMULATIVE.
Range This property is required. SloWindowsBasedSliGoodTotalRatioThresholdPerformanceDistributionCutRange
Range of numerical values. The computed good_service will be the count of values x in the Distribution such that range.min <= x <= range.max. inclusive of min and max. Open ranges can be defined by setting just one of min or max. Structure is documented below.
DistributionFilter This property is required. string
A TimeSeries monitoring filter aggregating values to quantify the good service provided. Must have ValueType = DISTRIBUTION and MetricKind = DELTA or MetricKind = CUMULATIVE.
Range This property is required. SloWindowsBasedSliGoodTotalRatioThresholdPerformanceDistributionCutRange
Range of numerical values. The computed good_service will be the count of values x in the Distribution such that range.min <= x <= range.max. inclusive of min and max. Open ranges can be defined by setting just one of min or max. Structure is documented below.
distributionFilter This property is required. String
A TimeSeries monitoring filter aggregating values to quantify the good service provided. Must have ValueType = DISTRIBUTION and MetricKind = DELTA or MetricKind = CUMULATIVE.
range This property is required. SloWindowsBasedSliGoodTotalRatioThresholdPerformanceDistributionCutRange
Range of numerical values. The computed good_service will be the count of values x in the Distribution such that range.min <= x <= range.max. inclusive of min and max. Open ranges can be defined by setting just one of min or max. Structure is documented below.
distributionFilter This property is required. string
A TimeSeries monitoring filter aggregating values to quantify the good service provided. Must have ValueType = DISTRIBUTION and MetricKind = DELTA or MetricKind = CUMULATIVE.
range This property is required. SloWindowsBasedSliGoodTotalRatioThresholdPerformanceDistributionCutRange
Range of numerical values. The computed good_service will be the count of values x in the Distribution such that range.min <= x <= range.max. inclusive of min and max. Open ranges can be defined by setting just one of min or max. Structure is documented below.
distribution_filter This property is required. str
A TimeSeries monitoring filter aggregating values to quantify the good service provided. Must have ValueType = DISTRIBUTION and MetricKind = DELTA or MetricKind = CUMULATIVE.
range This property is required. SloWindowsBasedSliGoodTotalRatioThresholdPerformanceDistributionCutRange
Range of numerical values. The computed good_service will be the count of values x in the Distribution such that range.min <= x <= range.max. inclusive of min and max. Open ranges can be defined by setting just one of min or max. Structure is documented below.
distributionFilter This property is required. String
A TimeSeries monitoring filter aggregating values to quantify the good service provided. Must have ValueType = DISTRIBUTION and MetricKind = DELTA or MetricKind = CUMULATIVE.
range This property is required. Property Map
Range of numerical values. The computed good_service will be the count of values x in the Distribution such that range.min <= x <= range.max. inclusive of min and max. Open ranges can be defined by setting just one of min or max. Structure is documented below.

SloWindowsBasedSliGoodTotalRatioThresholdPerformanceDistributionCutRange
, SloWindowsBasedSliGoodTotalRatioThresholdPerformanceDistributionCutRangeArgs

Max double
max value for the range (inclusive). If not given, will be set to "infinity", defining an open range ">= range.min"
Min double
Min value for the range (inclusive). If not given, will be set to "-infinity", defining an open range "< range.max"
Max float64
max value for the range (inclusive). If not given, will be set to "infinity", defining an open range ">= range.min"
Min float64
Min value for the range (inclusive). If not given, will be set to "-infinity", defining an open range "< range.max"
max Double
max value for the range (inclusive). If not given, will be set to "infinity", defining an open range ">= range.min"
min Double
Min value for the range (inclusive). If not given, will be set to "-infinity", defining an open range "< range.max"
max number
max value for the range (inclusive). If not given, will be set to "infinity", defining an open range ">= range.min"
min number
Min value for the range (inclusive). If not given, will be set to "-infinity", defining an open range "< range.max"
max float
max value for the range (inclusive). If not given, will be set to "infinity", defining an open range ">= range.min"
min float
Min value for the range (inclusive). If not given, will be set to "-infinity", defining an open range "< range.max"
max Number
max value for the range (inclusive). If not given, will be set to "infinity", defining an open range ">= range.min"
min Number
Min value for the range (inclusive). If not given, will be set to "-infinity", defining an open range "< range.max"

SloWindowsBasedSliGoodTotalRatioThresholdPerformanceGoodTotalRatio
, SloWindowsBasedSliGoodTotalRatioThresholdPerformanceGoodTotalRatioArgs

BadServiceFilter string
A TimeSeries monitoring filter quantifying bad service provided, either demanded service that was not provided or demanded service that was of inadequate quality. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.
GoodServiceFilter string
A TimeSeries monitoring filter quantifying good service provided. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.
TotalServiceFilter string
A TimeSeries monitoring filter quantifying total demanded service. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.
BadServiceFilter string
A TimeSeries monitoring filter quantifying bad service provided, either demanded service that was not provided or demanded service that was of inadequate quality. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.
GoodServiceFilter string
A TimeSeries monitoring filter quantifying good service provided. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.
TotalServiceFilter string
A TimeSeries monitoring filter quantifying total demanded service. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.
badServiceFilter String
A TimeSeries monitoring filter quantifying bad service provided, either demanded service that was not provided or demanded service that was of inadequate quality. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.
goodServiceFilter String
A TimeSeries monitoring filter quantifying good service provided. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.
totalServiceFilter String
A TimeSeries monitoring filter quantifying total demanded service. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.
badServiceFilter string
A TimeSeries monitoring filter quantifying bad service provided, either demanded service that was not provided or demanded service that was of inadequate quality. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.
goodServiceFilter string
A TimeSeries monitoring filter quantifying good service provided. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.
totalServiceFilter string
A TimeSeries monitoring filter quantifying total demanded service. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.
bad_service_filter str
A TimeSeries monitoring filter quantifying bad service provided, either demanded service that was not provided or demanded service that was of inadequate quality. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.
good_service_filter str
A TimeSeries monitoring filter quantifying good service provided. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.
total_service_filter str
A TimeSeries monitoring filter quantifying total demanded service. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.
badServiceFilter String
A TimeSeries monitoring filter quantifying bad service provided, either demanded service that was not provided or demanded service that was of inadequate quality. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.
goodServiceFilter String
A TimeSeries monitoring filter quantifying good service provided. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.
totalServiceFilter String
A TimeSeries monitoring filter quantifying total demanded service. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.

SloWindowsBasedSliMetricMeanInRange
, SloWindowsBasedSliMetricMeanInRangeArgs

Range This property is required. SloWindowsBasedSliMetricMeanInRangeRange
Range of numerical values. The computed good_service will be the count of values x in the Distribution such that range.min <= x <= range.max. inclusive of min and max. Open ranges can be defined by setting just one of min or max. Mean value X of time_series values should satisfy range.min <= X <= range.max for a good service. Structure is documented below.
TimeSeries This property is required. string
A monitoring filter specifying the TimeSeries to use for evaluating window The provided TimeSeries must have ValueType = INT64 or ValueType = DOUBLE and MetricKind = GAUGE. Mean value X should satisfy range.min <= X <= range.max under good service.
Range This property is required. SloWindowsBasedSliMetricMeanInRangeRange
Range of numerical values. The computed good_service will be the count of values x in the Distribution such that range.min <= x <= range.max. inclusive of min and max. Open ranges can be defined by setting just one of min or max. Mean value X of time_series values should satisfy range.min <= X <= range.max for a good service. Structure is documented below.
TimeSeries This property is required. string
A monitoring filter specifying the TimeSeries to use for evaluating window The provided TimeSeries must have ValueType = INT64 or ValueType = DOUBLE and MetricKind = GAUGE. Mean value X should satisfy range.min <= X <= range.max under good service.
range This property is required. SloWindowsBasedSliMetricMeanInRangeRange
Range of numerical values. The computed good_service will be the count of values x in the Distribution such that range.min <= x <= range.max. inclusive of min and max. Open ranges can be defined by setting just one of min or max. Mean value X of time_series values should satisfy range.min <= X <= range.max for a good service. Structure is documented below.
timeSeries This property is required. String
A monitoring filter specifying the TimeSeries to use for evaluating window The provided TimeSeries must have ValueType = INT64 or ValueType = DOUBLE and MetricKind = GAUGE. Mean value X should satisfy range.min <= X <= range.max under good service.
range This property is required. SloWindowsBasedSliMetricMeanInRangeRange
Range of numerical values. The computed good_service will be the count of values x in the Distribution such that range.min <= x <= range.max. inclusive of min and max. Open ranges can be defined by setting just one of min or max. Mean value X of time_series values should satisfy range.min <= X <= range.max for a good service. Structure is documented below.
timeSeries This property is required. string
A monitoring filter specifying the TimeSeries to use for evaluating window The provided TimeSeries must have ValueType = INT64 or ValueType = DOUBLE and MetricKind = GAUGE. Mean value X should satisfy range.min <= X <= range.max under good service.
range This property is required. SloWindowsBasedSliMetricMeanInRangeRange
Range of numerical values. The computed good_service will be the count of values x in the Distribution such that range.min <= x <= range.max. inclusive of min and max. Open ranges can be defined by setting just one of min or max. Mean value X of time_series values should satisfy range.min <= X <= range.max for a good service. Structure is documented below.
time_series This property is required. str
A monitoring filter specifying the TimeSeries to use for evaluating window The provided TimeSeries must have ValueType = INT64 or ValueType = DOUBLE and MetricKind = GAUGE. Mean value X should satisfy range.min <= X <= range.max under good service.
range This property is required. Property Map
Range of numerical values. The computed good_service will be the count of values x in the Distribution such that range.min <= x <= range.max. inclusive of min and max. Open ranges can be defined by setting just one of min or max. Mean value X of time_series values should satisfy range.min <= X <= range.max for a good service. Structure is documented below.
timeSeries This property is required. String
A monitoring filter specifying the TimeSeries to use for evaluating window The provided TimeSeries must have ValueType = INT64 or ValueType = DOUBLE and MetricKind = GAUGE. Mean value X should satisfy range.min <= X <= range.max under good service.

SloWindowsBasedSliMetricMeanInRangeRange
, SloWindowsBasedSliMetricMeanInRangeRangeArgs

Max double
max value for the range (inclusive). If not given, will be set to "infinity", defining an open range ">= range.min"
Min double
Min value for the range (inclusive). If not given, will be set to "-infinity", defining an open range "< range.max"
Max float64
max value for the range (inclusive). If not given, will be set to "infinity", defining an open range ">= range.min"
Min float64
Min value for the range (inclusive). If not given, will be set to "-infinity", defining an open range "< range.max"
max Double
max value for the range (inclusive). If not given, will be set to "infinity", defining an open range ">= range.min"
min Double
Min value for the range (inclusive). If not given, will be set to "-infinity", defining an open range "< range.max"
max number
max value for the range (inclusive). If not given, will be set to "infinity", defining an open range ">= range.min"
min number
Min value for the range (inclusive). If not given, will be set to "-infinity", defining an open range "< range.max"
max float
max value for the range (inclusive). If not given, will be set to "infinity", defining an open range ">= range.min"
min float
Min value for the range (inclusive). If not given, will be set to "-infinity", defining an open range "< range.max"
max Number
max value for the range (inclusive). If not given, will be set to "infinity", defining an open range ">= range.min"
min Number
Min value for the range (inclusive). If not given, will be set to "-infinity", defining an open range "< range.max"

SloWindowsBasedSliMetricSumInRange
, SloWindowsBasedSliMetricSumInRangeArgs

Range This property is required. SloWindowsBasedSliMetricSumInRangeRange
Range of numerical values. The computed good_service will be the count of values x in the Distribution such that range.min <= x <= range.max. inclusive of min and max. Open ranges can be defined by setting just one of min or max. Summed value X should satisfy range.min <= X <= range.max for a good window. Structure is documented below.
TimeSeries This property is required. string
A monitoring filter specifying the TimeSeries to use for evaluating window quality. The provided TimeSeries must have ValueType = INT64 or ValueType = DOUBLE and MetricKind = GAUGE. Summed value X should satisfy range.min <= X <= range.max for a good window.
Range This property is required. SloWindowsBasedSliMetricSumInRangeRange
Range of numerical values. The computed good_service will be the count of values x in the Distribution such that range.min <= x <= range.max. inclusive of min and max. Open ranges can be defined by setting just one of min or max. Summed value X should satisfy range.min <= X <= range.max for a good window. Structure is documented below.
TimeSeries This property is required. string
A monitoring filter specifying the TimeSeries to use for evaluating window quality. The provided TimeSeries must have ValueType = INT64 or ValueType = DOUBLE and MetricKind = GAUGE. Summed value X should satisfy range.min <= X <= range.max for a good window.
range This property is required. SloWindowsBasedSliMetricSumInRangeRange
Range of numerical values. The computed good_service will be the count of values x in the Distribution such that range.min <= x <= range.max. inclusive of min and max. Open ranges can be defined by setting just one of min or max. Summed value X should satisfy range.min <= X <= range.max for a good window. Structure is documented below.
timeSeries This property is required. String
A monitoring filter specifying the TimeSeries to use for evaluating window quality. The provided TimeSeries must have ValueType = INT64 or ValueType = DOUBLE and MetricKind = GAUGE. Summed value X should satisfy range.min <= X <= range.max for a good window.
range This property is required. SloWindowsBasedSliMetricSumInRangeRange
Range of numerical values. The computed good_service will be the count of values x in the Distribution such that range.min <= x <= range.max. inclusive of min and max. Open ranges can be defined by setting just one of min or max. Summed value X should satisfy range.min <= X <= range.max for a good window. Structure is documented below.
timeSeries This property is required. string
A monitoring filter specifying the TimeSeries to use for evaluating window quality. The provided TimeSeries must have ValueType = INT64 or ValueType = DOUBLE and MetricKind = GAUGE. Summed value X should satisfy range.min <= X <= range.max for a good window.
range This property is required. SloWindowsBasedSliMetricSumInRangeRange
Range of numerical values. The computed good_service will be the count of values x in the Distribution such that range.min <= x <= range.max. inclusive of min and max. Open ranges can be defined by setting just one of min or max. Summed value X should satisfy range.min <= X <= range.max for a good window. Structure is documented below.
time_series This property is required. str
A monitoring filter specifying the TimeSeries to use for evaluating window quality. The provided TimeSeries must have ValueType = INT64 or ValueType = DOUBLE and MetricKind = GAUGE. Summed value X should satisfy range.min <= X <= range.max for a good window.
range This property is required. Property Map
Range of numerical values. The computed good_service will be the count of values x in the Distribution such that range.min <= x <= range.max. inclusive of min and max. Open ranges can be defined by setting just one of min or max. Summed value X should satisfy range.min <= X <= range.max for a good window. Structure is documented below.
timeSeries This property is required. String
A monitoring filter specifying the TimeSeries to use for evaluating window quality. The provided TimeSeries must have ValueType = INT64 or ValueType = DOUBLE and MetricKind = GAUGE. Summed value X should satisfy range.min <= X <= range.max for a good window.

SloWindowsBasedSliMetricSumInRangeRange
, SloWindowsBasedSliMetricSumInRangeRangeArgs

Max double
max value for the range (inclusive). If not given, will be set to "infinity", defining an open range ">= range.min"
Min double
Min value for the range (inclusive). If not given, will be set to "-infinity", defining an open range "< range.max"
Max float64
max value for the range (inclusive). If not given, will be set to "infinity", defining an open range ">= range.min"
Min float64
Min value for the range (inclusive). If not given, will be set to "-infinity", defining an open range "< range.max"
max Double
max value for the range (inclusive). If not given, will be set to "infinity", defining an open range ">= range.min"
min Double
Min value for the range (inclusive). If not given, will be set to "-infinity", defining an open range "< range.max"
max number
max value for the range (inclusive). If not given, will be set to "infinity", defining an open range ">= range.min"
min number
Min value for the range (inclusive). If not given, will be set to "-infinity", defining an open range "< range.max"
max float
max value for the range (inclusive). If not given, will be set to "infinity", defining an open range ">= range.min"
min float
Min value for the range (inclusive). If not given, will be set to "-infinity", defining an open range "< range.max"
max Number
max value for the range (inclusive). If not given, will be set to "infinity", defining an open range ">= range.min"
min Number
Min value for the range (inclusive). If not given, will be set to "-infinity", defining an open range "< range.max"

Import

Slo can be imported using any of these accepted formats:

  • {{project}}/{{name}}

  • {{project}} {{name}}

  • {{name}}

When using the pulumi import command, Slo can be imported using one of the formats above. For example:

$ pulumi import gcp:monitoring/slo:Slo default {{project}}/{{name}}
Copy
$ pulumi import gcp:monitoring/slo:Slo default "{{project}} {{name}}"
Copy
$ pulumi import gcp:monitoring/slo:Slo default {{name}}
Copy

To learn more about importing existing cloud resources, see Importing resources.

Package Details

Repository
Google Cloud (GCP) Classic pulumi/pulumi-gcp
License
Apache-2.0
Notes
This Pulumi package is based on the google-beta Terraform Provider.