rsyslogd真不好用,解决因为dns解析问题导致的rsyslogd服务异常


5月6日,发现es中5号及6号的的syslog index异常,从5号下午开始,仅有极少量的数据,判断发生异常

仔细观察dstat结果,在网络流量上呈现出时断时续的状态,一开始并不理解这样的原因,不过事后来看,这就是某个环节因为某个异常反复进入 工作-异常退出-恢复 这个流程

我们的日志传输是通过rsyslog - heka - kafka的流程, 自己写了个程序往heka发送日志,发现一切正常,认为问题环节是在rsyslog这边

开启debug模式 rsyslogd -dn ,查看输出的结果

误打误撞: 发现一般日志都显示正常,唯独一台waf的日志有很多乱码,感觉这个waf日志有问题

修改rsyslog,不接收这个waf日志,发现立刻正常, 如果只接收这个waf日志,很快异常。 OK问题点确定

仔细的排查rsyslog -dn的输出,发现两个疑点:

main Q: queue nearly full (9800 entries), but could not drop msg (iRet: 0, severity 6)
Host name for your address (192.168.1.8) unknown
0673.629943110:7f498c963700: dnscache: entry (nil) found


吐槽下rsyslod -dn ,出错了也给个log吧,也给个ERROR啥的关键字是不


修改参数增加queue length解决掉第一个问题,但是问题依旧
最后尝试rsyslogd -n -x,禁用dns解析, 终于解决了问题

原文地址:https://www.cnblogs.com/yeyong/p/10848006.html