Skip to content
v2.274.0

QueryString Class ​

Define a QueryString.

Example ​

ts
new logs.QueryDefinition(this, 'QueryDefinition', {
  queryDefinitionName: 'MyQuery',
  queryString: new logs.QueryString({
    fields: ['@timestamp', '@message'],
    parseStatements: [
      '@message "[*] *" as loggingType, loggingMessage',
      '@message "<*>: *" as differentLoggingType, differentLoggingMessage',
    ],
    filterStatements: [
      'loggingType = "ERROR"',
      'loggingMessage = "A very strange error occurred!"',
    ],
    statsStatements: [
      'count(loggingMessage) as loggingErrors',
      'count(differentLoggingMessage) as differentLoggingErrors',
    ],
    sort: '@timestamp desc',
    limit: 20,
  }),
});
python
logs.QueryDefinition(self, "QueryDefinition",
    query_definition_name="MyQuery",
    query_string=logs.QueryString(
        fields=["@timestamp", "@message"],
        parse_statements=["@message \"[*] *\" as loggingType, loggingMessage", "@message \"<*>: *\" as differentLoggingType, differentLoggingMessage"
        ],
        filter_statements=["loggingType = \"ERROR\"", "loggingMessage = \"A very strange error occurred!\""
        ],
        stats_statements=["count(loggingMessage) as loggingErrors", "count(differentLoggingMessage) as differentLoggingErrors"
        ],
        sort="@timestamp desc",
        limit=20
    )
)
java
QueryDefinition.Builder.create(this, "QueryDefinition")
        .queryDefinitionName("MyQuery")
        .queryString(QueryString.Builder.create()
                .fields(List.of("@timestamp", "@message"))
                .parseStatements(List.of("@message \"[*] *\" as loggingType, loggingMessage", "@message \"<*>: *\" as differentLoggingType, differentLoggingMessage"))
                .filterStatements(List.of("loggingType = \"ERROR\"", "loggingMessage = \"A very strange error occurred!\""))
                .statsStatements(List.of("count(loggingMessage) as loggingErrors", "count(differentLoggingMessage) as differentLoggingErrors"))
                .sort("@timestamp desc")
                .limit(20)
                .build())
        .build();
csharp
// Install: dotnet add package Amazon.CDK.Lib
new QueryDefinition(this, "QueryDefinition", new QueryDefinitionProps {
    QueryDefinitionName = "MyQuery",
    QueryString = new QueryString(new QueryStringProps {
        Fields = new [] { "@timestamp", "@message" },
        ParseStatements = new [] { "@message \"[*] *\" as loggingType, loggingMessage", "@message \"<*>: *\" as differentLoggingType, differentLoggingMessage" },
        FilterStatements = new [] { "loggingType = \"ERROR\"", "loggingMessage = \"A very strange error occurred!\"" },
        StatsStatements = new [] { "count(loggingMessage) as loggingErrors", "count(differentLoggingMessage) as differentLoggingErrors" },
        Sort = "@timestamp desc",
        Limit = 20
    })
});
go
// Install: go get github.com/aws/aws-cdk-go/awscdk/v2
logs.NewQueryDefinition(this, jsii.String("QueryDefinition"), &QueryDefinitionProps{
	QueryDefinitionName: jsii.String("MyQuery"),
	QueryString: logs.NewQueryString(&QueryStringProps{
		Fields: []*string{
			jsii.String("@timestamp"),
			jsii.String("@message"),
		},
		ParseStatements: []*string{
			jsii.String("@message \"[*] *\" as loggingType, loggingMessage"),
			jsii.String("@message \"<*>: *\" as differentLoggingType, differentLoggingMessage"),
		},
		FilterStatements: []*string{
			jsii.String("loggingType = \"ERROR\""),
			jsii.String("loggingMessage = \"A very strange error occurred!\""),
		},
		StatsStatements: []*string{
			jsii.String("count(loggingMessage) as loggingErrors"),
			jsii.String("count(differentLoggingMessage) as differentLoggingErrors"),
		},
		Sort: jsii.String("@timestamp desc"),
		Limit: jsii.Number(20),
	}),
})

Initializer ​

ts
new QueryString(props?: QueryStringProps)
python
QueryString(props: typing.Optional[QueryStringProps] = None)
java
new QueryString(QueryStringProps props)
csharp
new QueryString(QueryStringProps? props = null)
go
NewQueryString(Props QueryStringProps)

Properties ​

hasStatsAndStatsStatementsbooleanhas_stats_and_stats_statementsboolhasStatsAndStatsStatementsBooleanHasStatsAndStatsStatementsboolHasStatsAndStatsStatements*boolrequired#
If the props for the query string have both stats and statsStatements.
statsStatementsLengthmay be undefinednumberstats_statements_lengthmay be undefinedint | floatstatsStatementsLengthmay be undefinedNumberStatsStatementsLengthmay be undefineddoubleStatsStatementsLengthmay be undefined*float64#
Length of statsStatements.

Methods ​

toString(): stringdef to_string(self, ) -> strpublic String toString()public string ToString()func ToString() *string#
String representation of this QueryString.