标签:agg 服务 环境 服务配置 swagger 磁盘 是否一致 错误 工作
有时候遇上服务报500,特别是后台服务会经常出现,500错误是内部服务器错误。遇上错误首先想到的肯定是先看看服务的进程还在不在,然后查看日志,从日志里面找原因。
根据工作中所爬过的坑,小结一下,可以从下面的方向进行排查:
1)检查数据库服务器,是否能够正常连得上,数据库机器是否挂了;
2)检查服务上的数据库相关的配置,是否正确;
3)检查swagger,看swagger页面是否能够正常访问,swagger里面的后台接口能否正常获取到数据库里面的数据;
4)如果数据库正常、配置正常,swagger也能获取到数据,而且查看日志的时候,发现日志报某些表不存在,但是等上某一台数据库,发现表是完整的。那么就需要检查一下所有的数据库机器里面的数据了。看看主从数据库里面的数据是否一致。如果数据不一致,且同步数据有问题,而服务正好连上问题数据库,那么就会出现页面上有些数据显示不出来,服务报500的情况;
5)如果是新搭建的环境,那就需要看看是否数据库没有进行数据的初始化了;
6)数据库的磁盘空间满了,这时候服务不一定会报500,但是页面上数据会加载不出来;
7)还遇到一种数据库异常就是,有一个鉴权的服务升级完了之后,发现所有的成员操作报没权限,但是服务是OK的。查看服务日志,日志报该服务配置的数据库用户没权限连接数据库。查看这个数据库的用户,发现这个库的用户和密码被谁删掉了(另一次是用户没有删,突然就没权限了),然后重新创建这个用户,重新授权,就OK了
有一次遇上服务报500,查看了机器的后台进程,服务的配置、数据库,一切正常。而且使用IP+端口访问后台swagger,也能够完整的获取到数据。但是使用域名去访问swagger的时候,发现swagger页面已经无法打开,经过排查域名,发现该服务的域名丢失,而前台调该服务是通过域名调用的,因此出现了报500的情况。
标签:agg 服务 环境 服务配置 swagger 磁盘 是否一致 错误 工作
原文地址:http://www.cnblogs.com/crystal523100/p/7487536.html