@aws-cdk/aws-cloudwatch
Version:
The CDK Construct Library for AWS::CloudWatch
94 lines (93 loc) • 3.25 kB
TypeScript
import { Resource } from '@aws-cdk/core';
import { Construct } from 'constructs';
import { IWidget } from './widget';
/**
* Specify the period for graphs when the CloudWatch dashboard loads
*/
export declare enum PeriodOverride {
/**
* Period of all graphs on the dashboard automatically adapt to the time range of the dashboard.
*/
AUTO = "auto",
/**
* Period set for each graph will be used
*/
INHERIT = "inherit"
}
/**
* Properties for defining a CloudWatch Dashboard
*/
export interface DashboardProps {
/**
* Name of the dashboard.
*
* If set, must only contain alphanumerics, dash (-) and underscore (_)
*
* @default - automatically generated name
*/
readonly dashboardName?: string;
/**
* The start of the time range to use for each widget on the dashboard.
* You can specify start without specifying end to specify a relative time range that ends with the current time.
* In this case, the value of start must begin with -P, and you can use M, H, D, W and M as abbreviations for
* minutes, hours, days, weeks and months. For example, -PT8H shows the last 8 hours and -P3M shows the last three months.
* You can also use start along with an end field, to specify an absolute time range.
* When specifying an absolute time range, use the ISO 8601 format. For example, 2018-12-17T06:00:00.000Z.
*
* @default When the dashboard loads, the start time will be the default time range.
*/
readonly start?: string;
/**
* The end of the time range to use for each widget on the dashboard when the dashboard loads.
* If you specify a value for end, you must also specify a value for start.
* Specify an absolute time in the ISO 8601 format. For example, 2018-12-17T06:00:00.000Z.
*
* @default When the dashboard loads, the end date will be the current time.
*/
readonly end?: string;
/**
* Use this field to specify the period for the graphs when the dashboard loads.
* Specifying `Auto` causes the period of all graphs on the dashboard to automatically adapt to the time range of the dashboard.
* Specifying `Inherit` ensures that the period set for each graph is always obeyed.
*
* @default Auto
*/
readonly periodOverride?: PeriodOverride;
/**
* Initial set of widgets on the dashboard
*
* One array represents a row of widgets.
*
* @default - No widgets
*/
readonly widgets?: IWidget[][];
}
/**
* A CloudWatch dashboard
*/
export declare class Dashboard extends Resource {
/**
* The name of this dashboard
*
* @attribute
*/
readonly dashboardName: string;
/**
* ARN of this dashboard
*
* @attribute
*/
readonly dashboardArn: string;
private readonly rows;
constructor(scope: Construct, id: string, props?: DashboardProps);
/**
* Add a widget to the dashboard.
*
* Widgets given in multiple calls to add() will be laid out stacked on
* top of each other.
*
* Multiple widgets added in the same call to add() will be laid out next
* to each other.
*/
addWidgets(...widgets: IWidget[]): void;
}