AWS Cloudwatch log stream name not recognised

2020-06-30 12:01发布



I'm using the automated logging from AWS Lambda. It generates log streams with names that look like this: 2016/05/18/[$LATEST]99577d10a8cb420cb124a90c20d5653a

I can query, using 'aws logs describe-log-streams', the available log streams and get some JSON containing these names alongside other meta data.

However if I then try to do this:

aws logs get-log-events --log-group-name /aws/lambda/categorise --log-stream-name "2016/05/18/[$LATEST]99577d10a8cb420cb124a90c20d5653a"

I get an error

A client error (ResourceNotFoundException) occurred when calling the GetLogEvents operation: The specified log stream does not exist.

So if the log stream name returned by the describe log streams command doesn't actually exist. What is it?

I've tried hacking around with the command a bit, removing the [$LATEST], quoting it, escaping it. But no joy. Has anyone managed to retrieve their Lambda log events using the aws cli?


Immediately after posting this I figured it out... The $ in [$LATEST] needs to be escaped... So it should look something like [\$LATEST].