UNPKG

@datadog/datadog-api-client

Version:

OpenAPI client for Datadog APIs

137 lines (136 loc) 5 kB
/** * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. * This product includes software developed at Datadog (https://www.datadoghq.com/). * Copyright 2020-Present Datadog, Inc. */ import { Creator } from "./Creator"; import { ServiceLevelObjectiveQuery } from "./ServiceLevelObjectiveQuery"; import { SLOSliSpec } from "./SLOSliSpec"; import { SLOThreshold } from "./SLOThreshold"; import { SLOTimeframe } from "./SLOTimeframe"; import { SLOType } from "./SLOType"; import { AttributeTypeMap } from "../../datadog-api-client-common/util"; /** * A service level objective object includes a service level indicator, thresholds * for one or more timeframes, and metadata (`name`, `description`, `tags`, etc.). */ export declare class ServiceLevelObjective { /** * Creation timestamp (UNIX time in seconds) * * Always included in service level objective responses. */ "createdAt"?: number; /** * Object describing the creator of the shared element. */ "creator"?: Creator; /** * A user-defined description of the service level objective. * * Always included in service level objective responses (but may be `null`). * Optional in create/update requests. */ "description"?: string; /** * A list of (up to 100) monitor groups that narrow the scope of a monitor service level objective. * * Included in service level objective responses if it is not empty. Optional in * create/update requests for monitor service level objectives, but may only be * used when then length of the `monitor_ids` field is one. */ "groups"?: Array<string>; /** * A unique identifier for the service level objective object. * * Always included in service level objective responses. */ "id"?: string; /** * Modification timestamp (UNIX time in seconds) * * Always included in service level objective responses. */ "modifiedAt"?: number; /** * A list of monitor ids that defines the scope of a monitor service level * objective. **Required if type is `monitor`**. */ "monitorIds"?: Array<number>; /** * The union of monitor tags for all monitors referenced by the `monitor_ids` * field. * Always included in service level objective responses for monitor-based service level * objectives (but may be empty). Ignored in create/update requests. Does not * affect which monitors are included in the service level objective (that is * determined entirely by the `monitor_ids` field). */ "monitorTags"?: Array<string>; /** * The name of the service level objective object. */ "name": string; /** * A metric-based SLO. **Required if type is `metric`**. Note that Datadog only allows the sum by aggregator * to be used because this will sum up all request counts instead of averaging them, or taking the max or * min of all of those requests. */ "query"?: ServiceLevelObjectiveQuery; /** * A generic SLI specification. This is currently used for time-slice SLOs only. */ "sliSpecification"?: SLOSliSpec; /** * A list of tags associated with this service level objective. * Always included in service level objective responses (but may be empty). * Optional in create/update requests. */ "tags"?: Array<string>; /** * The target threshold such that when the service level indicator is above this * threshold over the given timeframe, the objective is being met. */ "targetThreshold"?: number; /** * The thresholds (timeframes and associated targets) for this service level * objective object. */ "thresholds": Array<SLOThreshold>; /** * The SLO time window options. Note that "custom" is not a valid option for creating * or updating SLOs. It is only used when querying SLO history over custom timeframes. */ "timeframe"?: SLOTimeframe; /** * The type of the service level objective. */ "type": SLOType; /** * The optional warning threshold such that when the service level indicator is * below this value for the given threshold, but above the target threshold, the * objective appears in a "warning" state. This value must be greater than the target * threshold. */ "warningThreshold"?: number; /** * A container for additional, undeclared properties. * This is a holder for any undeclared properties as specified with * the 'additionalProperties' keyword in the OAS document. */ "additionalProperties"?: { [key: string]: any; }; /** * @ignore */ "_unparsed"?: boolean; /** * @ignore */ static readonly attributeTypeMap: AttributeTypeMap; /** * @ignore */ static getAttributeTypeMap(): AttributeTypeMap; constructor(); }