简体   繁体   中英

Lambda log and CloudWatch PutLogEvents limit

I know

  1. Lambda calls PutLogEvents to log messages internally.
  2. CloudWatch has a limit on PutLogEvents .

PutLogEvents: 5 requests per second per log stream.

I want to know

  1. Could Lambda log stream also be throttled by PutLogEvents ?
  2. If so, how to know if a Lambda log stream is throttled or not?

Any error message in the log stream?

  1. When does Lambda call PutLogEvents ?

for example,

  • at the end of a Lambda function, it calls PutLogEvents once.
  • when flushing buffer(stdout), it calls PutLogEvents all the time.

Let's brake my answer in 2 parts:

Part 1: Check answers here about your worries about being throttled from inside your lambda. Unless you're actually calling the SDK method I concur with the answers here and tell you that let Amazon handle their internal stuff . I hope this covers items 1 and 2 of your question.

Now for item 3:

AFAIK the lambda runtime sends logs:

  1. When your lambda starts.
  2. When your lambda ends (or get's interrupted by an exception).
  3. Timeout.
  4. If you explicitely use any of the logging functions provided in the runtime (according to a coworker of mine: it is safe to assume that everyting you send to stdout will be logged).
  5. If you use AWS SDK inside your lambda to access other AWS services.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM