logging - 将 Sentry 日志记录与Elasticsearch结合使用

标签 logging elasticsearch log4j sentry

我尝试将所有日志存储在哨兵实例中。根据this thread我尝试了以下操作:

将哨兵附加程序添加到loggin.yml:

es.logger.level: INFO
rootLogger: ${es.logger.level}, console, sentry
...
appender:
  console:
    type: console
    layout:
      type: consolePattern
      conversionPattern: "[%d{ISO8601}][%-5p][%-25c] %m%n"

  sentry: 
    type: net.kencochrane.raven.log4j.SentryAppender 
    dsn: "http://...@..."

并将raven-5.0.jarraven-log4j-5.0.jarraven-logback-5.0.jar复制到es / lib文件夹。启动过程中没有错误,但是即使控制台上有警告消息,哨兵也没有记录。 ES的版本是2.1.0。

我想念什么吗?

最佳答案

这是有效的解决方案(适用于ES 2.4.4):

  • 将以下库添加到ES的lib文件夹中:raven-7.8.2.jarraven-log4j-7.8.2.jarslf4j-api-1.7.24.jarslf4j-log4j12-1.7.24.jar
  • 更新config/logging.yml:
    rootLogger: ${es.logger.level}, console, file, sentry
    
    /* other appenders */
    
    sentry:
       type: com.getsentry.raven.log4j.SentryAppender 
       dsn: <DSN_HERE> 
       threshold: INFO
    
  • 重新启动ES实例
  • 关于logging - 将 Sentry 日志记录与Elasticsearch结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34894776/

    相关文章:

    elasticsearch - 无法索引/发现Elassandra中的多个字段

    google-app-engine - 清除 Google App Engine 中的日志

    elasticsearch - 为什么Linux进程中的xms xmx数量与elasticsearch统计信息不同?

    python - 为什么这个记录器不创建 Sentry 事件?

    elasticsearch - 在Elasticsearch中将int转换为时间戳获取小时

    java - 如何仅从日志文件中删除 Tomcat 信息

    hadoop - Log4j RollingFileAppender 没有将映射器和缩减器日志添加到文件

    java - 如何在 Spring-boot 中为 REST API 的每个请求创建唯一的 ID?

    spring - 防止 DispatcherServlet 在 Spring Boot Actuator 中记录端点

    java - 分布式系统应该使用哪些Appender?如何配置它们?