There are more AWS SDK examples available in the AWS Doc SDK Examples
CloudWatch Logs examples using AWS CLI
The following code examples show you how to perform actions and implement common scenarios by using the AWS Command Line Interface with CloudWatch Logs.
Actions are code excerpts from larger programs and must be run in context. While actions show you how to call individual service functions, you can see actions in context in their related scenarios.
Each example includes a link to the complete source code, where you can find instructions on how to set up and run the code in context.
Topics
Actions
The following code example shows how to use create-log-group.
- AWS CLI
-
To create a log group
The following
create-log-groupexample creates a log group namedmy-logs.aws logs create-log-group \ --log-group-namemy-logsThis command produces no output.
For more information, see Working with log groups and log streams in the Amazon CloudWatch Logs User Guide.
-
For API details, see CreateLogGroup
in AWS CLI Command Reference.
-
The following code example shows how to use create-log-stream.
- AWS CLI
-
To create a log stream
The following
create-log-streamexample creates a log stream named20150601in the log groupmy-logs.aws logs create-log-stream \ --log-group-namemy-logs\ --log-stream-name20150601This command produces no output.
For more information, see Working with log groups and log streams in the Amazon CloudWatch Logs User Guide.
-
For API details, see CreateLogStream
in AWS CLI Command Reference.
-
The following code example shows how to use delete-log-group.
- AWS CLI
-
To delete a log group
The following
delete-log-groupexample deletes a log group namedmy-logs.aws logs delete-log-group \ --log-group-namemy-logsThis command produces no output.
For more information, see Working with log groups and log streams in the Amazon CloudWatch Logs User Guide.
-
For API details, see DeleteLogGroup
in AWS CLI Command Reference.
-
The following code example shows how to use delete-log-stream.
- AWS CLI
-
To delete a log stream
The following
delete-log-streamexample deletes a log stream named20150531from a log group namedmy-logs.aws logs delete-log-stream \ --log-group-namemy-logs\ --log-stream-name20150531This command produces no output.
For more information, see Working with log groups and log streams in the Amazon CloudWatch Logs User Guide.
-
For API details, see DeleteLogStream
in AWS CLI Command Reference.
-
The following code example shows how to use delete-retention-policy.
- AWS CLI
-
To delete the retention policy of a log group
The following
delete-retention-policyexample removes the retention policy that has previously been applied to a log group namedmy-logs.aws logs delete-retention-policy \ --log-group-namemy-logsThis command produces no output.
For more information, see Working with log groups and log streams in the Amazon CloudWatch Logs User Guide.
-
For API details, see DeleteRetentionPolicy
in AWS CLI Command Reference.
-
The following code example shows how to use describe-log-groups.
- AWS CLI
-
To describe a log group
The following
describe-log-groupsexample describes a log group namedmy-logs.aws logs describe-log-groups \ --log-group-name-prefixmy-logsOutput:
{ "logGroups": [ { "storedBytes": 0, "metricFilterCount": 0, "creationTime": 1433189500783, "logGroupName": "my-logs", "retentionInDays": 5, "arn": "arn:aws:logs:us-west-2:0123456789012:log-group:my-logs:*" } ] }For more information, see Working with log groups and log streams in the Amazon CloudWatch Logs User Guide.
-
For API details, see DescribeLogGroups
in AWS CLI Command Reference.
-
The following code example shows how to use describe-log-streams.
- AWS CLI
-
To describe the log streams in a log group
The following
describe-log-streamsexample shows all log streams starting with the prefix2015in the log groupmy-logs.aws logs describe-log-streams \ --log-group-namemy-logs\ --log-stream-name-prefix2015Output:
{ "logStreams": [ { "creationTime": 1433189871774, "arn": "arn:aws:logs:us-west-2:0123456789012:log-group:my-logs:log-stream:20150531", "logStreamName": "20150531", "storedBytes": 0 }, { "creationTime": 1433189873898, "arn": "arn:aws:logs:us-west-2:0123456789012:log-group:my-logs:log-stream:20150601", "logStreamName": "20150601", "storedBytes": 0 } ] }For more information, see Working with log groups and log streams in the Amazon CloudWatch Logs User Guide.
-
For API details, see DescribeLogStreams
in AWS CLI Command Reference.
-
The following code example shows how to use get-log-events.
- AWS CLI
-
To get log events from a log stream
The following
get-log-eventsexample retrieves log events from a log stream named20150601in the log groupmy-logs.aws logs get-log-events \ --log-group-namemy-logs\ --log-stream-name20150601Output:
{ "nextForwardToken": "f/31961209122447488583055879464742346735121166569214640130", "events": [ { "ingestionTime": 1433190494190, "timestamp": 1433190184356, "message": "Example Event 1" }, { "ingestionTime": 1433190516679, "timestamp": 1433190184356, "message": "Example Event 1" }, { "ingestionTime": 1433190494190, "timestamp": 1433190184358, "message": "Example Event 2" } ], "nextBackwardToken": "b/31961209122358285602261756944988674324553373268216709120" }For more information, see Working with log groups and log streams in the Amazon CloudWatch Logs User Guide.
-
For API details, see GetLogEvents
in AWS CLI Command Reference.
-
The following code example shows how to use put-log-events.
- AWS CLI
-
To put log events into a log stream
The following
put-log-eventsexample puts log events to a log stream named20150601in the log groupmy-logs. The command reads a JSON array of events from a file namedeventsin the current directory.aws logs put-log-events \ --log-group-namemy-logs\ --log-stream-name20150601\ --log-eventsfile://eventsContents of
events:[ { "timestamp": 1433190184356, "message": "Example Event 1" }, { "timestamp": 1433190184358, "message": "Example Event 2" }, { "timestamp": 1433190184360, "message": "Example Event 3" } ]Output:
{ "nextSequenceToken": "49542672486831074009579604567656788214806863282469607346" }Each subsequent call requires the next sequence token provided by the previous call to be specified with the sequence token option.
aws logs put-log-events \ --log-group-namemy-logs\ --log-stream-name20150601\ --log-eventsfile://events2\ --sequence-token"49542672486831074009579604567656788214806863282469607346"Contents of
events2:[ { "timestamp": 1433190184362, "message": "Example Event 4" }, { "timestamp": 1433190184364, "message": "Example Event 5" } ]Output:
{ "nextSequenceToken": "49542672486831074009579604567900991230369019956308219826" }For more information, see Working with log groups and log streams in the Amazon CloudWatch Logs User Guide.
-
For API details, see PutLogEvents
in AWS CLI Command Reference.
-
The following code example shows how to use put-retention-policy.
- AWS CLI
-
To set the retention policy of a log group
The following
put-retention-policyexample adds a 5 day retention policy to a log group namedmy-logs.aws logs put-retention-policy \ --log-group-namemy-logs\ --retention-in-days5This command produces no output.
For more information, see Working with log groups and log streams in the Amazon CloudWatch Logs User Guide.
-
For API details, see PutRetentionPolicy
in AWS CLI Command Reference.
-
The following code example shows how to use start-live-tail.
- AWS CLI
-
To start a Live Tail session on a log group
The following
start-live-tailexample starts a Live Tail session on a log group namedmy-logs.aws logs start-live-tail \ --log-group-identifiersarn:aws:logs:us-west-2:123456789012:log-group:my-logsOutput:
INFO Processing request a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 INFO Request a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 completed in 120 msThe following command starts a Live Tail session on a log group named
my-logsin interactive mode.aws logs start-live-tail \ --log-group-identifiersarn:aws:logs:us-west-2:123456789012:log-group:my-logs\ --modeinteractiveThis command produces no output. It displays an interactive Live Tail session in the terminal.
In interactive mode you can highlight as many as five terms in the tailed logs. The severity codes are highlighted by default. Press
hto enter the highlight mode and then type in the terms to be highlighted, one at a time, and press enter. Presscto clear the highlighted term(s). Presstto toggle formatting between JSON/Plain text. PressEscto exit the Live Tail session. Pressup/downkeys to scroll up or down between log events, useCtrl + u/Ctrl + dto scroll faster. Pressqto scroll to latest log events.For more information, see Troubleshoot with CloudWatch Logs Live Tail in the Amazon CloudWatch Logs User Guide.
-
For API details, see StartLiveTail
in AWS CLI Command Reference.
-