aws-cdk-lib
Version:
Version 2 of the AWS Cloud Development Kit library
869 lines • 91.3 kB
TypeScript
import * as cdk from "../../core/lib";
import * as constructs from "constructs";
import * as cfn_parse from "../../core/lib/helpers-internal";
import { IOrganizationCentralizationRuleRef, IOrganizationTelemetryRuleRef, IS3TableIntegrationRef, ITelemetryPipelinesRef, ITelemetryRuleRef, OrganizationCentralizationRuleReference, OrganizationTelemetryRuleReference, S3TableIntegrationReference, TelemetryPipelinesReference, TelemetryRuleReference } from "../../interfaces/generated/aws-observabilityadmin-interfaces.generated";
/**
* Defines how telemetry data should be centralized across an AWS Organization, including source and destination configurations.
*
* @cloudformationResource AWS::ObservabilityAdmin::OrganizationCentralizationRule
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-observabilityadmin-organizationcentralizationrule.html
*/
export declare class CfnOrganizationCentralizationRule extends cdk.CfnResource implements cdk.IInspectable, IOrganizationCentralizationRuleRef, cdk.ITaggableV2 {
/**
* The CloudFormation resource type name for this resource class.
*/
static readonly CFN_RESOURCE_TYPE_NAME: string;
/**
* Build a CfnOrganizationCentralizationRule from CloudFormation properties
*
* A factory method that creates a new instance of this class from an object
* containing the CloudFormation properties of this resource.
* Used in the @aws-cdk/cloudformation-include module.
*
* @internal
*/
static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnOrganizationCentralizationRule;
/**
* Checks whether the given object is a CfnOrganizationCentralizationRule
*/
static isCfnOrganizationCentralizationRule(x: any): x is CfnOrganizationCentralizationRule;
/**
* The Amazon Resource Name (ARN) of the organization centralization rule.
*
* @cloudformationAttribute RuleArn
*/
readonly attrRuleArn: string;
/**
* Tag Manager which manages the tags for this resource
*/
readonly cdkTagManager: cdk.TagManager;
rule: CfnOrganizationCentralizationRule.CentralizationRuleProperty | cdk.IResolvable;
/**
* The name of the organization centralization rule.
*/
ruleName: string;
/**
* A key-value pair to filter resources based on tags associated with the resource.
*/
tags?: Array<cdk.CfnTag>;
/**
* Create a new `AWS::ObservabilityAdmin::OrganizationCentralizationRule`.
*
* @param scope Scope in which this resource is defined
* @param id Construct identifier for this resource (unique in its scope)
* @param props Resource properties
*/
constructor(scope: constructs.Construct, id: string, props: CfnOrganizationCentralizationRuleProps);
get organizationCentralizationRuleRef(): OrganizationCentralizationRuleReference;
protected get cfnProperties(): Record<string, any>;
/**
* Examines the CloudFormation resource and discloses attributes
*
* @param inspector tree inspector to collect and process attributes
*/
inspect(inspector: cdk.TreeInspector): void;
protected renderProperties(props: Record<string, any>): Record<string, any>;
}
export declare namespace CfnOrganizationCentralizationRule {
/**
* Defines how telemetry data should be centralized across an AWS Organization, including source and destination configurations.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationcentralizationrule-centralizationrule.html
*/
interface CentralizationRuleProperty {
/**
* Configuration determining where the telemetry data should be centralized, backed up, as well as encryption configuration for the primary and backup destinations.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationcentralizationrule-centralizationrule.html#cfn-observabilityadmin-organizationcentralizationrule-centralizationrule-destination
*/
readonly destination: CfnOrganizationCentralizationRule.CentralizationRuleDestinationProperty | cdk.IResolvable;
/**
* Configuration determining the source of the telemetry data to be centralized.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationcentralizationrule-centralizationrule.html#cfn-observabilityadmin-organizationcentralizationrule-centralizationrule-source
*/
readonly source: CfnOrganizationCentralizationRule.CentralizationRuleSourceProperty | cdk.IResolvable;
}
/**
* Configuration specifying the source of telemetry data to be centralized.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationcentralizationrule-centralizationrulesource.html
*/
interface CentralizationRuleSourceProperty {
/**
* The list of source regions from which telemetry data should be centralized.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationcentralizationrule-centralizationrulesource.html#cfn-observabilityadmin-organizationcentralizationrule-centralizationrulesource-regions
*/
readonly regions: Array<string>;
/**
* The organizational scope from which telemetry data should be centralized, specified using organization id, accounts or organizational unit ids.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationcentralizationrule-centralizationrulesource.html#cfn-observabilityadmin-organizationcentralizationrule-centralizationrulesource-scope
*/
readonly scope?: string;
/**
* Log specific configuration for centralization source log groups.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationcentralizationrule-centralizationrulesource.html#cfn-observabilityadmin-organizationcentralizationrule-centralizationrulesource-sourcelogsconfiguration
*/
readonly sourceLogsConfiguration?: cdk.IResolvable | CfnOrganizationCentralizationRule.SourceLogsConfigurationProperty;
}
/**
* Configuration for selecting and handling source log groups for centralization.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationcentralizationrule-sourcelogsconfiguration.html
*/
interface SourceLogsConfigurationProperty {
/**
* A strategy determining whether to centralize source log groups that are encrypted with customer managed KMS keys (CMK).
*
* ALLOW will consider CMK encrypted source log groups for centralization while SKIP will skip CMK encrypted source log groups from centralization.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationcentralizationrule-sourcelogsconfiguration.html#cfn-observabilityadmin-organizationcentralizationrule-sourcelogsconfiguration-encryptedloggroupstrategy
*/
readonly encryptedLogGroupStrategy: string;
/**
* The selection criteria that specifies which source log groups to centralize.
*
* The selection criteria uses the same format as OAM link filters.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationcentralizationrule-sourcelogsconfiguration.html#cfn-observabilityadmin-organizationcentralizationrule-sourcelogsconfiguration-loggroupselectioncriteria
*/
readonly logGroupSelectionCriteria: string;
}
/**
* Configuration specifying the primary destination for centralized telemetry data.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationcentralizationrule-centralizationruledestination.html
*/
interface CentralizationRuleDestinationProperty {
/**
* The destination account (within the organization) to which the telemetry data should be centralized.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationcentralizationrule-centralizationruledestination.html#cfn-observabilityadmin-organizationcentralizationrule-centralizationruledestination-account
*/
readonly account?: string;
/**
* Log specific configuration for centralization destination log groups.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationcentralizationrule-centralizationruledestination.html#cfn-observabilityadmin-organizationcentralizationrule-centralizationruledestination-destinationlogsconfiguration
*/
readonly destinationLogsConfiguration?: CfnOrganizationCentralizationRule.DestinationLogsConfigurationProperty | cdk.IResolvable;
/**
* The primary destination region to which telemetry data should be centralized.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationcentralizationrule-centralizationruledestination.html#cfn-observabilityadmin-organizationcentralizationrule-centralizationruledestination-region
*/
readonly region: string;
}
/**
* Configuration for centralization destination log groups, including encryption and backup settings.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationcentralizationrule-destinationlogsconfiguration.html
*/
interface DestinationLogsConfigurationProperty {
/**
* Configuration defining the backup region and an optional KMS key for the backup destination.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationcentralizationrule-destinationlogsconfiguration.html#cfn-observabilityadmin-organizationcentralizationrule-destinationlogsconfiguration-backupconfiguration
*/
readonly backupConfiguration?: cdk.IResolvable | CfnOrganizationCentralizationRule.LogsBackupConfigurationProperty;
/**
* The encryption configuration for centralization destination log groups.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationcentralizationrule-destinationlogsconfiguration.html#cfn-observabilityadmin-organizationcentralizationrule-destinationlogsconfiguration-logsencryptionconfiguration
*/
readonly logsEncryptionConfiguration?: cdk.IResolvable | CfnOrganizationCentralizationRule.LogsEncryptionConfigurationProperty;
}
/**
* Configuration for encrypting centralized log groups.
*
* This configuration is only applied to destination log groups for which the corresponding source log groups are encrypted using Customer Managed KMS Keys.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationcentralizationrule-logsencryptionconfiguration.html
*/
interface LogsEncryptionConfigurationProperty {
/**
* Conflict resolution strategy for centralization if the encryption strategy is set to CUSTOMER_MANAGED and the destination log group is encrypted with an AWS_OWNED KMS Key.
*
* ALLOW lets centralization go through while SKIP prevents centralization into the destination log group.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationcentralizationrule-logsencryptionconfiguration.html#cfn-observabilityadmin-organizationcentralizationrule-logsencryptionconfiguration-encryptionconflictresolutionstrategy
*/
readonly encryptionConflictResolutionStrategy?: string;
/**
* Configuration that determines the encryption strategy of the destination log groups.
*
* CUSTOMER_MANAGED uses the configured KmsKeyArn to encrypt newly created destination log groups.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationcentralizationrule-logsencryptionconfiguration.html#cfn-observabilityadmin-organizationcentralizationrule-logsencryptionconfiguration-encryptionstrategy
*/
readonly encryptionStrategy: string;
/**
* KMS Key ARN belonging to the primary destination account and region, to encrypt newly created central log groups in the primary destination.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationcentralizationrule-logsencryptionconfiguration.html#cfn-observabilityadmin-organizationcentralizationrule-logsencryptionconfiguration-kmskeyarn
*/
readonly kmsKeyArn?: string;
}
/**
* Configuration for backing up centralized log data to a secondary region.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationcentralizationrule-logsbackupconfiguration.html
*/
interface LogsBackupConfigurationProperty {
/**
* KMS Key ARN belonging to the primary destination account and backup region, to encrypt newly created central log groups in the backup destination.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationcentralizationrule-logsbackupconfiguration.html#cfn-observabilityadmin-organizationcentralizationrule-logsbackupconfiguration-kmskeyarn
*/
readonly kmsKeyArn?: string;
/**
* Logs specific backup destination region within the primary destination account to which log data should be centralized.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationcentralizationrule-logsbackupconfiguration.html#cfn-observabilityadmin-organizationcentralizationrule-logsbackupconfiguration-region
*/
readonly region: string;
}
}
/**
* Properties for defining a `CfnOrganizationCentralizationRule`
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-observabilityadmin-organizationcentralizationrule.html
*/
export interface CfnOrganizationCentralizationRuleProps {
/**
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-observabilityadmin-organizationcentralizationrule.html#cfn-observabilityadmin-organizationcentralizationrule-rule
*/
readonly rule: CfnOrganizationCentralizationRule.CentralizationRuleProperty | cdk.IResolvable;
/**
* The name of the organization centralization rule.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-observabilityadmin-organizationcentralizationrule.html#cfn-observabilityadmin-organizationcentralizationrule-rulename
*/
readonly ruleName: string;
/**
* A key-value pair to filter resources based on tags associated with the resource.
*
* For more information about tags, see [What are tags?](https://docs.aws.amazon.com/whitepapers/latest/tagging-best-practices/what-are-tags.html)
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-observabilityadmin-organizationcentralizationrule.html#cfn-observabilityadmin-organizationcentralizationrule-tags
*/
readonly tags?: Array<cdk.CfnTag>;
}
/**
* Retrieves the details of a specific organization centralization rule.
*
* This operation can only be called by the organization's management account or a delegated administrator account.
*
* @cloudformationResource AWS::ObservabilityAdmin::OrganizationTelemetryRule
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-observabilityadmin-organizationtelemetryrule.html
*/
export declare class CfnOrganizationTelemetryRule extends cdk.CfnResource implements cdk.IInspectable, IOrganizationTelemetryRuleRef, cdk.ITaggableV2 {
/**
* The CloudFormation resource type name for this resource class.
*/
static readonly CFN_RESOURCE_TYPE_NAME: string;
/**
* Build a CfnOrganizationTelemetryRule from CloudFormation properties
*
* A factory method that creates a new instance of this class from an object
* containing the CloudFormation properties of this resource.
* Used in the @aws-cdk/cloudformation-include module.
*
* @internal
*/
static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnOrganizationTelemetryRule;
/**
* Checks whether the given object is a CfnOrganizationTelemetryRule
*/
static isCfnOrganizationTelemetryRule(x: any): x is CfnOrganizationTelemetryRule;
/**
* The arn of the organization telemetry rule
*
* @cloudformationAttribute RuleArn
*/
readonly attrRuleArn: string;
/**
* Tag Manager which manages the tags for this resource
*/
readonly cdkTagManager: cdk.TagManager;
/**
* The name of the organization telemetry rule.
*/
rule: cdk.IResolvable | CfnOrganizationTelemetryRule.TelemetryRuleProperty;
/**
* The name of the organization centralization rule.
*/
ruleName: string;
/**
* Lists all tags attached to the specified resource.
*/
tags?: Array<cdk.CfnTag>;
/**
* Create a new `AWS::ObservabilityAdmin::OrganizationTelemetryRule`.
*
* @param scope Scope in which this resource is defined
* @param id Construct identifier for this resource (unique in its scope)
* @param props Resource properties
*/
constructor(scope: constructs.Construct, id: string, props: CfnOrganizationTelemetryRuleProps);
get organizationTelemetryRuleRef(): OrganizationTelemetryRuleReference;
protected get cfnProperties(): Record<string, any>;
/**
* Examines the CloudFormation resource and discloses attributes
*
* @param inspector tree inspector to collect and process attributes
*/
inspect(inspector: cdk.TreeInspector): void;
protected renderProperties(props: Record<string, any>): Record<string, any>;
}
export declare namespace CfnOrganizationTelemetryRule {
/**
* Defines how telemetry should be configured for specific AWS resources.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-telemetryrule.html
*/
interface TelemetryRuleProperty {
/**
* Configuration specifying where and how the telemetry data should be delivered.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-telemetryrule.html#cfn-observabilityadmin-organizationtelemetryrule-telemetryrule-destinationconfiguration
*/
readonly destinationConfiguration?: cdk.IResolvable | CfnOrganizationTelemetryRule.TelemetryDestinationConfigurationProperty;
/**
* The type of AWS resource to configure telemetry for (e.g., "AWS::EC2::VPC", "AWS::EKS::Cluster", "AWS::WAFv2::WebACL").
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-telemetryrule.html#cfn-observabilityadmin-organizationtelemetryrule-telemetryrule-resourcetype
*/
readonly resourceType: string;
/**
* The organizational scope to which the rule applies, specified using accounts or organizational units.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-telemetryrule.html#cfn-observabilityadmin-organizationtelemetryrule-telemetryrule-scope
*/
readonly scope?: string;
/**
* Criteria for selecting which resources the rule applies to, such as resource tags.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-telemetryrule.html#cfn-observabilityadmin-organizationtelemetryrule-telemetryrule-selectioncriteria
*/
readonly selectionCriteria?: string;
/**
* The specific telemetry source types to configure for the resource, such as VPC_FLOW_LOGS or EKS_AUDIT_LOGS.
*
* TelemetrySourceTypes must be correlated with the specific resource type.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-telemetryrule.html#cfn-observabilityadmin-organizationtelemetryrule-telemetryrule-telemetrysourcetypes
*/
readonly telemetrySourceTypes?: Array<string>;
/**
* The type of telemetry to collect (Logs, Metrics, or Traces).
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-telemetryrule.html#cfn-observabilityadmin-organizationtelemetryrule-telemetryrule-telemetrytype
*/
readonly telemetryType: string;
}
/**
* Configuration specifying where and how telemetry data should be delivered for AWS resources.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-telemetrydestinationconfiguration.html
*/
interface TelemetryDestinationConfigurationProperty {
/**
* Configuration parameters specific to AWS CloudTrail when CloudTrail is the source type.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-telemetrydestinationconfiguration.html#cfn-observabilityadmin-organizationtelemetryrule-telemetrydestinationconfiguration-cloudtrailparameters
*/
readonly cloudtrailParameters?: CfnOrganizationTelemetryRule.CloudtrailParametersProperty | cdk.IResolvable;
/**
* The pattern used to generate the destination path or name, supporting macros like <resourceId> and <accountId>.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-telemetrydestinationconfiguration.html#cfn-observabilityadmin-organizationtelemetryrule-telemetrydestinationconfiguration-destinationpattern
*/
readonly destinationPattern?: string;
/**
* The type of destination for the telemetry data (e.g., "Amazon CloudWatch Logs", "S3").
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-telemetrydestinationconfiguration.html#cfn-observabilityadmin-organizationtelemetryrule-telemetrydestinationconfiguration-destinationtype
*/
readonly destinationType?: string;
/**
* Configuration parameters specific to ELB load balancer logging when ELB is the resource type.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-telemetrydestinationconfiguration.html#cfn-observabilityadmin-organizationtelemetryrule-telemetrydestinationconfiguration-elbloadbalancerloggingparameters
*/
readonly elbLoadBalancerLoggingParameters?: CfnOrganizationTelemetryRule.ELBLoadBalancerLoggingParametersProperty | cdk.IResolvable;
/**
* The number of days to retain the telemetry data in the destination.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-telemetrydestinationconfiguration.html#cfn-observabilityadmin-organizationtelemetryrule-telemetrydestinationconfiguration-retentionindays
*/
readonly retentionInDays?: number;
/**
* Configuration parameters specific to VPC Flow Logs when VPC is the resource type.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-telemetrydestinationconfiguration.html#cfn-observabilityadmin-organizationtelemetryrule-telemetrydestinationconfiguration-vpcflowlogparameters
*/
readonly vpcFlowLogParameters?: cdk.IResolvable | CfnOrganizationTelemetryRule.VPCFlowLogParametersProperty;
/**
* Configuration parameters specific to WAF logging when WAF is the resource type.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-telemetrydestinationconfiguration.html#cfn-observabilityadmin-organizationtelemetryrule-telemetrydestinationconfiguration-wafloggingparameters
*/
readonly wafLoggingParameters?: cdk.IResolvable | CfnOrganizationTelemetryRule.WAFLoggingParametersProperty;
}
/**
* Configuration parameters specific to VPC Flow Logs.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-vpcflowlogparameters.html
*/
interface VPCFlowLogParametersProperty {
/**
* The format in which VPC Flow Log entries should be logged.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-vpcflowlogparameters.html#cfn-observabilityadmin-organizationtelemetryrule-vpcflowlogparameters-logformat
*/
readonly logFormat?: string;
/**
* The maximum interval in seconds between the capture of flow log records.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-vpcflowlogparameters.html#cfn-observabilityadmin-organizationtelemetryrule-vpcflowlogparameters-maxaggregationinterval
*/
readonly maxAggregationInterval?: number;
/**
* The type of traffic to log (ACCEPT, REJECT, or ALL).
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-vpcflowlogparameters.html#cfn-observabilityadmin-organizationtelemetryrule-vpcflowlogparameters-traffictype
*/
readonly trafficType?: string;
}
/**
* Parameters specific to AWS CloudTrail telemetry configuration.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-cloudtrailparameters.html
*/
interface CloudtrailParametersProperty {
/**
* The advanced event selectors to use for filtering AWS CloudTrail events.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-cloudtrailparameters.html#cfn-observabilityadmin-organizationtelemetryrule-cloudtrailparameters-advancedeventselectors
*/
readonly advancedEventSelectors: Array<CfnOrganizationTelemetryRule.AdvancedEventSelectorProperty | cdk.IResolvable> | cdk.IResolvable;
}
/**
* Advanced event selectors let you create fine-grained selectors for management, data, and network activity events.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-advancedeventselector.html
*/
interface AdvancedEventSelectorProperty {
/**
* Contains all selector statements in an advanced event selector.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-advancedeventselector.html#cfn-observabilityadmin-organizationtelemetryrule-advancedeventselector-fieldselectors
*/
readonly fieldSelectors: Array<CfnOrganizationTelemetryRule.AdvancedFieldSelectorProperty | cdk.IResolvable> | cdk.IResolvable;
/**
* An optional, descriptive name for an advanced event selector, such as "Log data events for only two S3 buckets".
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-advancedeventselector.html#cfn-observabilityadmin-organizationtelemetryrule-advancedeventselector-name
*/
readonly name?: string;
}
/**
* Defines criteria for selecting resources based on field values.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-advancedfieldselector.html
*/
interface AdvancedFieldSelectorProperty {
/**
* Matches if the field value ends with the specified value.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-advancedfieldselector.html#cfn-observabilityadmin-organizationtelemetryrule-advancedfieldselector-endswith
*/
readonly endsWith?: Array<string>;
/**
* Matches if the field value equals the specified value.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-advancedfieldselector.html#cfn-observabilityadmin-organizationtelemetryrule-advancedfieldselector-equals
*/
readonly equalTo?: Array<string>;
/**
* The name of the field to use for selection.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-advancedfieldselector.html#cfn-observabilityadmin-organizationtelemetryrule-advancedfieldselector-field
*/
readonly field?: string;
/**
* Matches if the field value does not end with the specified value.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-advancedfieldselector.html#cfn-observabilityadmin-organizationtelemetryrule-advancedfieldselector-notendswith
*/
readonly notEndsWith?: Array<string>;
/**
* Matches if the field value does not equal the specified value.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-advancedfieldselector.html#cfn-observabilityadmin-organizationtelemetryrule-advancedfieldselector-notequals
*/
readonly notEquals?: Array<string>;
/**
* Matches if the field value does not start with the specified value.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-advancedfieldselector.html#cfn-observabilityadmin-organizationtelemetryrule-advancedfieldselector-notstartswith
*/
readonly notStartsWith?: Array<string>;
/**
* Matches if the field value starts with the specified value.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-advancedfieldselector.html#cfn-observabilityadmin-organizationtelemetryrule-advancedfieldselector-startswith
*/
readonly startsWith?: Array<string>;
}
/**
* Configuration parameters for ELB load balancer logging, including output format and field delimiter settings.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-elbloadbalancerloggingparameters.html
*/
interface ELBLoadBalancerLoggingParametersProperty {
/**
* The delimiter character used to separate fields in ELB access log entries when using plain text format.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-elbloadbalancerloggingparameters.html#cfn-observabilityadmin-organizationtelemetryrule-elbloadbalancerloggingparameters-fielddelimiter
*/
readonly fieldDelimiter?: string;
/**
* The format for ELB access log entries (plain text or JSON format).
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-elbloadbalancerloggingparameters.html#cfn-observabilityadmin-organizationtelemetryrule-elbloadbalancerloggingparameters-outputformat
*/
readonly outputFormat?: string;
}
/**
* Configuration parameters for WAF logging, including redacted fields and logging filters.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-wafloggingparameters.html
*/
interface WAFLoggingParametersProperty {
/**
* A filter configuration that determines which WAF log records to include or exclude.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-wafloggingparameters.html#cfn-observabilityadmin-organizationtelemetryrule-wafloggingparameters-loggingfilter
*/
readonly loggingFilter?: cdk.IResolvable | CfnOrganizationTelemetryRule.LoggingFilterProperty;
/**
* The type of WAF logs to collect (currently supports WAF_LOGS).
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-wafloggingparameters.html#cfn-observabilityadmin-organizationtelemetryrule-wafloggingparameters-logtype
*/
readonly logType?: string;
/**
* The fields to redact from WAF logs to protect sensitive information.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-wafloggingparameters.html#cfn-observabilityadmin-organizationtelemetryrule-wafloggingparameters-redactedfields
*/
readonly redactedFields?: Array<CfnOrganizationTelemetryRule.FieldToMatchProperty | cdk.IResolvable> | cdk.IResolvable;
}
/**
* Specifies a field in the request to redact from WAF logs, such as headers, query parameters, or body content.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-fieldtomatch.html
*/
interface FieldToMatchProperty {
/**
* Redacts the HTTP method from WAF logs.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-fieldtomatch.html#cfn-observabilityadmin-organizationtelemetryrule-fieldtomatch-method
*/
readonly method?: string;
/**
* Redacts the entire query string from WAF logs.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-fieldtomatch.html#cfn-observabilityadmin-organizationtelemetryrule-fieldtomatch-querystring
*/
readonly queryString?: string;
/**
* Redacts a specific header field by name from WAF logs.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-fieldtomatch.html#cfn-observabilityadmin-organizationtelemetryrule-fieldtomatch-singleheader
*/
readonly singleHeader?: cdk.IResolvable | CfnOrganizationTelemetryRule.SingleHeaderProperty;
/**
* Redacts the URI path from WAF logs.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-fieldtomatch.html#cfn-observabilityadmin-organizationtelemetryrule-fieldtomatch-uripath
*/
readonly uriPath?: string;
}
/**
* Structure containing a name field limited to 64 characters for header or query parameter identification.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-singleheader.html
*/
interface SingleHeaderProperty {
/**
* The name value, limited to 64 characters.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-singleheader.html#cfn-observabilityadmin-organizationtelemetryrule-singleheader-name
*/
readonly name: string;
}
/**
* Configuration that determines which WAF log records to keep or drop based on specified conditions.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-loggingfilter.html
*/
interface LoggingFilterProperty {
/**
* The default action (KEEP or DROP) for log records that don't match any filter conditions.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-loggingfilter.html#cfn-observabilityadmin-organizationtelemetryrule-loggingfilter-defaultbehavior
*/
readonly defaultBehavior?: string;
/**
* A list of filter conditions that determine log record handling behavior.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-loggingfilter.html#cfn-observabilityadmin-organizationtelemetryrule-loggingfilter-filters
*/
readonly filters?: Array<CfnOrganizationTelemetryRule.FilterProperty | cdk.IResolvable> | cdk.IResolvable;
}
/**
* A single filter condition that specifies behavior, requirement, and matching conditions for WAF log records.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-filter.html
*/
interface FilterProperty {
/**
* The action to take for log records matching this filter (KEEP or DROP).
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-filter.html#cfn-observabilityadmin-organizationtelemetryrule-filter-behavior
*/
readonly behavior?: string;
/**
* The list of conditions that determine if a log record matches this filter.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-filter.html#cfn-observabilityadmin-organizationtelemetryrule-filter-conditions
*/
readonly conditions?: Array<CfnOrganizationTelemetryRule.ConditionProperty | cdk.IResolvable> | cdk.IResolvable;
/**
* Whether the log record must meet all conditions (MEETS_ALL) or any condition (MEETS_ANY) to match this filter.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-filter.html#cfn-observabilityadmin-organizationtelemetryrule-filter-requirement
*/
readonly requirement?: string;
}
/**
* A single condition that can match based on WAF rule action or label name.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-condition.html
*/
interface ConditionProperty {
/**
* Matches log records based on the WAF rule action taken (ALLOW, BLOCK, COUNT, etc.).
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-condition.html#cfn-observabilityadmin-organizationtelemetryrule-condition-actioncondition
*/
readonly actionCondition?: CfnOrganizationTelemetryRule.ActionConditionProperty | cdk.IResolvable;
/**
* Matches log records based on WAF rule labels applied to the request.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-condition.html#cfn-observabilityadmin-organizationtelemetryrule-condition-labelnamecondition
*/
readonly labelNameCondition?: cdk.IResolvable | CfnOrganizationTelemetryRule.LabelNameConditionProperty;
}
/**
* Condition that matches based on the specific WAF action taken on the request.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-actioncondition.html
*/
interface ActionConditionProperty {
/**
* The WAF action to match against (ALLOW, BLOCK, COUNT, CAPTCHA, CHALLENGE, EXCLUDED_AS_COUNT).
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-actioncondition.html#cfn-observabilityadmin-organizationtelemetryrule-actioncondition-action
*/
readonly action?: string;
}
/**
* Condition that matches based on WAF rule labels, with label names limited to 1024 characters.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-labelnamecondition.html
*/
interface LabelNameConditionProperty {
/**
* The label name to match, supporting alphanumeric characters, underscores, hyphens, and colons.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-organizationtelemetryrule-labelnamecondition.html#cfn-observabilityadmin-organizationtelemetryrule-labelnamecondition-labelname
*/
readonly labelName?: string;
}
}
/**
* Properties for defining a `CfnOrganizationTelemetryRule`
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-observabilityadmin-organizationtelemetryrule.html
*/
export interface CfnOrganizationTelemetryRuleProps {
/**
* The name of the organization telemetry rule.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-observabilityadmin-organizationtelemetryrule.html#cfn-observabilityadmin-organizationtelemetryrule-rule
*/
readonly rule: cdk.IResolvable | CfnOrganizationTelemetryRule.TelemetryRuleProperty;
/**
* The name of the organization centralization rule.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-observabilityadmin-organizationtelemetryrule.html#cfn-observabilityadmin-organizationtelemetryrule-rulename
*/
readonly ruleName: string;
/**
* Lists all tags attached to the specified resource.
*
* Supports telemetry rule resources and telemetry pipeline resources.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-observabilityadmin-organizationtelemetryrule.html#cfn-observabilityadmin-organizationtelemetryrule-tags
*/
readonly tags?: Array<cdk.CfnTag>;
}
/**
* Creates an integration between CloudWatch and S3 Tables for analytics.
*
* This integration enables querying CloudWatch telemetry data using analytics engines like Amazon Athena, Amazon Redshift, and Apache Spark.
*
* @cloudformationResource AWS::ObservabilityAdmin::S3TableIntegration
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-observabilityadmin-s3tableintegration.html
*/
export declare class CfnS3TableIntegration extends cdk.CfnResource implements cdk.IInspectable, IS3TableIntegrationRef, cdk.ITaggableV2 {
/**
* The CloudFormation resource type name for this resource class.
*/
static readonly CFN_RESOURCE_TYPE_NAME: string;
/**
* Build a CfnS3TableIntegration from CloudFormation properties
*
* A factory method that creates a new instance of this class from an object
* containing the CloudFormation properties of this resource.
* Used in the @aws-cdk/cloudformation-include module.
*
* @internal
*/
static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnS3TableIntegration;
/**
* Checks whether the given object is a CfnS3TableIntegration
*/
static isCfnS3TableIntegration(x: any): x is CfnS3TableIntegration;
static arnForS3TableIntegration(resource: IS3TableIntegrationRef): string;
/**
* The ARN of the S3 Table Integration
*
* @cloudformationAttribute Arn
*/
readonly attrArn: string;
/**
* Tag Manager which manages the tags for this resource
*/
readonly cdkTagManager: cdk.TagManager;
/**
* Defines the encryption configuration for S3 Table integrations, including the encryption algorithm and KMS key settings.
*/
encryption: CfnS3TableIntegration.EncryptionConfigProperty | cdk.IResolvable;
/**
* The CloudWatch Logs data sources to associate with the S3 Table Integration.
*/
logSources?: Array<cdk.IResolvable | CfnS3TableIntegration.LogSourceProperty> | cdk.IResolvable;
/**
* The ARN of the role used to access the S3 Table Integration.
*/
roleArn: string;
/**
* An array of key-value pairs to apply to this resource.
*/
tags?: Array<cdk.CfnTag>;
/**
* Create a new `AWS::ObservabilityAdmin::S3TableIntegration`.
*
* @param scope Scope in which this resource is defined
* @param id Construct identifier for this resource (unique in its scope)
* @param props Resource properties
*/
constructor(scope: constructs.Construct, id: string, props: CfnS3TableIntegrationProps);
get s3TableIntegrationRef(): S3TableIntegrationReference;
protected get cfnProperties(): Record<string, any>;
/**
* Examines the CloudFormation resource and discloses attributes
*
* @param inspector tree inspector to collect and process attributes
*/
inspect(inspector: cdk.TreeInspector): void;
protected renderProperties(props: Record<string, any>): Record<string, any>;
}
export declare namespace CfnS3TableIntegration {
/**
* Encryption configuration for the S3 Table Integration.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-s3tableintegration-encryptionconfig.html
*/
interface EncryptionConfigProperty {
/**
* The ARN of the KMS key used to encrypt the S3 Table Integration.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-s3tableintegration-encryptionconfig.html#cfn-observabilityadmin-s3tableintegration-encryptionconfig-kmskeyarn
*/
readonly kmsKeyArn?: string;
/**
* The server-side encryption algorithm used to encrypt the S3 Table(s) data.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-observabilityadmin-s3tableintegration-encryptionconfig.html#cfn-observabi