.net - 如何从多个 beanstalk 应用程序实例登录到一个 aws cloudwatch 流
问题描述
我有 2 个实例的 AWS Beanstalk 应用程序。每个实例都会在 CloudWatch 中创建自己的日志流。
每个实例都是带有 AWS.Logger.AspNetCore nuget 包的 .NET Core 应用程序主机。应用设置部分:
"Logging": {
"Region": "eu-central-1",
"LogGroup": "MyLogGroup",
"LogLevel": {
"Default": "Debug",
"System": "Warning",
"Microsoft": "Warning"
}
有没有办法将所有实例记录到单个 commong 日志流?
解决方案
日志流是共享同一源的一系列事件。
这基本上意味着您的 Elastic Beanstalk 环境创建的每个实例都会将事件发送到单独的日志流,因为即使它们是同一个应用程序,它们在技术上也是不同的事件源。这同样适用于其他 AWS 服务,尤其是 Lambda,您可以同时运行 1000 个相同函数的实例;每个都会产生自己的日志流。
如果您正在使用控制台搜索特定内容,则在标记为 的日志组的根目录中有一个选项Search Log Group
,它允许您使用控制台搜索日志组中的所有日志流。
对于基于 CLI 的搜索,您可以使用 AWS CLI,但我们发现这在我们的环境中很麻烦。有许多用于日志聚合、处理和分析的商业和开源解决方案。对于我们来说,我们已经成功使用开源AWS Cloudwatch Logs For Humans,它允许您“以伪实时方式跨多个流聚合和查询日志” .
推荐阅读
- webrtc - 当第三个人在 webrtc 中加入房间时,onaddstream 事件不起作用
- c++ - 使用 Visual Studio 在 C++ 中的 istream 编译错误
- reactjs - UI小猫按钮自定义映射不起作用
- mongodb - MongoDB如何将所有文档的属性值从int转换为字符串?
- android - 长按recyclerview项目后如何在底部导航中显示菜单
- java - onClick 方法出现 NullPointerException
- google-nearby - 发送文件时附近连接一直断开
- shopify - 如何将产品添加到 Shopify 的主页?
- pytorch - pytorch张量排序的算法是什么
- java - Java中的void方法| BankAccount 类构造函数