我们正在经历我们的Artifactory实例的间歇性崩溃。日志中没有可见性。
UI正在对工件进行超时以及管理工件,但是运行结束点是工作的。
轻浮,准备就绪,ping API调用都返回OK状态检查显示每个服务健康。
我正在考虑添加一个虚拟工件作为健康检查,以保持该实例的可操作性(让ecs在重新启动任务时保持活动)。
一些背景:
我将开始监视jvm,tomcat作为下一步,以获得更多的洞察力。
更新220922:
jstat -gc/-gcutil和ps ax -T|grep java的监视数据(在崩溃之前、期间和期间)--没有发现任何异常值-- gc应该正常工作。-server -Xms7g -Xmx7g -Xss500m -XX:PermSize=500m -XX:+UseG1GC -XX:NewSize=1g -XX:MaxNewSize=1g -XX:OnOutOfMemoryError='kill -9 %p' -Djruby.compile.invokedynamic=false -Dfile.encoding=UTF8 -Dartdist=zip -Dorg.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH=true -Djava.security.egd=file:/dev/./urandom。在我挣扎的地方-我在日志里没有看到任何问题?我应该增加哪个日志的严重性(从信息到调试)来发现问题?
在崩溃期间(工件超时),我可以访问ui (/ui/登录)和一些api (即检查ping、活性、就绪性、路由健康、服务健康),但在部署人工物品时超时,并在登录期间更进一步(查看ui的其他部分)。
我如何调试derby db --也许是时候移到单独的db了?
发布于 2022-09-22 03:24:12
考虑到微服务状态是健康的,我想建议您回顾一下资源使用情况CPU、内存和来自代理层(nginx/apache)的通信(如果在这个体系结构中可用的话)。为了排除反向代理没有超时连接的可能性,如果直接访问不受限制,您是否可以尝试使用浏览器中的IP:PORT组合访问Artifactory?
如果系统由于线程耗尽而阻塞,也可以考虑收集螺纹转储。
https://stackoverflow.com/questions/73800312
复制相似问题