环境问题如何定位
部署环境,优先部署网关和user服务,把登陆页面部署成功后,进入页面点击对应模块根据具体报错缺少什么部署什么。
关注域名配置是否正确, 如果错误找op配置nginx,找前端开发修改请求域名。
一、域名、对应工程及简单架构图
域名
|
工程
|
gateway,gateway-web
|
|
web-plus
|
|
report-api
|
|
|
二、遇到问题如何解决
1、Jenkins部署的时候报错,一般情况下是依赖的服务有问题,没有找到对应的类或者方法,需要找开发确认分支内容是否正确,版本是否正确。如下图就是依赖的common工程有问题,需要确认common版本
2、Jenkins部署成功,服务启动失败
程序问题or配置文件有问题,都需要协调开发来修改。
配置问题的话大多数是mysql、redis配置错误、缺少配置信息等,可以具体看代码中的配置信息是不是存在。
配置信息位置在,src/mainn/resources/application.yml下,确认后找开发修改。
数据库配置错误:
redis配置错误:
缺少对应的配置信息:
3、接口返回错误
a.根据域名和url找到对应的网关查看服务器日志,查看服务器栈信息可以看出是哪个包的哪行代码除了问题,然后找到对应的应用服务(****all工程)日志查看并解决。例如下面信息可以看出问题出在OrderReportController.java 文件的345行;如果具体应用(***all工程)没有收到请求,大部分原因是没有服务提供者,需要确认应用服务是否启动成功并注册到zk,代码是否是最新的代码
b.在代码中定位问题,首先保证clone下来的分支和部署的分支一致;
https://saas-report.stage.ybm100.com/index/countNearlyInventoryInfo对应的网关是report-api工程,在report-api工程中搜索url找到对应的代码
idea中使用cmd+shift+f,PostMapping注解的含义是映射一个POST请求,就是我们请求的URL
点击对应方法进入对应调用的方法查看调用的是哪个工程的代码
在对应的工程中找到最后对应的方法,当搜索到多个的时候,找到一致的返回值对应的方法,然后查看代码一层层分析可能报错的原因