java - 如何记录到显式 AWS CloudWatch 日志流并以编程方式更改它 (Java/Scala/log4j)

标签 java scala amazon-web-services logging amazon-ec2

我有一个在 EC2 上运行的 Scala 守护进程来处理作业。对于每个作业,我都知道一个(可能)不同的日志流,我想将消息附加到其中。

如何制作一个特定于日志流的 Appender,将其附加到我的 log4j 记录器,并在监听器转到下一个作业时更改它?

最佳答案

这种类型的集成混合了不同的内容,例如 AWS Java API、Log4J API 和 AWS Cloud Watch 配置。

您可以通过实现 customized log4j appender 来实现这一点。 您可以从 github 中利用的一个示例是 following link .

这个想法是将 log4j 附加程序类添加到源项目中并将其与 log4j 库一起使用。附加器将使用 AWS CloudWatch API附加特定 log stream and log group 的日志您需要在 AWS 帐户上创建。

示例:CloudwatchAppender.java

您的程序创建的每个日志都会发送 cloud watch event .

关于java - 如何记录到显式 AWS CloudWatch 日志流并以编程方式更改它 (Java/Scala/log4j),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39259695/

相关文章:

wcf - 如何使用 Let's Encrypt 生成用于 WCF 休息服务的证书?

java - 在 Java 中解析 Content-Type header 而不验证字符集

java - tomcat 中有 100 个线程 TIMED_WAITING,导致它在线程总数超过 200 时停止

scala - Spark十进制类型精度损失

scala - Scala 中的 =!= 运算符是什么?

ruby-on-rails - 使用Paperclip和IAM策略将文件上传到Amazon时访问被拒绝

ubuntu - 无法从 S3 下载文件

java - Eclipse 插件开发 - 如何获取子文件夹列表并继续导航文件夹?

java - 在我的类中传递/赋值时出现 NullPointerException

scala - 通用 scala 函数,其输入是变量 arity 的函数