背景:
之前sonar使用都是正常的,突然出现问题,网页可以访问,但无任何数据。
1.推测是与数据库的连接问题。
验证:
网页可以访问是因为残存的sonar进程。
注意:因为该问题出现在正常使用之后报错,应用版本没有升级过,不需要考虑版本问题。

1.jenkins调用sonar报错在这里插入图片描述

2.排查sonar情况

2.1 es报错Process exited with exit value [es]: 1

原因:es不能使用root用户启动,因此sonar不能使用root用户启动。创建sonar用户
在这里插入图片描述

2.2 es报错java.nio.file.AccessDeniedException: /var/sonarqube/temp/conf/es/elasticsearch.yml

原因:使用root启动sonar后,导致es文件的权限为root。sonar用户无权修改文件
在这里插入图片描述

解决方案:

  1. 到达对应的es目录,赋予sonar的用户的可执行权限
 chown -R sonar:sonar es/
  1. es.log的可执行权限也需要调整
 chown -R sonar:sonar es.log

2.3 端口占用

web报错java.net.BindException: 地址已在使用
在这里插入图片描述

使用 ./sonar.sh stop 命令,返回sonar未启动
但使用ps -ef|grep sonar 能够查询到数据
需要干掉残留的进程 kill -9 [进程号]

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐