Skip to content

Commit b72eaa9

Browse files
author
awstools
committed
feat(client-application-signals): Amazon CloudWatch Application Signals now supports creating Service Level Objectives using a new calculation type. Users can now create SLOs which are configured with request-based SLIs to help meet their specific business requirements.
1 parent ccfae6e commit b72eaa9

File tree

7 files changed

+1261
-79
lines changed

7 files changed

+1261
-79
lines changed

clients/client-application-signals/src/commands/BatchGetServiceLevelObjectiveBudgetReportCommand.ts

Lines changed: 94 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ export interface BatchGetServiceLevelObjectiveBudgetReportCommandOutput
4242

4343
/**
4444
* <p>Use this operation to retrieve one or more <i>service level objective (SLO) budget reports</i>.</p>
45-
* <p>An <i>error budget</i> is the amount of time in unhealthy periods that your service can
45+
* <p>An <i>error budget</i> is the amount of time or requests in an unhealthy state that your service can
4646
* accumulate during an interval before your overall SLO budget health is breached and the SLO is considered to be
4747
* unmet. For example, an SLO with a threshold of 99.95% and a monthly interval
4848
* translates to an error budget of 21.9 minutes of
@@ -72,10 +72,13 @@ export interface BatchGetServiceLevelObjectiveBudgetReportCommandOutput
7272
* // { // ServiceLevelObjectiveBudgetReport
7373
* // Arn: "STRING_VALUE", // required
7474
* // Name: "STRING_VALUE", // required
75+
* // EvaluationType: "PeriodBased" || "RequestBased",
7576
* // BudgetStatus: "OK" || "WARNING" || "BREACHED" || "INSUFFICIENT_DATA", // required
7677
* // Attainment: Number("double"),
7778
* // TotalBudgetSeconds: Number("int"),
7879
* // BudgetSecondsRemaining: Number("int"),
80+
* // TotalBudgetRequests: Number("int"),
81+
* // BudgetRequestsRemaining: Number("int"),
7982
* // Sli: { // ServiceLevelIndicator
8083
* // SliMetric: { // ServiceLevelIndicatorMetric
8184
* // KeyAttributes: { // Attributes
@@ -112,15 +115,103 @@ export interface BatchGetServiceLevelObjectiveBudgetReportCommandOutput
112115
* // MetricThreshold: Number("double"), // required
113116
* // ComparisonOperator: "GreaterThanOrEqualTo" || "GreaterThan" || "LessThan" || "LessThanOrEqualTo", // required
114117
* // },
118+
* // RequestBasedSli: { // RequestBasedServiceLevelIndicator
119+
* // RequestBasedSliMetric: { // RequestBasedServiceLevelIndicatorMetric
120+
* // KeyAttributes: {
121+
* // "<keys>": "STRING_VALUE",
122+
* // },
123+
* // OperationName: "STRING_VALUE",
124+
* // MetricType: "LATENCY" || "AVAILABILITY",
125+
* // TotalRequestCountMetric: [ // required
126+
* // {
127+
* // Id: "STRING_VALUE", // required
128+
* // MetricStat: {
129+
* // Metric: {
130+
* // Namespace: "STRING_VALUE",
131+
* // MetricName: "STRING_VALUE",
132+
* // Dimensions: [
133+
* // {
134+
* // Name: "STRING_VALUE", // required
135+
* // Value: "STRING_VALUE", // required
136+
* // },
137+
* // ],
138+
* // },
139+
* // Period: Number("int"), // required
140+
* // Stat: "STRING_VALUE", // required
141+
* // Unit: "Microseconds" || "Milliseconds" || "Seconds" || "Bytes" || "Kilobytes" || "Megabytes" || "Gigabytes" || "Terabytes" || "Bits" || "Kilobits" || "Megabits" || "Gigabits" || "Terabits" || "Percent" || "Count" || "Bytes/Second" || "Kilobytes/Second" || "Megabytes/Second" || "Gigabytes/Second" || "Terabytes/Second" || "Bits/Second" || "Kilobits/Second" || "Megabits/Second" || "Gigabits/Second" || "Terabits/Second" || "Count/Second" || "None",
142+
* // },
143+
* // Expression: "STRING_VALUE",
144+
* // Label: "STRING_VALUE",
145+
* // ReturnData: true || false,
146+
* // Period: Number("int"),
147+
* // AccountId: "STRING_VALUE",
148+
* // },
149+
* // ],
150+
* // MonitoredRequestCountMetric: { // MonitoredRequestCountMetricDataQueries Union: only one key present
151+
* // GoodCountMetric: [
152+
* // {
153+
* // Id: "STRING_VALUE", // required
154+
* // MetricStat: {
155+
* // Metric: {
156+
* // Namespace: "STRING_VALUE",
157+
* // MetricName: "STRING_VALUE",
158+
* // Dimensions: [
159+
* // {
160+
* // Name: "STRING_VALUE", // required
161+
* // Value: "STRING_VALUE", // required
162+
* // },
163+
* // ],
164+
* // },
165+
* // Period: Number("int"), // required
166+
* // Stat: "STRING_VALUE", // required
167+
* // Unit: "Microseconds" || "Milliseconds" || "Seconds" || "Bytes" || "Kilobytes" || "Megabytes" || "Gigabytes" || "Terabytes" || "Bits" || "Kilobits" || "Megabits" || "Gigabits" || "Terabits" || "Percent" || "Count" || "Bytes/Second" || "Kilobytes/Second" || "Megabytes/Second" || "Gigabytes/Second" || "Terabytes/Second" || "Bits/Second" || "Kilobits/Second" || "Megabits/Second" || "Gigabits/Second" || "Terabits/Second" || "Count/Second" || "None",
168+
* // },
169+
* // Expression: "STRING_VALUE",
170+
* // Label: "STRING_VALUE",
171+
* // ReturnData: true || false,
172+
* // Period: Number("int"),
173+
* // AccountId: "STRING_VALUE",
174+
* // },
175+
* // ],
176+
* // BadCountMetric: [
177+
* // {
178+
* // Id: "STRING_VALUE", // required
179+
* // MetricStat: {
180+
* // Metric: {
181+
* // Namespace: "STRING_VALUE",
182+
* // MetricName: "STRING_VALUE",
183+
* // Dimensions: [
184+
* // {
185+
* // Name: "STRING_VALUE", // required
186+
* // Value: "STRING_VALUE", // required
187+
* // },
188+
* // ],
189+
* // },
190+
* // Period: Number("int"), // required
191+
* // Stat: "STRING_VALUE", // required
192+
* // Unit: "Microseconds" || "Milliseconds" || "Seconds" || "Bytes" || "Kilobytes" || "Megabytes" || "Gigabytes" || "Terabytes" || "Bits" || "Kilobits" || "Megabits" || "Gigabits" || "Terabits" || "Percent" || "Count" || "Bytes/Second" || "Kilobytes/Second" || "Megabytes/Second" || "Gigabytes/Second" || "Terabytes/Second" || "Bits/Second" || "Kilobits/Second" || "Megabits/Second" || "Gigabits/Second" || "Terabits/Second" || "Count/Second" || "None",
193+
* // },
194+
* // Expression: "STRING_VALUE",
195+
* // Label: "STRING_VALUE",
196+
* // ReturnData: true || false,
197+
* // Period: Number("int"),
198+
* // AccountId: "STRING_VALUE",
199+
* // },
200+
* // ],
201+
* // },
202+
* // },
203+
* // MetricThreshold: Number("double"),
204+
* // ComparisonOperator: "GreaterThanOrEqualTo" || "GreaterThan" || "LessThan" || "LessThanOrEqualTo",
205+
* // },
115206
* // Goal: { // Goal
116207
* // Interval: { // Interval Union: only one key present
117208
* // RollingInterval: { // RollingInterval
118-
* // DurationUnit: "DAY" || "MONTH", // required
209+
* // DurationUnit: "MINUTE" || "HOUR" || "DAY" || "MONTH", // required
119210
* // Duration: Number("int"), // required
120211
* // },
121212
* // CalendarInterval: { // CalendarInterval
122213
* // StartTime: new Date("TIMESTAMP"), // required
123-
* // DurationUnit: "DAY" || "MONTH", // required
214+
* // DurationUnit: "MINUTE" || "HOUR" || "DAY" || "MONTH", // required
124215
* // Duration: Number("int"), // required
125216
* // },
126217
* // },

0 commit comments

Comments
 (0)