【问题标题】:Logging for Nodejs Express on AWS FargateAWS Fargate 上的 Nodejs Express 日志记录
【发布时间】:2020-06-23 05:13:03
【问题描述】:

我正在使用 Nodejs/Express 开发一个应用程序,并计划在 AWS Fargate 上运行该应用程序。对于日志记录,我希望在 AWS Cloudwatch 中提供应用程序日志。将 Nodejs/Express 记录到 Cloudwatch 的最佳方式是什么?有我可以使用的库吗?

【问题讨论】:

  • 是的,您可以使用摩根。此库来自 express 的同一创建者。

标签: node.js amazon-web-services express amazon-cloudwatch aws-fargate


【解决方案1】:

收集日志的方法有很多种,你是写到控制台,还是使用一些日志工具。以下是一些想法:

如果您将 Amazon ECS 或 Fargate 与 ECS 结合使用,则可以使用 AWS Log driver

如果您将 Amazon EKS 或 Fargate 与 EKS 结合使用,则可以配置 FluentD to log to cloudwatch

CloudWatch Agent for Docker.

使用CloudWatch Container Insights 收集、汇总和汇总来自您的容器化应用程序和微服务的指标和日志。 Container Insights 可用于 Amazon Elastic Container Service (Amazon ECS)、Amazon Elastic Kubernetes Service (Amazon EKS) 和 Amazon EC2 上的 Kubernetes 平台。 Amazon ECS 支持包括对 Fargate 的支持。

除了日志和见解之外,您还可以使用 X-Ray 记录微服务之间的交互。这里有一些X-Ray examples with Fargate

EKS 控制平面也可以配置为log directly to CloudWatch

正如您提到的,您使用的是 Node.Js,如果您不想使用控制台日志记录,而是这里的库是三个:

【讨论】:

  • 谢谢。登录到控制台对我来说很好。在应用程序中生成控制台日志的好方法是什么。是 Console.log() ans 选项还是首选其他方式?
  • Console.log 是完美的,但是,我认为像 Morgan 这样的标准化工具是一个更好的选择。因为您可以更改日志记录输出是必需的。
猜你喜欢
  • 2011-09-16
  • 2021-08-28
  • 2023-03-27
  • 1970-01-01
  • 1970-01-01
  • 2017-07-25
  • 2018-06-23
  • 2023-03-12
  • 1970-01-01
相关资源
最近更新 更多