Use DescribeLogStreams
with an Amazon SDK or CLI
The following code examples show how to use DescribeLogStreams
.
- CLI
-
- Amazon CLI
-
The following command shows all log streams starting with the prefix
2015
in the log groupmy-logs
:aws logs describe-log-streams --log-group-name
my-logs
--log-stream-name-prefix2015
Output:
{ "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 API details, see DescribeLogStreams
in Amazon CLI Command Reference.
-
- Java
-
- SDK for Java 2.x
-
Note
There's more on GitHub. Find the complete example and learn how to set up and run in the Amazon Code Examples Repository
. /** * Before running this Java V2 code example, set up your development * environment, including your credentials. * <p> * For more information, see the following documentation topic: * <p> * https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/get-started.html */ public class CloudWatchLogQuery { public static void main(final String[] args) { final String usage = """ Usage: <logGroupName> Where: logGroupName - The name of the log group (for example, /aws/lambda/ChatAIHandler). """; if (args.length != 1) { System.out.print(usage); System.exit(1); } String logGroupName = "/aws/lambda/ChatAIHandler" ; //args[0]; CloudWatchLogsClient logsClient = CloudWatchLogsClient.builder() .region(Region.US_EAST_1) .build(); describeMostRecentLogStream(logsClient, logGroupName); } /** * Describes and prints metadata about the most recent log stream in the specified log group. * * @param logsClient the CloudWatchLogsClient used to interact with AWS CloudWatch Logs * @param logGroupName the name of the log group */ public static void describeMostRecentLogStream(CloudWatchLogsClient logsClient, String logGroupName) { DescribeLogStreamsRequest streamsRequest = DescribeLogStreamsRequest.builder() .logGroupName(logGroupName) .orderBy(OrderBy.LAST_EVENT_TIME) .descending(true) .limit(1) .build(); try { DescribeLogStreamsResponse streamsResponse = logsClient.describeLogStreams(streamsRequest); List<LogStream> logStreams = streamsResponse.logStreams(); if (logStreams.isEmpty()) { System.out.println("No log streams found for log group: " + logGroupName); return; } LogStream stream = logStreams.get(0); System.out.println("Most Recent Log Stream:"); System.out.println(" Name: " + stream.logStreamName()); System.out.println(" ARN: " + stream.arn()); System.out.println(" Creation Time: " + stream.creationTime()); System.out.println(" First Event Time: " + stream.firstEventTimestamp()); System.out.println(" Last Event Time: " + stream.lastEventTimestamp()); System.out.println(" Stored Bytes: " + stream.storedBytes()); System.out.println(" Upload Sequence Token: " + stream.uploadSequenceToken()); } catch (CloudWatchLogsException e) { System.err.println("Failed to describe log stream: " + e.awsErrorDetails().errorMessage()); } } }
-
For API details, see DescribeLogStreams in Amazon SDK for Java 2.x API Reference.
-
For a complete list of Amazon SDK developer guides and code examples, see Using CloudWatch Logs with an Amazon SDK. This topic also includes information about getting started and details about previous SDK versions.