本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
处理日志
为了简化故障排除,Amazon SAMCLI有一个名为的命令sam logs
。此命令允许您从命令行获取 Lambda 函数生成的日志。
注意
该sam logs
命令适用于所有Amazon Lambda函数,而不仅仅是您部署时使用的函数Amazon SAM。
按堆栈获取日Amazon CloudFormation志
当你的函数是Amazon CloudFormation堆栈的一部分时,你可以使用该函数的逻辑 ID 来获取日志:
sam logs -n HelloWorldFunction --stack-name mystack
通过 Lambda 函数名称获取日志
或者,你可以使用函数的名称来获取日志:
sam logs -n mystack-HelloWorldFunction-1FJ8PD
尾矿日志
添加等待新日志并在它们到达时查看它们的--tail
选项。这在部署期间或对生产问题进行故障排除时非常有用。
sam logs -n HelloWorldFunction --stack-name mystack --tail
查看特定时间范围的日志
您可以使用-s
和-e
选项查看特定时间范围内的日志:
sam logs -n HelloWorldFunction --stack-name mystack -s '10min ago' -e '2min ago'
筛选日志
使用该--filter
选项快速查找与日志事件中的术语、短语或值相匹配的日志:
sam logs -n HelloWorldFunction --stack-name mystack --filter "error"
在输出中,所有出现的 “错误” 一词都带有下Amazon SAMCLI划线,因此您可以轻松地在日志输出中找到过滤器关键字。
突出显示错误
当您的 Lambda 函数崩溃或超时时,会以红色Amazon SAMCLI突出显示超时消息。这可以帮助您轻松地在庞大的日志输出流中找到超时的特定执行。
JSON 漂亮的
如果您的日志消息打印 JSON 字符串,则Amazon SAMCLI会自动漂亮地打印 JSON,以帮助您直观地解析和理解 JSON。