import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { UpdateServiceLevelObjectiveInput, UpdateServiceLevelObjectiveOutput } from "../models/models_0"; /** * @public */ export type { __MetadataBearer }; /** * @public * * The input for {@link UpdateServiceLevelObjectiveCommand}. */ export interface UpdateServiceLevelObjectiveCommandInput extends UpdateServiceLevelObjectiveInput { } /** * @public * * The output of {@link UpdateServiceLevelObjectiveCommand}. */ export interface UpdateServiceLevelObjectiveCommandOutput extends UpdateServiceLevelObjectiveOutput, __MetadataBearer { } declare const UpdateServiceLevelObjectiveCommand_base: { new (input: UpdateServiceLevelObjectiveCommandInput): import("@smithy/core/client").CommandImpl; new (input: UpdateServiceLevelObjectiveCommandInput): import("@smithy/core/client").CommandImpl; getEndpointParameterInstructions(): import("@smithy/types").EndpointParameterInstructions; }; /** *

Updates an existing service level objective (SLO). If you omit parameters, the previous values of those parameters are retained.

You cannot change from a period-based SLO to a request-based SLO, or change from a request-based SLO to a period-based SLO.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { ApplicationSignalsClient, UpdateServiceLevelObjectiveCommand } from "@aws-sdk/client-application-signals"; // ES Modules import * // const { ApplicationSignalsClient, UpdateServiceLevelObjectiveCommand } = require("@aws-sdk/client-application-signals"); // CommonJS import * // import type { ApplicationSignalsClientConfig } from "@aws-sdk/client-application-signals"; * const config = {}; // type is ApplicationSignalsClientConfig * const client = new ApplicationSignalsClient(config); * const input = { // UpdateServiceLevelObjectiveInput * Id: "STRING_VALUE", // required * Description: "STRING_VALUE", * SliConfig: { // ServiceLevelIndicatorConfig * SliMetricConfig: { // ServiceLevelIndicatorMetricConfig * KeyAttributes: { // Attributes * "": "STRING_VALUE", * }, * OperationName: "STRING_VALUE", * MetricType: "LATENCY" || "AVAILABILITY", * MetricName: "STRING_VALUE", * Statistic: "STRING_VALUE", * PeriodSeconds: Number("int"), * MetricSource: { // MetricSource * MetricSourceKeyAttributes: { // required * "": "STRING_VALUE", * }, * MetricSourceAttributes: { * "": "STRING_VALUE", * }, * }, * MetricDataQueries: [ // MetricDataQueries * { // MetricDataQuery * Id: "STRING_VALUE", // required * MetricStat: { // MetricStat * Metric: { // Metric * Namespace: "STRING_VALUE", * MetricName: "STRING_VALUE", * Dimensions: [ // Dimensions * { // Dimension * Name: "STRING_VALUE", // required * Value: "STRING_VALUE", // required * }, * ], * }, * Period: Number("int"), // required * Stat: "STRING_VALUE", // required * 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", * }, * Expression: "STRING_VALUE", * Label: "STRING_VALUE", * ReturnData: true || false, * Period: Number("int"), * AccountId: "STRING_VALUE", * }, * ], * DependencyConfig: { // DependencyConfig * DependencyKeyAttributes: { // required * "": "STRING_VALUE", * }, * DependencyOperationName: "STRING_VALUE", // required * }, * CompositeSliConfig: { // CompositeSliConfig * SelectionConfig: { // SelectionConfig * Type: "EXPLICIT" || "PREFIX" || "REGEX", // required * Pattern: "STRING_VALUE", * }, * Components: [ // CompositeSliComponents * { // CompositeSliComponent Union: only one key present * OperationName: "STRING_VALUE", * }, * ], * }, * }, * MetricThreshold: Number("double"), * ComparisonOperator: "GreaterThanOrEqualTo" || "GreaterThan" || "LessThan" || "LessThanOrEqualTo", * }, * RequestBasedSliConfig: { // RequestBasedServiceLevelIndicatorConfig * RequestBasedSliMetricConfig: { // RequestBasedServiceLevelIndicatorMetricConfig * KeyAttributes: { * "": "STRING_VALUE", * }, * OperationName: "STRING_VALUE", * MetricType: "LATENCY" || "AVAILABILITY", * TotalRequestCountMetric: [ * { * Id: "STRING_VALUE", // required * MetricStat: { * Metric: { * Namespace: "STRING_VALUE", * MetricName: "STRING_VALUE", * Dimensions: [ * { * Name: "STRING_VALUE", // required * Value: "STRING_VALUE", // required * }, * ], * }, * Period: Number("int"), // required * Stat: "STRING_VALUE", // required * 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", * }, * Expression: "STRING_VALUE", * Label: "STRING_VALUE", * ReturnData: true || false, * Period: Number("int"), * AccountId: "STRING_VALUE", * }, * ], * MonitoredRequestCountMetric: { // MonitoredRequestCountMetricDataQueries Union: only one key present * GoodCountMetric: [ * { * Id: "STRING_VALUE", // required * MetricStat: { * Metric: { * Namespace: "STRING_VALUE", * MetricName: "STRING_VALUE", * Dimensions: [ * { * Name: "STRING_VALUE", // required * Value: "STRING_VALUE", // required * }, * ], * }, * Period: Number("int"), // required * Stat: "STRING_VALUE", // required * 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", * }, * Expression: "STRING_VALUE", * Label: "STRING_VALUE", * ReturnData: true || false, * Period: Number("int"), * AccountId: "STRING_VALUE", * }, * ], * BadCountMetric: [ * { * Id: "STRING_VALUE", // required * MetricStat: { * Metric: { * Namespace: "STRING_VALUE", * MetricName: "STRING_VALUE", * Dimensions: [ * { * Name: "STRING_VALUE", // required * Value: "STRING_VALUE", // required * }, * ], * }, * Period: Number("int"), // required * Stat: "STRING_VALUE", // required * 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", * }, * Expression: "STRING_VALUE", * Label: "STRING_VALUE", * ReturnData: true || false, * Period: Number("int"), * AccountId: "STRING_VALUE", * }, * ], * }, * DependencyConfig: { * DependencyKeyAttributes: "", // required * DependencyOperationName: "STRING_VALUE", // required * }, * MetricSource: { * MetricSourceKeyAttributes: "", // required * MetricSourceAttributes: "", * }, * MetricName: "STRING_VALUE", * CompositeSliConfig: { * SelectionConfig: { * Type: "EXPLICIT" || "PREFIX" || "REGEX", // required * Pattern: "STRING_VALUE", * }, * Components: [ * {// Union: only one key present * OperationName: "STRING_VALUE", * }, * ], * }, * }, * MetricThreshold: Number("double"), * ComparisonOperator: "GreaterThanOrEqualTo" || "GreaterThan" || "LessThan" || "LessThanOrEqualTo", * }, * Goal: { // Goal * Interval: { // Interval Union: only one key present * RollingInterval: { // RollingInterval * DurationUnit: "MINUTE" || "HOUR" || "DAY" || "MONTH", // required * Duration: Number("int"), // required * }, * CalendarInterval: { // CalendarInterval * StartTime: new Date("TIMESTAMP"), // required * DurationUnit: "MINUTE" || "HOUR" || "DAY" || "MONTH", // required * Duration: Number("int"), // required * }, * }, * AttainmentGoal: Number("double"), * WarningThreshold: Number("double"), * }, * BurnRateConfigurations: [ // BurnRateConfigurations * { // BurnRateConfiguration * LookBackWindowMinutes: Number("int"), // required * }, * ], * AutoInvestigationEnabled: true || false, * }; * const command = new UpdateServiceLevelObjectiveCommand(input); * const response = await client.send(command); * // { // UpdateServiceLevelObjectiveOutput * // Slo: { // ServiceLevelObjective * // Arn: "STRING_VALUE", // required * // Name: "STRING_VALUE", // required * // Description: "STRING_VALUE", * // CreatedTime: new Date("TIMESTAMP"), // required * // LastUpdatedTime: new Date("TIMESTAMP"), // required * // Sli: { // ServiceLevelIndicator * // SliMetric: { // ServiceLevelIndicatorMetric * // KeyAttributes: { // Attributes * // "": "STRING_VALUE", * // }, * // OperationName: "STRING_VALUE", * // MetricType: "LATENCY" || "AVAILABILITY", * // MetricDataQueries: [ // MetricDataQueries // required * // { // MetricDataQuery * // Id: "STRING_VALUE", // required * // MetricStat: { // MetricStat * // Metric: { // Metric * // Namespace: "STRING_VALUE", * // MetricName: "STRING_VALUE", * // Dimensions: [ // Dimensions * // { // Dimension * // Name: "STRING_VALUE", // required * // Value: "STRING_VALUE", // required * // }, * // ], * // }, * // Period: Number("int"), // required * // Stat: "STRING_VALUE", // required * // 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", * // }, * // Expression: "STRING_VALUE", * // Label: "STRING_VALUE", * // ReturnData: true || false, * // Period: Number("int"), * // AccountId: "STRING_VALUE", * // }, * // ], * // DependencyConfig: { // DependencyConfig * // DependencyKeyAttributes: { // required * // "": "STRING_VALUE", * // }, * // DependencyOperationName: "STRING_VALUE", // required * // }, * // MetricSource: { // MetricSource * // MetricSourceKeyAttributes: { // required * // "": "STRING_VALUE", * // }, * // MetricSourceAttributes: { * // "": "STRING_VALUE", * // }, * // }, * // CompositeSliConfig: { // CompositeSliConfig * // SelectionConfig: { // SelectionConfig * // Type: "EXPLICIT" || "PREFIX" || "REGEX", // required * // Pattern: "STRING_VALUE", * // }, * // Components: [ // CompositeSliComponents * // { // CompositeSliComponent Union: only one key present * // OperationName: "STRING_VALUE", * // }, * // ], * // }, * // }, * // MetricThreshold: Number("double"), // required * // ComparisonOperator: "GreaterThanOrEqualTo" || "GreaterThan" || "LessThan" || "LessThanOrEqualTo", // required * // }, * // RequestBasedSli: { // RequestBasedServiceLevelIndicator * // RequestBasedSliMetric: { // RequestBasedServiceLevelIndicatorMetric * // KeyAttributes: { * // "": "STRING_VALUE", * // }, * // OperationName: "STRING_VALUE", * // MetricType: "LATENCY" || "AVAILABILITY", * // TotalRequestCountMetric: [ // required * // { * // Id: "STRING_VALUE", // required * // MetricStat: { * // Metric: { * // Namespace: "STRING_VALUE", * // MetricName: "STRING_VALUE", * // Dimensions: [ * // { * // Name: "STRING_VALUE", // required * // Value: "STRING_VALUE", // required * // }, * // ], * // }, * // Period: Number("int"), // required * // Stat: "STRING_VALUE", // required * // 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", * // }, * // Expression: "STRING_VALUE", * // Label: "STRING_VALUE", * // ReturnData: true || false, * // Period: Number("int"), * // AccountId: "STRING_VALUE", * // }, * // ], * // MonitoredRequestCountMetric: { // MonitoredRequestCountMetricDataQueries Union: only one key present * // GoodCountMetric: [ * // { * // Id: "STRING_VALUE", // required * // MetricStat: { * // Metric: { * // Namespace: "STRING_VALUE", * // MetricName: "STRING_VALUE", * // Dimensions: [ * // { * // Name: "STRING_VALUE", // required * // Value: "STRING_VALUE", // required * // }, * // ], * // }, * // Period: Number("int"), // required * // Stat: "STRING_VALUE", // required * // 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", * // }, * // Expression: "STRING_VALUE", * // Label: "STRING_VALUE", * // ReturnData: true || false, * // Period: Number("int"), * // AccountId: "STRING_VALUE", * // }, * // ], * // BadCountMetric: [ * // { * // Id: "STRING_VALUE", // required * // MetricStat: { * // Metric: { * // Namespace: "STRING_VALUE", * // MetricName: "STRING_VALUE", * // Dimensions: [ * // { * // Name: "STRING_VALUE", // required * // Value: "STRING_VALUE", // required * // }, * // ], * // }, * // Period: Number("int"), // required * // Stat: "STRING_VALUE", // required * // 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", * // }, * // Expression: "STRING_VALUE", * // Label: "STRING_VALUE", * // ReturnData: true || false, * // Period: Number("int"), * // AccountId: "STRING_VALUE", * // }, * // ], * // }, * // DependencyConfig: { * // DependencyKeyAttributes: "", // required * // DependencyOperationName: "STRING_VALUE", // required * // }, * // MetricSource: { * // MetricSourceKeyAttributes: "", // required * // MetricSourceAttributes: "", * // }, * // CompositeSliConfig: { * // SelectionConfig: { * // Type: "EXPLICIT" || "PREFIX" || "REGEX", // required * // Pattern: "STRING_VALUE", * // }, * // Components: [ * // {// Union: only one key present * // OperationName: "STRING_VALUE", * // }, * // ], * // }, * // }, * // MetricThreshold: Number("double"), * // ComparisonOperator: "GreaterThanOrEqualTo" || "GreaterThan" || "LessThan" || "LessThanOrEqualTo", * // }, * // EvaluationType: "PeriodBased" || "RequestBased", * // Goal: { // Goal * // Interval: { // Interval Union: only one key present * // RollingInterval: { // RollingInterval * // DurationUnit: "MINUTE" || "HOUR" || "DAY" || "MONTH", // required * // Duration: Number("int"), // required * // }, * // CalendarInterval: { // CalendarInterval * // StartTime: new Date("TIMESTAMP"), // required * // DurationUnit: "MINUTE" || "HOUR" || "DAY" || "MONTH", // required * // Duration: Number("int"), // required * // }, * // }, * // AttainmentGoal: Number("double"), * // WarningThreshold: Number("double"), * // }, * // BurnRateConfigurations: [ // BurnRateConfigurations * // { // BurnRateConfiguration * // LookBackWindowMinutes: Number("int"), // required * // }, * // ], * // MetricSourceType: "ServiceOperation" || "CloudWatchMetric" || "ServiceDependency" || "AppMonitor" || "Canary" || "Service", * // AutoInvestigationEnabled: true || false, * // }, * // }; * * ``` * * @param UpdateServiceLevelObjectiveCommandInput - {@link UpdateServiceLevelObjectiveCommandInput} * @returns {@link UpdateServiceLevelObjectiveCommandOutput} * @see {@link UpdateServiceLevelObjectiveCommandInput} for command's `input` shape. * @see {@link UpdateServiceLevelObjectiveCommandOutput} for command's `response` shape. * @see {@link ApplicationSignalsClientResolvedConfig | config} for ApplicationSignalsClient's `config` shape. * * @throws {@link ResourceNotFoundException} (client fault) *

Resource not found.

* * @throws {@link ThrottlingException} (client fault) *

The request was throttled because of quota limits.

* * @throws {@link ValidationException} (client fault) *

The resource is not valid.

* * @throws {@link ApplicationSignalsServiceException} *

Base exception class for all service exceptions from ApplicationSignals service.

* * * @public */ export declare class UpdateServiceLevelObjectiveCommand extends UpdateServiceLevelObjectiveCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: UpdateServiceLevelObjectiveInput; output: UpdateServiceLevelObjectiveOutput; }; sdk: { input: UpdateServiceLevelObjectiveCommandInput; output: UpdateServiceLevelObjectiveCommandOutput; }; }; }