Select your cookie preferences

We use essential cookies and similar tools that are necessary to provide our site and services. We use performance cookies to collect anonymous statistics, so we can understand how customers use our site and make improvements. Essential cookies cannot be deactivated, but you can choose “Customize” or “Decline” to decline performance cookies.

If you agree, AWS and approved third parties will also use cookies to provide useful site features, remember your preferences, and display relevant content, including relevant advertising. To accept or decline all non-essential cookies, choose “Accept” or “Decline.” To make more detailed choices, choose “Customize.”

AWS::Logs::QueryDefinition

Focus mode
AWS::Logs::QueryDefinition - AWS CloudFormation
Filter View

Creates a query definition for CloudWatch Logs Insights. For more information, see Analyzing Log Data with CloudWatch Logs Insights.

Syntax

To declare this entity in your AWS CloudFormation template, use the following syntax:

JSON

{ "Type" : "AWS::Logs::QueryDefinition", "Properties" : { "LogGroupNames" : [ String, ... ], "Name" : String, "QueryLanguage" : String, "QueryString" : String } }

YAML

Type: AWS::Logs::QueryDefinition Properties: LogGroupNames: - String Name: String QueryLanguage: String QueryString: String

Properties

LogGroupNames

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

Required: No

Type: Array of String

Update requires: No interruption

Name

A name for the query definition.

Note

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.

Required: Yes

Type: String

Minimum: 1

Maximum: 255

Update requires: No interruption

QueryLanguage

The query language used for this query. For more information about the query languages that CloudWatch Logs supports, see Supported query languages.

Required: No

Type: String

Allowed values: CWLI | SQL | PPL

Update requires: No interruption

QueryString

The query string to use for this query definition. For more information, see CloudWatch Logs Insights Query Syntax.

Required: Yes

Type: String

Minimum: 1

Maximum: 10000

Update requires: No interruption

Return values

Ref

When you pass the logical ID of this resource to the intrinsic Ref function, Ref returns the query definition ID.

For more information about using the Ref function, see Ref.

Fn::GetAtt

The Fn::GetAtt intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the Fn::GetAtt intrinsic function, see Fn::GetAtt.

QueryDefinitionId

The ID of the query definition.

Examples

Query definition example

The following example creates a query definition.

JSON

"myQueryDefinition": { "Type": "AWS::Logs::QueryDefinition", "Properties": { "Name": "myQueryName", "QueryString": "fields @timestamp, @message | sort @timestamp desc | limit 20" } }

YAML

myQueryDefinition: Type: AWS::Logs::QueryDefinition Properties: Name: "myQueryName" QueryString: “fields @timestamp, @message | sort @timestamp desc | limit 20"

On this page

PrivacySite termsCookie preferences
© 2025, Amazon Web Services, Inc. or its affiliates. All rights reserved.