UNPKG

@cdklabs/cdk-amazonmq

Version:
99 lines (98 loc) 4.86 kB
import { Metric, MetricOptions } from "aws-cdk-lib/aws-cloudwatch"; import { ISecurityGroup } from "aws-cdk-lib/aws-ec2"; import { Construct } from "constructs"; import { Admin } from "./admin"; import { IRabbitMqBroker } from "./rabbitmq-broker"; import { IRabbitMqBrokerConfiguration } from "./rabbitmq-broker-configuration"; import { RabbitMqBrokerEndpoints } from "./rabbitmq-broker-endpoints"; import { RabbitMqBrokerEngineVersion } from "./rabbitmq-broker-engine-version"; import { BrokerDeploymentBase, BrokerDeploymentProps, IBrokerDeployment } from "../broker-deployment"; import { BrokerDeploymentMode } from "../broker-deployment-mode"; import { IRabbitMqBrokerUserManagement } from "./usermanagement/rabbitmq-broker-user-management"; export interface RabbitMqCloudwatchLogsExports { /** * Export general logs to CloudWatch. * * @default - undefined; do not export general logs. */ readonly general?: boolean; } export interface RabbitMqBrokerDeploymentProps extends BrokerDeploymentProps { /** * Sets the credentials of the broker administrative user. * * @deprecated - prefer userManagement */ readonly admin?: Admin; /** * Sets the RabbitMq broker user management */ readonly userManagement?: IRabbitMqBrokerUserManagement; /** * Sets the version of the broker engine. */ readonly version: RabbitMqBrokerEngineVersion; /** * Sets the configuration of the broker. */ readonly configuration?: IRabbitMqBrokerConfiguration; /** * Sets the CloudWatch logs exports for the broker. */ readonly cloudwatchLogsExports?: RabbitMqCloudwatchLogsExports; } export interface RabbitMqBrokerDeploymentBaseProps extends RabbitMqBrokerDeploymentProps { readonly deploymentMode: BrokerDeploymentMode; } export interface IRabbitMqBrokerDeployment extends IBrokerDeployment { metricExchangeCount(props?: MetricOptions): Metric; metricQueueCount(props?: MetricOptions): Metric; metricConnectionCount(props?: MetricOptions): Metric; metricChannelCount(props?: MetricOptions): Metric; metricConsumerCount(props?: MetricOptions): Metric; metricMessageCount(props?: MetricOptions): Metric; metricMessageReadyCount(props?: MetricOptions): Metric; metricMessageUnacknowledgedCount(props?: MetricOptions): Metric; metricPublishRate(props?: MetricOptions): Metric; metricConfirmRate(props?: MetricOptions): Metric; metricAckRate(props?: MetricOptions): Metric; metricSystemCpuUtilization(props?: MetricOptions): Metric; metricRabbitMQMemLimit(props?: MetricOptions): Metric; metricRabbitMQMemUsed(props?: MetricOptions): Metric; metricSystemCpuUtilization(props?: MetricOptions): Metric; metricRabbitMQMemLimit(props?: MetricOptions): Metric; metricRabbitMQMemUsed(props?: MetricOptions): Metric; metricRabbitMQDiskFreeLimit(props?: MetricOptions): Metric; metricRabbitMQDiskFree(props?: MetricOptions): Metric; metricRabbitMQFdUsed(props?: MetricOptions): Metric; metricRabbitMQIOReadAverageTime(props?: MetricOptions): Metric; metricRabbitMQIOWriteAverageTime(props?: MetricOptions): Metric; } export declare abstract class RabbitMqBrokerDeploymentBase extends BrokerDeploymentBase implements IRabbitMqBrokerDeployment, IRabbitMqBroker { /** * * @internal */ protected static _fromRabbitMqBrokerDeploymentBase(scope: Construct, logicalId: string, arn?: string, name?: string, id?: string, securityGroups?: ISecurityGroup[], urlSuffix?: string): IRabbitMqBrokerDeployment; readonly endpoints: RabbitMqBrokerEndpoints; constructor(scope: Construct, id: string, props: RabbitMqBrokerDeploymentBaseProps); metricExchangeCount(props?: MetricOptions): Metric; metricQueueCount(props?: MetricOptions): Metric; metricConnectionCount(props?: MetricOptions): Metric; metricChannelCount(props?: MetricOptions): Metric; metricConsumerCount(props?: MetricOptions): Metric; metricMessageCount(props?: MetricOptions): Metric; metricMessageReadyCount(props?: MetricOptions): Metric; metricMessageUnacknowledgedCount(props?: MetricOptions): Metric; metricPublishRate(props?: MetricOptions): Metric; metricConfirmRate(props?: MetricOptions): Metric; metricAckRate(props?: MetricOptions): Metric; metricSystemCpuUtilization(props?: MetricOptions): Metric; metricRabbitMQMemLimit(props?: MetricOptions): Metric; metricRabbitMQMemUsed(props?: MetricOptions): Metric; metricRabbitMQDiskFreeLimit(props?: MetricOptions): Metric; metricRabbitMQDiskFree(props?: MetricOptions): Metric; metricRabbitMQFdUsed(props?: MetricOptions): Metric; metricRabbitMQIOReadAverageTime(props?: MetricOptions): Metric; metricRabbitMQIOWriteAverageTime(props?: MetricOptions): Metric; }