AWS 日志按请求分组
AWS log grouping by request
我最近从 Google App Engine 迁移到 AWS Fargate,似乎缺少的一项功能是 GAE 将匹配给定入站请求 ID 的日志分组,并且易于导航 UI 其中:
- 您会看到一个日志组列表,每个入站 HTTP 调用一个(例如
GET /items
)
- 单击其中一个组,您会看到与该请求相关的所有 GAE 日志的列表,按时间戳排序,从 GAE 收到请求到发回响应
我正在努力寻找 AWS 中的等效功能。有吗?如何设置类似的东西?
有选项,但与您在 Google App Engine 中使用的完全不同,不。
AWS X-Ray 可能是最接近您所谈论的功能类型的 AWS 服务,但它的真正目的是帮助您跨多个微服务或从您的代码跟踪请求到亚马逊服务和回来,这是一个比你描述的更复杂的用例。
X-Ray 使用 X-Amzn-Trace-Id
header,AWS Load Balancing 也可以做同样的事情,所以如果您对跟踪 ID 满意,那可能相对容易采用。如果您不使用负载均衡器或者您宁愿使用不同的格式,那么您没有理由不能在您的开发平台中使用来自框架的相关 ID,甚至是您的应用程序自定义的东西,特别是如果您不这样做需要 X-Ray 功能。我有使用自定义关联 ID 的微服务客户。
您可以在发送到 CloudWatch 的普通或结构化日志记录中包含这些请求/关联标识符,一旦这样做,您就可以根据这些标识符过滤 CloudWatch 日志。使用上面的自定义关联 ID,这就是操作人员在 CloudWatch 日志中跟踪请求时所做的事情。
所以...有没有像 GAE 中那样的选项 'for free'?不。如果你愿意,你能通过一点工作恢复大部分能力吗?当然。
我最近从 Google App Engine 迁移到 AWS Fargate,似乎缺少的一项功能是 GAE 将匹配给定入站请求 ID 的日志分组,并且易于导航 UI 其中:
- 您会看到一个日志组列表,每个入站 HTTP 调用一个(例如
GET /items
) - 单击其中一个组,您会看到与该请求相关的所有 GAE 日志的列表,按时间戳排序,从 GAE 收到请求到发回响应
我正在努力寻找 AWS 中的等效功能。有吗?如何设置类似的东西?
有选项,但与您在 Google App Engine 中使用的完全不同,不。
AWS X-Ray 可能是最接近您所谈论的功能类型的 AWS 服务,但它的真正目的是帮助您跨多个微服务或从您的代码跟踪请求到亚马逊服务和回来,这是一个比你描述的更复杂的用例。
X-Ray 使用 X-Amzn-Trace-Id
header,AWS Load Balancing 也可以做同样的事情,所以如果您对跟踪 ID 满意,那可能相对容易采用。如果您不使用负载均衡器或者您宁愿使用不同的格式,那么您没有理由不能在您的开发平台中使用来自框架的相关 ID,甚至是您的应用程序自定义的东西,特别是如果您不这样做需要 X-Ray 功能。我有使用自定义关联 ID 的微服务客户。
您可以在发送到 CloudWatch 的普通或结构化日志记录中包含这些请求/关联标识符,一旦这样做,您就可以根据这些标识符过滤 CloudWatch 日志。使用上面的自定义关联 ID,这就是操作人员在 CloudWatch 日志中跟踪请求时所做的事情。
所以...有没有像 GAE 中那样的选项 'for free'?不。如果你愿意,你能通过一点工作恢复大部分能力吗?当然。