我有一个graylog 系统日志服务器在 debian 上运行,运行良好。我想将系统日志从我们的 Vmware ESX 主机发送到 Graylog。我通过执行以下操作将 ESX 主机指向系统日志:
我打开 vSphere Client 并选择我的主机。然后选择配置...高级设置,向下滚动并展开 Syslog 并选择全局。现在在 Syslog.global.loghost 下,我将服务器信息放入 udp://ipaddressofgraylog2:514,然后为 syslog 打开防火墙。此时一切正常。
我转到我的 Graylog 服务器,看到大量数据正在发送。我调整主机系统日志输出 -> vCenter,在清单中选择主机,然后选择配置选项卡 -> 高级设置 -> 配置 -> HostAgent -> 日志。将日志记录级别设置为“错误”(目前)。
我的问题:我仔细查看了Graylog“HOSTS”:
Graylog 列出了 31 个主机,但实际上只有 7 个主机。来自 ESX 主机的系统日志信息不能用“整洁”这个词来形容。我的问题是如何让它“整洁”?如果我有 3-4 个 ESX 主机像这样发送它们的系统日志,解析信息将非常困难。
这是graylog的问题吗?Vmware ESX v5.5的问题吗?
# Now we need to modify some things to get rsyslog to forward to graylog. this is useful for ESXi syslog format to be correct.
echo "Updating graylog2.conf and rsyslog.conf"
sed -i -e 's|syslog_listen_port = 514|syslog_listen_port = 10514|' /etc/graylog2.conf
sed -i -e 's|#$ModLoad immark|$ModLoad immark|' /etc/rsyslog.conf
sed -i -e 's|#$ModLoad imudp|$ModLoad imudp|' /etc/rsyslog.conf
sed -i -e 's|#$UDPServerRun 514|$UDPServerRun 514|' /etc/rsyslog.conf
sed -i -e 's|#$ModLoad imtcp|$ModLoad imtcp|' /etc/rsyslog.conf
sed -i -e 's|#$InputTCPServerRun 514|$InputTCPServerRun 514|' /etc/rsyslog.conf
sed -i -e 's|*.*;auth,authpriv.none|#*.*;auth,authpriv.none|' /etc/rsyslog.d/50-default.conf
echo '$template GRAYLOG2,"<%PRI%>1 %timegenerated:::date-rfc3339% %FROMHOST% %syslogtag% - %APP-NAME%: %msg:::drop-last-lf%\n"' | tee /etc/rsyslog.d/32-graylog2.conf
echo '$ActionForwardDefaultTemplate GRAYLOG2' | tee -a /etc/rsyslog.d/32-graylog2.conf
echo '$PreserveFQDN on' | tee -a /etc/rsyslog.d/32-graylog2.conf
echo '*.info @localhost:10514' | tee -a /etc/rsyslog.d/32-graylog2.conf
答案1
@Logman。我建议您前往以下网站,正确启动并运行 graylog2,以便在导入 graylog2 时清理 vSphere 主机系统日志。启动 Ubuntu 虚拟机并从头开始安装。
http://everythingshouldbevirtual.com/ubuntu-12-04-graylog2-installation