1,http status 5xx 一般就是服務器端的問題,所以直接定位服務器存在什么問題
2,正常情況下,可以通過nginx日志,例如access_log,error_log,最后可以根據日志信息定位問題,例如:https://cloud.tencent.com/developer/article/1467799 這篇文章示例定位過程
3,但是我遇到的問題是:nginx沒有日志,目標service下也沒有日志
4,猜想,nginx可能有什么設置上的問題。
5,結果是:方法1,通過各種查閱nginx config內容 發現:nginx下B服務config,占用了A服務下config的http接口,導致A服務的http接口的流量導入到B服務,而B服務還沒有日志。調整nginx 下A服務和B服務的接口config,即為解決
方法2,設置全局nginx access_log,看這個全局的日志,避免有的項目沒有設置日志的問題
6,反思:1,當服務很多的情況下,有可能存在面向app端的服務,和面向管理平台的服務,屬於同一業務場景,可能會出現接口定義沖突的情況,所以服務命名的時候還是要盡可能准確,這樣就有可能避免服務接口相同,在一個服務器上部署的時候沖突問題