Lambda log and CloudWatch PutLogEvents limit

血红的双手。 提交于 2019-12-23 22:26:19

问题


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.

回答1:


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.


来源:https://stackoverflow.com/questions/53450957/lambda-log-and-cloudwatch-putlogevents-limit

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!