亚马逊AWS Lambda NodeJS日志记录

3
我有一个同步任务(使用Node.js编写),需要在一批文件中处理几百个文档。对于每个文档,还需要执行多个任务。通常情况下,在部署后,此类任务将成为黑匣子:如果没有适当的日志记录,则无法找到问题。
因此,我记录任何合理的信息-正在处理哪个文档、现在执行的任务等。我使用console.log/console.error进行记录。这会导致非常大的日志文件,在本地运行时并不是很大的问题。
一旦部署到AWS上,是否有任何最佳实践/限制可供记录?我也担心成本问题。
谢谢!
2个回答

2

有许多方法可以处理这个问题。

如果您的主要需求是可视化数据工作流程,则使用AWS Step Functions即可。他们最近推出了一种名为Express Workflows的廉价版本。

将其分解为多个Lambda,每个任务一个Lambda。Step Functions会处理所有编排、错误处理、重试等事项。使用AWS SQS也可能有助于平滑批处理过程。

为了完全可见,需要专门的工具。在无服务器环境中,我们无法控制基础架构,因此需要不同的方法。我建议查看Dashbird


0

我认为在这方面没有太多的限制,你可以在这里找到定价信息:https://aws.amazon.com/cloudwatch/pricing/

此外,您还可以使用像winston这样的记录器在生产环境中控制日志级别,例如在开发环境中启用调试模式,在生产环境中启用信息/警告。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接