【发布时间】:2017-09-13 05:43:24
【问题描述】:
我一直在寻找将来自负载平衡架构的日志组合起来的解决方案,以便我可以有效地调试服务器错误或访问日志。截至目前,我需要单独检查每个 Web 节点。任何开箱即用的解决方案都会很好。
【问题讨论】:
-
我认为您正在寻找像 Loggly (loggly.com/docs/nginx-server-logs) 这样的服务,可以将您的所有日志收集到一个地方。
我一直在寻找将来自负载平衡架构的日志组合起来的解决方案,以便我可以有效地调试服务器错误或访问日志。截至目前,我需要单独检查每个 Web 节点。任何开箱即用的解决方案都会很好。
【问题讨论】:
有许多 OOTB 工具(商业和 FOSS)可以收集 您的日志并提供一个界面来可视化和搜索它们。为了 FOSS,看看 logstash 和 fluentd,您可以自行托管(如果 您还没有准备好离开您的日志记录)。
到目前为止,您可能一直在对每台服务器上的日志文件进行 grepping。一个 对此的简单改进是一个并行执行的小脚本 跨机器。我偶尔会使用“telegrep”脚本来执行此操作 被称为:
% TG_REMOTES=app1:app2:app3
% telegrep somepattern /path/to/monster.log.gz
脚本本质上是将模式和文件传递给 ssh 进行循环
所有TG_REMOTES,比如:
for svr in TG_REMOTES; do ssh $svr "zgrep --some-options... $pattern $logfile"; done
【讨论】: