interface CfnServiceLevelObjectiveProps
Language | Type name |
---|---|
.NET | Amazon.CDK.aws_applicationsignals.CfnServiceLevelObjectiveProps |
Go | github.com/aws/aws-cdk-go/awscdk/v2/awsapplicationsignals#CfnServiceLevelObjectiveProps |
Java | software.amazon.awscdk.services.applicationsignals.CfnServiceLevelObjectiveProps |
Python | aws_cdk.aws_applicationsignals.CfnServiceLevelObjectiveProps |
TypeScript | aws-cdk-lib » aws_applicationsignals » CfnServiceLevelObjectiveProps |
Properties for defining a CfnServiceLevelObjective
.
Example
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { aws_applicationsignals as applicationsignals } from 'aws-cdk-lib';
const cfnServiceLevelObjectiveProps: applicationsignals.CfnServiceLevelObjectiveProps = {
name: 'name',
// the properties below are optional
burnRateConfigurations: [{
lookBackWindowMinutes: 123,
}],
description: 'description',
goal: {
attainmentGoal: 123,
interval: {
calendarInterval: {
duration: 123,
durationUnit: 'durationUnit',
startTime: 123,
},
rollingInterval: {
duration: 123,
durationUnit: 'durationUnit',
},
},
warningThreshold: 123,
},
requestBasedSli: {
requestBasedSliMetric: {
keyAttributes: {
keyAttributesKey: 'keyAttributes',
},
metricType: 'metricType',
monitoredRequestCountMetric: {
badCountMetric: [{
id: 'id',
// the properties below are optional
accountId: 'accountId',
expression: 'expression',
metricStat: {
metric: {
dimensions: [{
name: 'name',
value: 'value',
}],
metricName: 'metricName',
namespace: 'namespace',
},
period: 123,
stat: 'stat',
// the properties below are optional
unit: 'unit',
},
returnData: false,
}],
goodCountMetric: [{
id: 'id',
// the properties below are optional
accountId: 'accountId',
expression: 'expression',
metricStat: {
metric: {
dimensions: [{
name: 'name',
value: 'value',
}],
metricName: 'metricName',
namespace: 'namespace',
},
period: 123,
stat: 'stat',
// the properties below are optional
unit: 'unit',
},
returnData: false,
}],
},
operationName: 'operationName',
totalRequestCountMetric: [{
id: 'id',
// the properties below are optional
accountId: 'accountId',
expression: 'expression',
metricStat: {
metric: {
dimensions: [{
name: 'name',
value: 'value',
}],
metricName: 'metricName',
namespace: 'namespace',
},
period: 123,
stat: 'stat',
// the properties below are optional
unit: 'unit',
},
returnData: false,
}],
},
// the properties below are optional
comparisonOperator: 'comparisonOperator',
metricThreshold: 123,
},
sli: {
comparisonOperator: 'comparisonOperator',
metricThreshold: 123,
sliMetric: {
keyAttributes: {
keyAttributesKey: 'keyAttributes',
},
metricDataQueries: [{
id: 'id',
// the properties below are optional
accountId: 'accountId',
expression: 'expression',
metricStat: {
metric: {
dimensions: [{
name: 'name',
value: 'value',
}],
metricName: 'metricName',
namespace: 'namespace',
},
period: 123,
stat: 'stat',
// the properties below are optional
unit: 'unit',
},
returnData: false,
}],
metricType: 'metricType',
operationName: 'operationName',
periodSeconds: 123,
statistic: 'statistic',
},
},
tags: [{
key: 'key',
value: 'value',
}],
};
Properties
Name | Type | Description |
---|---|---|
name | string | A name for this SLO. |
burn | IResolvable | IResolvable | Burn [] | Each object in this array defines the length of the look-back window used to calculate one burn rate metric for this SLO. |
description? | string | An optional description for this SLO. |
goal? | IResolvable | Goal | This structure contains the attributes that determine the goal of an SLO. |
request | IResolvable | Request | A structure containing information about the performance metric that this SLO monitors, if this is a request-based SLO. |
sli? | IResolvable | Sli | A structure containing information about the performance metric that this SLO monitors, if this is a period-based SLO. |
tags? | Cfn [] | A list of key-value pairs to associate with the SLO. |
name
Type:
string
A name for this SLO.
burnRateConfigurations?
Type:
IResolvable
|
IResolvable
|
Burn
[]
(optional)
Each object in this array defines the length of the look-back window used to calculate one burn rate metric for this SLO.
The burn rate measures how fast the service is consuming the error budget, relative to the attainment goal of the SLO.
description?
Type:
string
(optional, default: "No description")
An optional description for this SLO.
goal?
Type:
IResolvable
|
Goal
(optional)
This structure contains the attributes that determine the goal of an SLO.
This includes the time period for evaluation and the attainment threshold.
requestBasedSli?
Type:
IResolvable
|
Request
(optional)
A structure containing information about the performance metric that this SLO monitors, if this is a request-based SLO.
sli?
Type:
IResolvable
|
Sli
(optional)
A structure containing information about the performance metric that this SLO monitors, if this is a period-based SLO.
tags?
Type:
Cfn
[]
(optional)
A list of key-value pairs to associate with the SLO.
You can associate as many as 50 tags with an SLO. To be able to associate tags with the SLO when you create the SLO, you must have the cloudwatch:TagResource permission.
Tags can help you organize and categorize your resources. You can also use them to scope user permissions by granting a user permission to access or change only resources with certain tag values.