一尘不染

如何启用ElasticSearch http访问日志

elasticsearch

我用http 9200打开了几个客户端节点,以切断ElasticSearch查询/索引。我想通过http 9200从客户端记录访问日志,就像Http-
Apache拥有access.log一样。我应该如何在ES中启用它。


阅读 1518

收藏
2020-06-22

共1个答案

一尘不染

Elasticsearch本身没有这样的东西。

但是,如果安装Shield插件,则可以通过将其添加到elasticsearch.yml配置文件中来启用审核

shield.audit.enabled: true

然后,您将elasticsearch-access.log在ES日志文件夹中获得一个名为的新文件。

@lucabelluccini的更新:将审核日志屏蔽到syslog

如果您有兴趣将此类审核日志转发到syslog,可以感谢log4j SyslogAppender类,该类允许通过本地套接字将日志转发到syslog。

编辑您的logging.yml(自定义格式等…)

appender:
  syslog:
    type: org.apache.log4j.net.SyslogAppender
    syslogHost: localhost
    facility: local0
    layout:
      type: org.apache.log4j.PatternLayout
      conversionPattern: "%d{ISO8601} %t %p %c %M %m %n"

确保rsyslog配置允许UDP源。

将此添加程序与屏蔽审计主题相关联。

2020-06-22