php小编草莓将Docker容器日志获取到Elasticsearch的最佳方式是使用Filebeat。Filebeat是一个轻量级的日志文件数据收集器,可以将Docker容器的日志实时发送到Elasticsearch进行索引和存储。通过配置Filebeat的docker input和elasticsearch output,可以方便地实现将Docker容器日志导入到Elasticsearch的过程。同时,Filebeat还提供了丰富的过滤和解析选项,可以根据需求对日志进行处理和转换。这种方式不仅简单易用,而且效率高,是获取Docker容器日志的最佳选择。
我有一个在容器中运行的 go 应用程序,它执行大量日志记录:
log.Println("Something happened!")
由于我可以 ssh 到它运行的服务器,所以我可以执行 docker logs -f [id]
来查看 stderr
输出,这一切都很好。
但现在我希望日志进入 elasticsearch。
最好的方法是什么?我见过很多复杂的方法。
一种方法是使用 gelf 日志记录格式和 logstash,但我能找到的唯一 go gelf 格式化程序非常旧。
或者记录到文件并使用 filebeat。但我不想跳过该文件步骤吗?
我会尝试使用 docker 设置 Fluentd:
https://www.php.cn/link/39799c18791e8d7eb29704fc5bc04ac8
https://docs.docker.com/config/containers/logging/流利/
然后让 fluidd 推送到elasticsearch:
https://www.php.cn/link/e0330da43b4d33f4ef9247ad260074f4
以上是将 Docker 容器日志获取到 Elasticsearch 的最佳方式是什么?的详细内容。更多信息请关注PHP中文网其他相关文章!