import { Command as $Command } from "@smithy/smithy-client"; import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { LightsailClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LightsailClient"; import type { GetDistributionMetricDataRequest, GetDistributionMetricDataResult } from "../models/models_0"; /** * @public */ export type { __MetadataBearer }; export { $Command }; /** * @public * * The input for {@link GetDistributionMetricDataCommand}. */ export interface GetDistributionMetricDataCommandInput extends GetDistributionMetricDataRequest { } /** * @public * * The output of {@link GetDistributionMetricDataCommand}. */ export interface GetDistributionMetricDataCommandOutput extends GetDistributionMetricDataResult, __MetadataBearer { } declare const GetDistributionMetricDataCommand_base: { new (input: GetDistributionMetricDataCommandInput): import("@smithy/smithy-client").CommandImpl; new (input: GetDistributionMetricDataCommandInput): import("@smithy/smithy-client").CommandImpl; getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions; }; /** *

Returns the data points of a specific metric for an Amazon Lightsail content delivery * network (CDN) distribution.

*

Metrics report the utilization of your resources, and the error counts generated by them. * Monitor and collect metric data regularly to maintain the reliability, availability, and * performance of your resources.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { LightsailClient, GetDistributionMetricDataCommand } from "@aws-sdk/client-lightsail"; // ES Modules import * // const { LightsailClient, GetDistributionMetricDataCommand } = require("@aws-sdk/client-lightsail"); // CommonJS import * // import type { LightsailClientConfig } from "@aws-sdk/client-lightsail"; * const config = {}; // type is LightsailClientConfig * const client = new LightsailClient(config); * const input = { // GetDistributionMetricDataRequest * distributionName: "STRING_VALUE", // required * metricName: "Requests" || "BytesDownloaded" || "BytesUploaded" || "TotalErrorRate" || "Http4xxErrorRate" || "Http5xxErrorRate", // required * startTime: new Date("TIMESTAMP"), // required * endTime: new Date("TIMESTAMP"), // required * period: Number("int"), // required * unit: "Seconds" || "Microseconds" || "Milliseconds" || "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", // required * statistics: [ // MetricStatisticList // required * "Minimum" || "Maximum" || "Sum" || "Average" || "SampleCount", * ], * }; * const command = new GetDistributionMetricDataCommand(input); * const response = await client.send(command); * // { // GetDistributionMetricDataResult * // metricName: "Requests" || "BytesDownloaded" || "BytesUploaded" || "TotalErrorRate" || "Http4xxErrorRate" || "Http5xxErrorRate", * // metricData: [ // MetricDatapointList * // { // MetricDatapoint * // average: Number("double"), * // maximum: Number("double"), * // minimum: Number("double"), * // sampleCount: Number("double"), * // sum: Number("double"), * // timestamp: new Date("TIMESTAMP"), * // unit: "Seconds" || "Microseconds" || "Milliseconds" || "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", * // }, * // ], * // }; * * ``` * * @param GetDistributionMetricDataCommandInput - {@link GetDistributionMetricDataCommandInput} * @returns {@link GetDistributionMetricDataCommandOutput} * @see {@link GetDistributionMetricDataCommandInput} for command's `input` shape. * @see {@link GetDistributionMetricDataCommandOutput} for command's `response` shape. * @see {@link LightsailClientResolvedConfig | config} for LightsailClient's `config` shape. * * @throws {@link AccessDeniedException} (client fault) *

Lightsail throws this exception when the user cannot be authenticated or uses invalid * credentials to access a resource.

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

Lightsail throws this exception when user input does not conform to the validation rules * of an input field.

* *

Domain and distribution APIs are only available in the N. Virginia * (us-east-1) Amazon Web Services Region. Please set your Amazon Web Services * Region configuration to us-east-1 to create, view, or edit these * resources.

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

Lightsail throws this exception when it cannot find a resource.

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

Lightsail throws this exception when an operation fails to execute.

* * @throws {@link ServiceException} (server fault) *

A general service exception.

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

Lightsail throws this exception when the user has not been authenticated.

* * @throws {@link LightsailServiceException} *

Base exception class for all service exceptions from Lightsail service.

* * * @public */ export declare class GetDistributionMetricDataCommand extends GetDistributionMetricDataCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: GetDistributionMetricDataRequest; output: GetDistributionMetricDataResult; }; sdk: { input: GetDistributionMetricDataCommandInput; output: GetDistributionMetricDataCommandOutput; }; }; }