一阵紧急的铃声打破了安静的夜晚,某项目的Grafana服务因Mysql漏洞修复导致无法正常启动,当天巡检人员在尝试一些方法后,问题依然存在。在了解了事情的背景后,我做出了如下动作:
1) 先启动Grafana,然后查看Grafana启动时报的错误日志
systemctl start grafana-server
systemctl status grafana-server -l
2) 以非注册服务方式启动Grafana,并查看报错信息
/usr/sbin/grafana-server --config=/etc/grafana/grafana.ini --pidfile=/var/run/grafana/grafana-server.pid --packaging=rpm cfg:default.paths.logs=/var/log/grafana cfg:default.paths.data=/var/lib/grafana cfg:default.paths.plugins=/var/lib/grafana/plugins cfg:default.paths.provisioning=/etc/grafana/provisioning
3) 经过上两步操作,并未发现明显的报错信息,所以只能查看/var/log/messages文件中包含的错误信息
tail -100 /var/log/messages |grep grafana | grep error
通过上述的错误日志,可知Grafana服务不能启动是由链接mysql拒绝导致的,登录mysql放开其访问权限,再启动Grafana,就解决了。
正所谓遇到问题不可怕,可怕的是不进行自我反思,通过这次故障修复,我总结了以下2点心得:
-
专注于事情,而不是专注于情绪。问题出现后,巡检人员本应该快速定位到问题的,但由于太担心不能快速解决问题,心态开始变得焦躁,从而不能静下来去分析问题。
-
定位问题的思路不准确。当服务启动不起来,未在第一时间查看相关日志信息,而是通过修改服务启动用户权限来解决,有点“误打误撞”的感觉。