【发布时间】:2017-05-20 04:37:49
【问题描述】:
我刚刚在带有 postgres 数据库的 Linux 服务器上安装了 sonarqube 6.2。
我遇到了一些数据库断开连接的问题,我显然通过在配置中取消注释来解决这些问题:
sonar.jdbc.maxActive=60
sonar.jdbc.maxIdle=5
sonar.jdbc.minIdle=2
sonar.jdbc.maxWait=5000
sonar.jdbc.validationQuery=select 1
sonar.jdbc.minEvictableIdleTimeMillis=600000
sonar.jdbc.timeBetweenEvictionRunsMillis=30000
但服务器会随机关闭(启动后约 1-2 小时),日志上没有任何内容,
==> logs/ce.log <==
2017.01.05 15:40:38 INFO ce[][o.s.p.StopWatcher] Stopping process
==> logs/sonar.log <==
2017.01.05 15:40:38 INFO app[][o.s.p.m.Monitor] Process[ce] is stopping
==> logs/ce.log <==
2017.01.05 15:40:39 INFO ce[][o.s.ce.app.CeServer] Compute Engine shutting down...
==> logs/sonar.log <==
2017.01.05 15:40:41 INFO app[][o.s.p.m.Monitor] Process[ce] is stopped
2017.01.05 15:40:41 INFO app[][o.s.p.m.Monitor] Process[es] is stopping
==> logs/es.log <==
2017.01.05 15:40:42 INFO es[][o.s.p.StopWatcher] Stopping process
2017.01.05 15:40:42 INFO es[][o.elasticsearch.node] [sonarqube] stopping ...
2017.01.05 15:40:42 INFO es[][o.elasticsearch.node] [sonarqube] stopped
2017.01.05 15:40:42 INFO es[][o.elasticsearch.node] [sonarqube] closing ...
2017.01.05 15:40:42 INFO es[][o.elasticsearch.node] [sonarqube] closed
==> logs/sonar.log <==
2017.01.05 15:40:43 INFO app[][o.s.p.m.Monitor] Process[es] is stopped
<-- Wrapper Stopped
我的第一个猜测是这可能是数据库连接超时的问题?但是数据库安装在同一台机器上,它真的随机停止:
2017.01.05 03:07:14 INFO app[][o.s.application.App] SonarQube is up
2017.01.05 05:38:06 INFO app[][o.s.p.m.Monitor] Process[ce] is stopping
2017.01.05 11:07:53 INFO app[][o.s.application.App] SonarQube is up
2017.01.05 12:36:52 INFO app[][o.s.p.m.Monitor] Process[ce] is stopping
2017.01.05 14:22:03 INFO app[][o.s.application.App] SonarQube is up
2017.01.05 15:40:38 INFO app[][o.s.p.m.Monitor] Process[ce] is stopping
任何帮助将不胜感激,谢谢
编辑:它只是在我使用它时崩溃了,服务器交换了很多,我会尝试释放一些内存(顺便说一句,我有 sonar.web.javaOpts=-Xmx512m -Xms128m -XX:+HeapDumpOnOutOfMemoryError -server 并且没有显示转储)
【问题讨论】:
-
您应该检查文件
$SONARQUBE_HOME/temp/sharedmemory没有被其他进程删除或触及。请注意,临时目录的路径可以使用属性sonar.path.temp进行配置 -
有什么办法可以“看到”这个吗?我可以在日志中清楚地看到服务器正在关闭,我所缺少的是原因。