1. Packages
  2. Harness
  3. API Docs
  4. platform
  5. Slo
Harness v0.4.1 published on Monday, Oct 14, 2024 by Pulumi

harness.platform.Slo

Explore with Pulumi AI

harness logo
Harness v0.4.1 published on Monday, Oct 14, 2024 by Pulumi

    Resource for creating an SLO.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as harness from "@pulumi/harness";
    
    const example = new harness.platform.Slo("example", {
        orgId: "default",
        projectId: "default_project",
        identifier: "TerraformSLO",
        request: {
            name: "TSLO",
            description: "description",
            tags: [
                "foo:bar",
                "bar:foo",
            ],
            userJourneyRefs: [
                "one",
                "two",
            ],
            sloTarget: {
                type: "Calender",
                sloTargetPercentage: 10,
                spec: JSON.stringify({
                    type: "Monthly",
                    spec: {
                        dayOfMonth: 5,
                    },
                }),
            },
            type: "Simple",
            spec: JSON.stringify({
                monitoredServiceRef: "monitoredServiceRef",
                serviceLevelIndicatorType: "Availability",
                serviceLevelIndicators: [{
                    name: "name",
                    identifier: "identifier",
                    type: "Window",
                    spec: {
                        type: "Threshold",
                        spec: {
                            metric1: "metric1",
                            thresholdValue: 10,
                            thresholdType: ">",
                        },
                        sliMissingDataType: "Good",
                    },
                }],
            }),
            notificationRuleRefs: [{
                notificationRuleRef: "notification_rule_ref",
                enabled: true,
            }],
        },
    });
    
    import pulumi
    import json
    import pulumi_harness as harness
    
    example = harness.platform.Slo("example",
        org_id="default",
        project_id="default_project",
        identifier="TerraformSLO",
        request={
            "name": "TSLO",
            "description": "description",
            "tags": [
                "foo:bar",
                "bar:foo",
            ],
            "user_journey_refs": [
                "one",
                "two",
            ],
            "slo_target": {
                "type": "Calender",
                "slo_target_percentage": 10,
                "spec": json.dumps({
                    "type": "Monthly",
                    "spec": {
                        "day_of_month": 5,
                    },
                }),
            },
            "type": "Simple",
            "spec": json.dumps({
                "monitored_service_ref": "monitoredServiceRef",
                "service_level_indicator_type": "Availability",
                "service_level_indicators": [{
                    "name": "name",
                    "identifier": "identifier",
                    "type": "Window",
                    "spec": {
                        "type": "Threshold",
                        "spec": {
                            "metric1": "metric1",
                            "threshold_value": 10,
                            "threshold_type": ">",
                        },
                        "sli_missing_data_type": "Good",
                    },
                }],
            }),
            "notification_rule_refs": [{
                "notification_rule_ref": "notification_rule_ref",
                "enabled": True,
            }],
        })
    
    package main
    
    import (
    	"encoding/json"
    
    	"github.com/pulumi/pulumi-harness/sdk/go/harness/platform"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		tmpJSON0, err := json.Marshal(map[string]interface{}{
    			"type": "Monthly",
    			"spec": map[string]interface{}{
    				"dayOfMonth": 5,
    			},
    		})
    		if err != nil {
    			return err
    		}
    		json0 := string(tmpJSON0)
    		tmpJSON1, err := json.Marshal(map[string]interface{}{
    			"monitoredServiceRef":       "monitoredServiceRef",
    			"serviceLevelIndicatorType": "Availability",
    			"serviceLevelIndicators": []map[string]interface{}{
    				map[string]interface{}{
    					"name":       "name",
    					"identifier": "identifier",
    					"type":       "Window",
    					"spec": map[string]interface{}{
    						"type": "Threshold",
    						"spec": map[string]interface{}{
    							"metric1":        "metric1",
    							"thresholdValue": 10,
    							"thresholdType":  ">",
    						},
    						"sliMissingDataType": "Good",
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		json1 := string(tmpJSON1)
    		_, err = platform.NewSlo(ctx, "example", &platform.SloArgs{
    			OrgId:      pulumi.String("default"),
    			ProjectId:  pulumi.String("default_project"),
    			Identifier: pulumi.String("TerraformSLO"),
    			Request: &platform.SloRequestArgs{
    				Name:        pulumi.String("TSLO"),
    				Description: pulumi.String("description"),
    				Tags: pulumi.StringArray{
    					pulumi.String("foo:bar"),
    					pulumi.String("bar:foo"),
    				},
    				UserJourneyRefs: pulumi.StringArray{
    					pulumi.String("one"),
    					pulumi.String("two"),
    				},
    				SloTarget: &platform.SloRequestSloTargetArgs{
    					Type:                pulumi.String("Calender"),
    					SloTargetPercentage: pulumi.Float64(10),
    					Spec:                pulumi.String(json0),
    				},
    				Type: pulumi.String("Simple"),
    				Spec: pulumi.String(json1),
    				NotificationRuleRefs: platform.SloRequestNotificationRuleRefArray{
    					&platform.SloRequestNotificationRuleRefArgs{
    						NotificationRuleRef: pulumi.String("notification_rule_ref"),
    						Enabled:             pulumi.Bool(true),
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using System.Text.Json;
    using Pulumi;
    using Harness = Pulumi.Harness;
    
    return await Deployment.RunAsync(() => 
    {
        var example = new Harness.Platform.Slo("example", new()
        {
            OrgId = "default",
            ProjectId = "default_project",
            Identifier = "TerraformSLO",
            Request = new Harness.Platform.Inputs.SloRequestArgs
            {
                Name = "TSLO",
                Description = "description",
                Tags = new[]
                {
                    "foo:bar",
                    "bar:foo",
                },
                UserJourneyRefs = new[]
                {
                    "one",
                    "two",
                },
                SloTarget = new Harness.Platform.Inputs.SloRequestSloTargetArgs
                {
                    Type = "Calender",
                    SloTargetPercentage = 10,
                    Spec = JsonSerializer.Serialize(new Dictionary<string, object?>
                    {
                        ["type"] = "Monthly",
                        ["spec"] = new Dictionary<string, object?>
                        {
                            ["dayOfMonth"] = 5,
                        },
                    }),
                },
                Type = "Simple",
                Spec = JsonSerializer.Serialize(new Dictionary<string, object?>
                {
                    ["monitoredServiceRef"] = "monitoredServiceRef",
                    ["serviceLevelIndicatorType"] = "Availability",
                    ["serviceLevelIndicators"] = new[]
                    {
                        new Dictionary<string, object?>
                        {
                            ["name"] = "name",
                            ["identifier"] = "identifier",
                            ["type"] = "Window",
                            ["spec"] = new Dictionary<string, object?>
                            {
                                ["type"] = "Threshold",
                                ["spec"] = new Dictionary<string, object?>
                                {
                                    ["metric1"] = "metric1",
                                    ["thresholdValue"] = 10,
                                    ["thresholdType"] = ">",
                                },
                                ["sliMissingDataType"] = "Good",
                            },
                        },
                    },
                }),
                NotificationRuleRefs = new[]
                {
                    new Harness.Platform.Inputs.SloRequestNotificationRuleRefArgs
                    {
                        NotificationRuleRef = "notification_rule_ref",
                        Enabled = true,
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.harness.platform.Slo;
    import com.pulumi.harness.platform.SloArgs;
    import com.pulumi.harness.platform.inputs.SloRequestArgs;
    import com.pulumi.harness.platform.inputs.SloRequestSloTargetArgs;
    import static com.pulumi.codegen.internal.Serialization.*;
    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 example = new Slo("example", SloArgs.builder()
                .orgId("default")
                .projectId("default_project")
                .identifier("TerraformSLO")
                .request(SloRequestArgs.builder()
                    .name("TSLO")
                    .description("description")
                    .tags(                
                        "foo:bar",
                        "bar:foo")
                    .userJourneyRefs(                
                        "one",
                        "two")
                    .sloTarget(SloRequestSloTargetArgs.builder()
                        .type("Calender")
                        .sloTargetPercentage(10)
                        .spec(serializeJson(
                            jsonObject(
                                jsonProperty("type", "Monthly"),
                                jsonProperty("spec", jsonObject(
                                    jsonProperty("dayOfMonth", 5)
                                ))
                            )))
                        .build())
                    .type("Simple")
                    .spec(serializeJson(
                        jsonObject(
                            jsonProperty("monitoredServiceRef", "monitoredServiceRef"),
                            jsonProperty("serviceLevelIndicatorType", "Availability"),
                            jsonProperty("serviceLevelIndicators", jsonArray(jsonObject(
                                jsonProperty("name", "name"),
                                jsonProperty("identifier", "identifier"),
                                jsonProperty("type", "Window"),
                                jsonProperty("spec", jsonObject(
                                    jsonProperty("type", "Threshold"),
                                    jsonProperty("spec", jsonObject(
                                        jsonProperty("metric1", "metric1"),
                                        jsonProperty("thresholdValue", 10),
                                        jsonProperty("thresholdType", ">")
                                    )),
                                    jsonProperty("sliMissingDataType", "Good")
                                ))
                            )))
                        )))
                    .notificationRuleRefs(SloRequestNotificationRuleRefArgs.builder()
                        .notificationRuleRef("notification_rule_ref")
                        .enabled(true)
                        .build())
                    .build())
                .build());
    
        }
    }
    
    resources:
      example:
        type: harness:platform:Slo
        properties:
          orgId: default
          projectId: default_project
          identifier: TerraformSLO
          request:
            name: TSLO
            description: description
            tags:
              - foo:bar
              - bar:foo
            userJourneyRefs:
              - one
              - two
            sloTarget:
              type: Calender
              sloTargetPercentage: 10
              spec:
                fn::toJSON:
                  type: Monthly
                  spec:
                    dayOfMonth: 5
            type: Simple
            spec:
              fn::toJSON:
                monitoredServiceRef: monitoredServiceRef
                serviceLevelIndicatorType: Availability
                serviceLevelIndicators:
                  - name: name
                    identifier: identifier
                    type: Window
                    spec:
                      type: Threshold
                      spec:
                        metric1: metric1
                        thresholdValue: 10
                        thresholdType: '>'
                      sliMissingDataType: Good
            notificationRuleRefs:
              - notificationRuleRef: notification_rule_ref
                enabled: true
    

    Note the above example is for “Threshold” SLI type, if you want to use “Ratio”, the SLI should be changed appropriately. Here’s an example of SLO target and Spec for “Ratio” based SLI and “Rolling” SLO target.

    slo_target {
        type = "Rolling"
        slo_target_percentage = 99
        spec = jsonencode({
            "periodLength": "28d"
        })
    }
    type = "Simple"
    spec = jsonencode({
        monitoredServiceRef = "monitoredServiceRef"
        "healthSourceRef" : "healthSourceRef",
        serviceLevelIndicatorType = "Availability"
        serviceLevelIndicators = [
            {
                "name" : "sliName",
                "identifier" : "sliIdentifier",
                "type" : "Window",
                spec = {
                    "spec" : {
                        "eventType" : "Bad",
                        "metric1" : "Bad_Metrics",
                        "metric2" : "total_metrics",
                        "thresholdValue" : 99,
                        "thresholdType" : ">"
                    },
                    "sliMissingDataType" : "Ignore",
                    "type" : "Ratio"
                }
            }
        ]
    })
    

    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,
            identifier: Optional[str] = None,
            org_id: Optional[str] = None,
            project_id: Optional[str] = None,
            request: Optional[SloRequestArgs] = 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: harness:platform:Slo
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args SloArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args 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 string
    The unique name of the resource.
    args SloArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args SloArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args 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 Harness.Platform.Slo("sloResource", new()
    {
        Identifier = "string",
        OrgId = "string",
        ProjectId = "string",
        Request = new Harness.Platform.Inputs.SloRequestArgs
        {
            Name = "string",
            SloTarget = new Harness.Platform.Inputs.SloRequestSloTargetArgs
            {
                SloTargetPercentage = 0,
                Spec = "string",
                Type = "string",
            },
            Spec = "string",
            Type = "string",
            UserJourneyRefs = new[]
            {
                "string",
            },
            Description = "string",
            NotificationRuleRefs = new[]
            {
                new Harness.Platform.Inputs.SloRequestNotificationRuleRefArgs
                {
                    Enabled = false,
                    NotificationRuleRef = "string",
                },
            },
            Tags = new[]
            {
                "string",
            },
        },
    });
    
    example, err := platform.NewSlo(ctx, "sloResource", &platform.SloArgs{
    	Identifier: pulumi.String("string"),
    	OrgId:      pulumi.String("string"),
    	ProjectId:  pulumi.String("string"),
    	Request: &platform.SloRequestArgs{
    		Name: pulumi.String("string"),
    		SloTarget: &platform.SloRequestSloTargetArgs{
    			SloTargetPercentage: pulumi.Float64(0),
    			Spec:                pulumi.String("string"),
    			Type:                pulumi.String("string"),
    		},
    		Spec: pulumi.String("string"),
    		Type: pulumi.String("string"),
    		UserJourneyRefs: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    		Description: pulumi.String("string"),
    		NotificationRuleRefs: platform.SloRequestNotificationRuleRefArray{
    			&platform.SloRequestNotificationRuleRefArgs{
    				Enabled:             pulumi.Bool(false),
    				NotificationRuleRef: pulumi.String("string"),
    			},
    		},
    		Tags: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    	},
    })
    
    var sloResource = new Slo("sloResource", SloArgs.builder()
        .identifier("string")
        .orgId("string")
        .projectId("string")
        .request(SloRequestArgs.builder()
            .name("string")
            .sloTarget(SloRequestSloTargetArgs.builder()
                .sloTargetPercentage(0)
                .spec("string")
                .type("string")
                .build())
            .spec("string")
            .type("string")
            .userJourneyRefs("string")
            .description("string")
            .notificationRuleRefs(SloRequestNotificationRuleRefArgs.builder()
                .enabled(false)
                .notificationRuleRef("string")
                .build())
            .tags("string")
            .build())
        .build());
    
    slo_resource = harness.platform.Slo("sloResource",
        identifier="string",
        org_id="string",
        project_id="string",
        request=harness.platform.SloRequestArgs(
            name="string",
            slo_target=harness.platform.SloRequestSloTargetArgs(
                slo_target_percentage=0,
                spec="string",
                type="string",
            ),
            spec="string",
            type="string",
            user_journey_refs=["string"],
            description="string",
            notification_rule_refs=[harness.platform.SloRequestNotificationRuleRefArgs(
                enabled=False,
                notification_rule_ref="string",
            )],
            tags=["string"],
        ))
    
    const sloResource = new harness.platform.Slo("sloResource", {
        identifier: "string",
        orgId: "string",
        projectId: "string",
        request: {
            name: "string",
            sloTarget: {
                sloTargetPercentage: 0,
                spec: "string",
                type: "string",
            },
            spec: "string",
            type: "string",
            userJourneyRefs: ["string"],
            description: "string",
            notificationRuleRefs: [{
                enabled: false,
                notificationRuleRef: "string",
            }],
            tags: ["string"],
        },
    });
    
    type: harness:platform:Slo
    properties:
        identifier: string
        orgId: string
        projectId: string
        request:
            description: string
            name: string
            notificationRuleRefs:
                - enabled: false
                  notificationRuleRef: string
            sloTarget:
                sloTargetPercentage: 0
                spec: string
                type: string
            spec: string
            tags:
                - string
            type: string
            userJourneyRefs:
                - string
    

    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

    The Slo resource accepts the following input properties:

    Identifier string
    Identifier of the SLO.
    OrgId string
    Identifier of the organization in which the SLO is configured.
    ProjectId string
    Identifier of the project in which the SLO is configured.
    Request SloRequest
    Request for creating or updating SLO.
    Identifier string
    Identifier of the SLO.
    OrgId string
    Identifier of the organization in which the SLO is configured.
    ProjectId string
    Identifier of the project in which the SLO is configured.
    Request SloRequestArgs
    Request for creating or updating SLO.
    identifier String
    Identifier of the SLO.
    orgId String
    Identifier of the organization in which the SLO is configured.
    projectId String
    Identifier of the project in which the SLO is configured.
    request SloRequest
    Request for creating or updating SLO.
    identifier string
    Identifier of the SLO.
    orgId string
    Identifier of the organization in which the SLO is configured.
    projectId string
    Identifier of the project in which the SLO is configured.
    request SloRequest
    Request for creating or updating SLO.
    identifier str
    Identifier of the SLO.
    org_id str
    Identifier of the organization in which the SLO is configured.
    project_id str
    Identifier of the project in which the SLO is configured.
    request SloRequestArgs
    Request for creating or updating SLO.
    identifier String
    Identifier of the SLO.
    orgId String
    Identifier of the organization in which the SLO is configured.
    projectId String
    Identifier of the project in which the SLO is configured.
    request Property Map
    Request for creating or updating SLO.

    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.
    Id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    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,
            identifier: Optional[str] = None,
            org_id: Optional[str] = None,
            project_id: Optional[str] = None,
            request: Optional[SloRequestArgs] = 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)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    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
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    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
    The unique name of the resulting resource.
    id
    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
    The unique name of the resulting resource.
    id
    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:
    Identifier string
    Identifier of the SLO.
    OrgId string
    Identifier of the organization in which the SLO is configured.
    ProjectId string
    Identifier of the project in which the SLO is configured.
    Request SloRequest
    Request for creating or updating SLO.
    Identifier string
    Identifier of the SLO.
    OrgId string
    Identifier of the organization in which the SLO is configured.
    ProjectId string
    Identifier of the project in which the SLO is configured.
    Request SloRequestArgs
    Request for creating or updating SLO.
    identifier String
    Identifier of the SLO.
    orgId String
    Identifier of the organization in which the SLO is configured.
    projectId String
    Identifier of the project in which the SLO is configured.
    request SloRequest
    Request for creating or updating SLO.
    identifier string
    Identifier of the SLO.
    orgId string
    Identifier of the organization in which the SLO is configured.
    projectId string
    Identifier of the project in which the SLO is configured.
    request SloRequest
    Request for creating or updating SLO.
    identifier str
    Identifier of the SLO.
    org_id str
    Identifier of the organization in which the SLO is configured.
    project_id str
    Identifier of the project in which the SLO is configured.
    request SloRequestArgs
    Request for creating or updating SLO.
    identifier String
    Identifier of the SLO.
    orgId String
    Identifier of the organization in which the SLO is configured.
    projectId String
    Identifier of the project in which the SLO is configured.
    request Property Map
    Request for creating or updating SLO.

    Supporting Types

    SloRequest, SloRequestArgs

    Name string
    Name for the SLO.
    SloTarget SloRequestSloTarget
    SLO Target specification.
    Spec string
    Specification of the SLO.
    Type string
    Type of the SLO.
    UserJourneyRefs List<string>
    User journey reference list for the SLO.
    Description string
    Description for the SLO.
    NotificationRuleRefs List<SloRequestNotificationRuleRef>
    Notification rule references for the SLO.
    Tags List<string>
    Tags for the SLO. comma-separated key value string pairs.
    Name string
    Name for the SLO.
    SloTarget SloRequestSloTarget
    SLO Target specification.
    Spec string
    Specification of the SLO.
    Type string
    Type of the SLO.
    UserJourneyRefs []string
    User journey reference list for the SLO.
    Description string
    Description for the SLO.
    NotificationRuleRefs []SloRequestNotificationRuleRef
    Notification rule references for the SLO.
    Tags []string
    Tags for the SLO. comma-separated key value string pairs.
    name String
    Name for the SLO.
    sloTarget SloRequestSloTarget
    SLO Target specification.
    spec String
    Specification of the SLO.
    type String
    Type of the SLO.
    userJourneyRefs List<String>
    User journey reference list for the SLO.
    description String
    Description for the SLO.
    notificationRuleRefs List<SloRequestNotificationRuleRef>
    Notification rule references for the SLO.
    tags List<String>
    Tags for the SLO. comma-separated key value string pairs.
    name string
    Name for the SLO.
    sloTarget SloRequestSloTarget
    SLO Target specification.
    spec string
    Specification of the SLO.
    type string
    Type of the SLO.
    userJourneyRefs string[]
    User journey reference list for the SLO.
    description string
    Description for the SLO.
    notificationRuleRefs SloRequestNotificationRuleRef[]
    Notification rule references for the SLO.
    tags string[]
    Tags for the SLO. comma-separated key value string pairs.
    name str
    Name for the SLO.
    slo_target SloRequestSloTarget
    SLO Target specification.
    spec str
    Specification of the SLO.
    type str
    Type of the SLO.
    user_journey_refs Sequence[str]
    User journey reference list for the SLO.
    description str
    Description for the SLO.
    notification_rule_refs Sequence[SloRequestNotificationRuleRef]
    Notification rule references for the SLO.
    tags Sequence[str]
    Tags for the SLO. comma-separated key value string pairs.
    name String
    Name for the SLO.
    sloTarget Property Map
    SLO Target specification.
    spec String
    Specification of the SLO.
    type String
    Type of the SLO.
    userJourneyRefs List<String>
    User journey reference list for the SLO.
    description String
    Description for the SLO.
    notificationRuleRefs List<Property Map>
    Notification rule references for the SLO.
    tags List<String>
    Tags for the SLO. comma-separated key value string pairs.

    SloRequestNotificationRuleRef, SloRequestNotificationRuleRefArgs

    Enabled bool
    Enable or disable notification rule reference for the SLO.
    NotificationRuleRef string
    Notification rule reference for the SLO.
    Enabled bool
    Enable or disable notification rule reference for the SLO.
    NotificationRuleRef string
    Notification rule reference for the SLO.
    enabled Boolean
    Enable or disable notification rule reference for the SLO.
    notificationRuleRef String
    Notification rule reference for the SLO.
    enabled boolean
    Enable or disable notification rule reference for the SLO.
    notificationRuleRef string
    Notification rule reference for the SLO.
    enabled bool
    Enable or disable notification rule reference for the SLO.
    notification_rule_ref str
    Notification rule reference for the SLO.
    enabled Boolean
    Enable or disable notification rule reference for the SLO.
    notificationRuleRef String
    Notification rule reference for the SLO.

    SloRequestSloTarget, SloRequestSloTargetArgs

    SloTargetPercentage double
    Target percentage for the SLO.
    Spec string
    Specification of the SLO Target.
    Type string
    Type of the SLO target.
    SloTargetPercentage float64
    Target percentage for the SLO.
    Spec string
    Specification of the SLO Target.
    Type string
    Type of the SLO target.
    sloTargetPercentage Double
    Target percentage for the SLO.
    spec String
    Specification of the SLO Target.
    type String
    Type of the SLO target.
    sloTargetPercentage number
    Target percentage for the SLO.
    spec string
    Specification of the SLO Target.
    type string
    Type of the SLO target.
    slo_target_percentage float
    Target percentage for the SLO.
    spec str
    Specification of the SLO Target.
    type str
    Type of the SLO target.
    sloTargetPercentage Number
    Target percentage for the SLO.
    spec String
    Specification of the SLO Target.
    type String
    Type of the SLO target.

    Import

    Import account level SLO

    $ pulumi import harness:platform/slo:Slo example <slo_id>
    

    Import organization level SLO

    $ pulumi import harness:platform/slo:Slo example <org_id>/<slo_id>
    

    Import project level SLO

    $ pulumi import harness:platform/slo:Slo example <org_id>/<project_id>/<slo_id>
    

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

    Package Details

    Repository
    harness pulumi/pulumi-harness
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the harness Terraform Provider.
    harness logo
    Harness v0.4.1 published on Monday, Oct 14, 2024 by Pulumi