刚开发找到我,反馈现场大量流程无法发送,说是锁的问题。
我问:发送之后是一直在等待,还是马上会返回错误。
得到答复:会马上报错。
原本这种错误看下后台日志,不过节点过多,无法定位到是哪个节点,最快的方式是用chrome看看返回,捕获的请求headers如下:
Request URL: http://11.15.22.1/web/gg/project/common/ggpmsOperateAction.do
Request Method: POST
Status Code: 497
Remote Address: 11.15.22.1:80
很少见的的http code,搜索了一下:
497 - normal request was sent to HTTPS
解释:当此虚拟站点只允许https访问时,当用http访问时nginx会报出497错误码
问题是系统并没有用到nginx,也没有使用https啊,猜测是系统代码定义的。最后看了一下代码,是一个filter加了安全的验证导致的,错误代码返回就是497。
诊断过程很简单,想说的是,并不是每个错误都需要看错误日志的,有的时候效率不高。