在内网环境中,Java服务调用PHP接口时报错的排查方法
一、背景
在内网环境下,一个java服务处理相关业务后,需要回调一个php服务接口。
由于php应用缺乏系统的监控,看到http回调其失败,却看不到问题背后的原因。
java编程是使用hutool框架调用php接口,本文从调用一个内部接口出错说起,希望可以起到抛砖引玉的作用。
下面是一个内网调用的大概流程:
既然服务B(Php应用)没有完善的系统监控,那么试着从nginx日志出发,看一看这个接口调用情况。
- status code 是否等于200
- upstream_response_time 响应时间分布情况
- upstream_addr php应用所在的机器IP,是某一个节点出问题了,还是共性问题
第一步,在阿里云SLS日志中心,如何解析nginx日志。
第二步,作为php开发人员,如何自测接口的性能耗时。这里使用简单的curl命令,调用多次进行统计分析。
二、SLS日志中心
1、添加Logtail配置
填写日志文件的路径:
处理模式,添加插件“NGINX模式解析”
填写nginx日志配置,在nginx服务器,找到/ect/nginx/nignx/conf文件。
把这一段内容复制出来。
log_format access '$remote_addr