Class: AWSCDK::OAM::CfnLink::LinkFilterProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
oam/cfn_link.rb

Overview

When used in MetricConfiguration this field specifies which metric namespaces are to be shared with the monitoring account.

When used in LogGroupConfiguration this field specifies which log groups are to share their log events with the monitoring account. Use the term LogGroupName and one or more of the following operands.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(filter:) ⇒ LinkFilterProperty

Returns a new instance of LinkFilterProperty.

Parameters:

  • filter (String)

    When used in MetricConfiguration this field specifies which metric namespaces are to be shared with the monitoring account.



634
635
636
637
# File 'oam/cfn_link.rb', line 634

def initialize(filter:)
  @filter = filter
  Jsii::Type.check_type(@filter, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "filter")
end

Instance Attribute Details

#filterString (readonly)

When used in MetricConfiguration this field specifies which metric namespaces are to be shared with the monitoring account.

When used in LogGroupConfiguration this field specifies which log groups are to share their log events with the monitoring account. Use the term LogGroupName and one or more of the following operands.

Use single quotation marks (') around log group names and metric namespaces.

The matching of log group names and metric namespaces is case sensitive. Each filter has a limit of five conditional operands. Conditional operands are AND and OR .

  • = and !=
  • AND
  • OR
  • LIKE and NOT LIKE . These can be used only as prefix searches. Include a % at the end of the string that you want to search for and include.
  • IN and NOT IN , using parentheses ( )

Examples:

  • Namespace NOT LIKE 'AWS/%' includes only namespaces that don't start with AWS/ , such as custom namespaces.
  • Namespace IN ('AWS/EC2', 'AWS/ELB', 'AWS/S3') includes only the metrics in the EC2, Elastic Load Balancing , and Amazon S3 namespaces.
  • Namespace = 'AWS/EC2' OR Namespace NOT LIKE 'AWS/%' includes only the EC2 namespace and your custom namespaces.
  • LogGroupName IN ('This-Log-Group', 'Other-Log-Group') includes only the log groups with names This-Log-Group and Other-Log-Group .
  • LogGroupName NOT IN ('Private-Log-Group', 'Private-Log-Group-2') includes all log groups except the log groups with names Private-Log-Group and Private-Log-Group-2 .
  • LogGroupName LIKE 'aws/lambda/%' OR LogGroupName LIKE 'AWSLogs%' includes all log groups that have names that start with aws/lambda/ or AWSLogs .

If you are updating a link that uses filters, you can specify * as the only value for the filter parameter to delete the filter and share all log groups with the monitoring account.



666
667
668
# File 'oam/cfn_link.rb', line 666

def filter
  @filter
end

Class Method Details

.jsii_propertiesObject



668
669
670
671
672
# File 'oam/cfn_link.rb', line 668

def self.jsii_properties
  {
    :filter => "filter",
  }
end

Instance Method Details

#to_jsiiObject



674
675
676
677
678
679
680
# File 'oam/cfn_link.rb', line 674

def to_jsii
  result = {}
  result.merge!({
    "filter" => @filter,
  })
  result.compact
end