Class: AWSCDK::Logs::CfnQueryDefinitionProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
logs/cfn_query_definition_props.rb

Overview

Properties for defining a CfnQueryDefinition.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name:, query_string:, log_group_names: nil, parameters: nil, query_language: nil) ⇒ CfnQueryDefinitionProps

Returns a new instance of CfnQueryDefinitionProps.

Parameters:



14
15
16
17
18
19
20
21
22
23
24
25
# File 'logs/cfn_query_definition_props.rb', line 14

def initialize(name:, query_string:, log_group_names: nil, parameters: nil, query_language: nil)
  @name = name
  Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name")
  @query_string = query_string
  Jsii::Type.check_type(@query_string, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "queryString")
  @log_group_names = log_group_names
  Jsii::Type.check_type(@log_group_names, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InVuaW9uIjp7InR5cGVzIjpbeyJwcmltaXRpdmUiOiJzdHJpbmcifSx7ImZxbiI6ImF3cy1jZGstbGliLmludGVyZmFjZXMuYXdzX2xvZ3MuSUxvZ0dyb3VwUmVmIn1dfX0sImtpbmQiOiJhcnJheSJ9fQ==")), "logGroupNames") unless @log_group_names.nil?
  @parameters = parameters
  Jsii::Type.check_type(@parameters, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfbG9ncy5DZm5RdWVyeURlZmluaXRpb24uUXVlcnlQYXJhbWV0ZXJQcm9wZXJ0eSJ9XX19LCJraW5kIjoiYXJyYXkifX1dfX0=")), "parameters") unless @parameters.nil?
  @query_language = query_language
  Jsii::Type.check_type(@query_language, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "queryLanguage") unless @query_language.nil?
end

Instance Attribute Details

#log_group_namesArray<String, AWSCDK::Interfaces::AWSLogs::ILogGroupRef>? (readonly)

Use this parameter if you want the query to query only certain log groups.



45
46
47
# File 'logs/cfn_query_definition_props.rb', line 45

def log_group_names
  @log_group_names
end

#nameString (readonly)

A name for the query definition.

You can use the name to create a folder structure for your queries. To create a folder, use a forward slash (/) to prefix your desired query name with your desired folder name. For example, *folder-name* / *query-name* .



33
34
35
# File 'logs/cfn_query_definition_props.rb', line 33

def name
  @name
end

#parametersAWSCDK::IResolvable, ... (readonly)

Use this parameter to include specific query parameters as part of your query definition.

Query parameters are supported only for Logs Insights QL queries. Query parameters allow you to use placeholder variables in your query string that are substituted with values at execution time. Use the {parameterName} syntax in your query string to reference a parameter.



52
53
54
# File 'logs/cfn_query_definition_props.rb', line 52

def parameters
  @parameters
end

#query_languageString? (readonly)

Note:

Default: - "CWLI"

The query language used for this query.

For more information about the query languages that CloudWatch Logs supports, see Supported query languages .



60
61
62
# File 'logs/cfn_query_definition_props.rb', line 60

def query_language
  @query_language
end

#query_stringString (readonly)

The query string to use for this query definition.

For more information, see CloudWatch Logs Insights Query Syntax .



40
41
42
# File 'logs/cfn_query_definition_props.rb', line 40

def query_string
  @query_string
end

Class Method Details

.jsii_propertiesObject



62
63
64
65
66
67
68
69
70
# File 'logs/cfn_query_definition_props.rb', line 62

def self.jsii_properties
  {
    :name => "name",
    :query_string => "queryString",
    :log_group_names => "logGroupNames",
    :parameters => "parameters",
    :query_language => "queryLanguage",
  }
end

Instance Method Details

#to_jsiiObject



72
73
74
75
76
77
78
79
80
81
82
# File 'logs/cfn_query_definition_props.rb', line 72

def to_jsii
  result = {}
  result.merge!({
    "name" => @name,
    "queryString" => @query_string,
    "logGroupNames" => @log_group_names,
    "parameters" => @parameters,
    "queryLanguage" => @query_language,
  })
  result.compact
end