UNPKG

@cdk-cloudformation/datadog-slos-slo

Version:
218 lines (217 loc) 5.32 kB
import * as cdk from 'aws-cdk-lib'; import * as constructs from 'constructs'; /** * Datadog SLO 1.1.0 * * @schema CfnSloProps */ export interface CfnSloProps { /** * @schema CfnSloProps#Creator */ readonly creator?: Creator; /** * Description of the slo * * @schema CfnSloProps#Description */ readonly description?: string; /** * A list of (up to 20) monitor groups that narrow the scope of a monitor service level objective. * * @schema CfnSloProps#Groups */ readonly groups?: string[]; /** * A list of monitor ids that defines the scope of a monitor service level objective. Required if type is monitor. * * @schema CfnSloProps#MonitorIds */ readonly monitorIds?: number[]; /** * Name of the slo * * @schema CfnSloProps#Name */ readonly name: string; /** * @schema CfnSloProps#Query */ readonly query?: Query; /** * Tags associated with the slo * * @schema CfnSloProps#Tags */ readonly tags?: string[]; /** * @schema CfnSloProps#Thresholds */ readonly thresholds: Threshold[]; /** * The type of the slo * * @schema CfnSloProps#Type */ readonly type: CfnSloPropsType; } /** * Converts an object of type 'CfnSloProps' to JSON representation. */ export declare function toJson_CfnSloProps(obj: CfnSloProps | undefined): Record<string, any> | undefined; /** * @schema Creator */ export interface Creator { /** * Name of the creator of the slo * * @schema Creator#Name */ readonly name?: string; /** * Handle of the creator of the slo * * @schema Creator#Handle */ readonly handle?: string; /** * Email of the creator of the slo * * @schema Creator#Email */ readonly email?: string; } /** * Converts an object of type 'Creator' to JSON representation. */ export declare function toJson_Creator(obj: Creator | undefined): Record<string, any> | undefined; /** * @schema Query */ export interface Query { /** * A Datadog metric query for total (valid) events. * * @schema Query#Numerator */ readonly numerator?: string; /** * A Datadog metric query for good events. * * @schema Query#Denominator */ readonly denominator?: string; } /** * Converts an object of type 'Query' to JSON representation. */ export declare function toJson_Query(obj: Query | undefined): Record<string, any> | undefined; /** * @schema Threshold */ export interface Threshold { /** * The target value for the service level indicator within the corresponding timeframe. * * @schema Threshold#Target */ readonly target?: number; /** * A string representation of the target that indicates its precision.(e.g. 98.00) * * @schema Threshold#TargetDisplay */ readonly targetDisplay?: string; /** * The SLO time window options. Allowed enum values: 7d,30d,90d * * @schema Threshold#Timeframe */ readonly timeframe?: ThresholdTimeframe; /** * The warning value for the service level objective. * * @schema Threshold#Warning */ readonly warning?: number; /** * A string representation of the warning target.(e.g. 98.00) * * @schema Threshold#WarningDisplay */ readonly warningDisplay?: string; } /** * Converts an object of type 'Threshold' to JSON representation. */ export declare function toJson_Threshold(obj: Threshold | undefined): Record<string, any> | undefined; /** * The type of the slo * * @schema CfnSloPropsType */ export declare enum CfnSloPropsType { /** monitor */ MONITOR = "monitor", /** metric */ METRIC = "metric" } /** * The SLO time window options. Allowed enum values: 7d,30d,90d * * @schema ThresholdTimeframe */ export declare enum ThresholdTimeframe { /** 7d */ VALUE_7D = "7d", /** 30d */ VALUE_30D = "30d", /** 90d */ VALUE_90D = "90d" } /** * A CloudFormation `Datadog::SLOs::SLO` * * @cloudformationResource Datadog::SLOs::SLO * @stability external * @link http://unknown-url */ export declare class CfnSlo extends cdk.CfnResource { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME = "Datadog::SLOs::SLO"; /** * Resource props. */ readonly props: CfnSloProps; /** * Attribute `Datadog::SLOs::SLO.Modified` * @link http://unknown-url */ readonly attrModified: string; /** * Attribute `Datadog::SLOs::SLO.Id` * @link http://unknown-url */ readonly attrId: string; /** * Attribute `Datadog::SLOs::SLO.Deleted` * @link http://unknown-url */ readonly attrDeleted: string; /** * Attribute `Datadog::SLOs::SLO.Created` * @link http://unknown-url */ readonly attrCreated: string; /** * Create a new `Datadog::SLOs::SLO`. * * @param scope - scope in which this resource is defined * @param id - scoped id of the resource * @param props - resource properties */ constructor(scope: constructs.Construct, id: string, props: CfnSloProps); }