简化Java故障诊断工具:基于Bistoury的小集群适配Demo
版权申诉
93 浏览量
更新于2024-12-12
收藏 41.86MB ZIP 举报
资源摘要信息:"基于开源项目bistoury的Java应用故障诊断工具预研demo源码"
1. 开源项目bistoury简介
bistoury是一个开源项目,主要用于Java应用的故障诊断。该项目的设计主要针对多节点大集群,因此在小集群中的配置和调试可能会显得较为复杂。为了解决这个问题,预研demo对bistoury进行了修改,目的是简化少量节点和服务时的开发和部署过程,并且增加了对kubernetes集群的支持。
2. 故障诊断工具的特点
- 故障诊断工具主要用于极端情况下,定位和解决应用问题。在常规情况下,不建议高频使用,而是通过优化代码和测试来避免问题的发生。
- 故障诊断工具能够全面展示实例信息,进行故障点的精确观察,并且能够实时修改和热加载故障代码。
- 预研测试的demo基本功能可用,若发现问题会及时更新。
3. bistoury的主要功能和架构设计
bistoury具备优秀的功能和架构设计,但源码较为复杂,组件依赖和配置项较多,这对于新手来说可能会有些门槛,尤其对于小集群少量服务的小团队来说,部署和维护可能较为困难。
4. 预研demo所做的改动
- 修改了启动类,使其变为springboot启动方式,并删除了配置文件,改为在map中配置或在yaml文件中配置。
- 整理了包目录层次结构,合并了UI和proxy,删除了zookeeper和gitlab的依赖。
- 增加了kubernetes支持,能够自动在对应的pod上执行命令启动agent,1-2秒后即可看到JVM信息。
- 修改了ClassPathLookUp配置,使useDefaultClassPath始终为true,并修改了bistoury-agent-env.sh,设置了BISTOURY_PROXY_HOST为service地址,增加了对sqlite的支持,避免了在某些环境中无法使用rocksdb的问题。
- 修改了LoginController,使用默认的admin/123456登录信息。
5. 启动方式
- 启动只需要运行ServersideApplication,并配置好masterUrl和token。
- 需要调整start_agent.sh脚本中的proxy地址为本地端口,并保证pod内能够访问到本地,这样会自动调用exec拉起agent(大概需要1-3秒)。
6. 使用条件
- jdk版本必须是java 8。
- 当前版本仅支持deployment类型的应用。
- 目标pod镜像内必须包含bash、wget、tar命令。
7. 使用场景与建议
- 该故障诊断工具适用于极端情况下的问题定位,而不是作为常规工具使用。
- 在日常开发中,建议编写高质量的代码和进行充分的测试,从而降低故障发生的概率。
- 该工具的主要使用手段包括全方位展示实例信息、精确观察故障点、故障代码的实时修改和热加载,提供了一种在线诊断的能力。
8. 社区贡献
如果开发者在使用过程中遇到问题或对改进有想法,可以联系作者获取交流和帮助,并鼓励一起参与简化或丰富该预研demo。源码的官方地址是qunarcorp/bistoury.git。
以上详细介绍了基于开源项目bistoury的Java应用故障诊断工具预研demo源码的主要内容和使用方法,以及作者为简化使用而做出的改动和改进,还包括了如何启动和运行该工具,以及对使用者的建议。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2024-03-23 上传
2024-08-27 上传
315 浏览量
2024-03-23 上传
2024-01-15 上传
296 浏览量
武昌库里写JAVA
- 粉丝: 7193
- 资源: 3329
最新资源
- RiftOnThePi:一个针对 Raspberry Pi 的简单 Oculus Rift 测试应用程序,用于评估其性能
- web_design
- git-it-done:帮助在git上搜索打开的票证的工具
- OBLOG 素颜
- pytest-intro:pytest简介
- mailmark:一个马尔可夫链生成器,它使用邮件列表档案来生成合成电子邮件,就好像它们是由您选择的邮件列表成员编写的一样
- HadSky轻论坛 v4.9.0 正式版
- 【python小游戏】-数独游戏
- hiupload-client
- C#串口调试助手.rar
- multi-k8s
- inCode:个人博客的来源
- Buzz.Hybrid:Buzz.Hybrid 是 Jeroen Breuer 和 Jeavon Leopold 为 Umbraco 开发的令人敬畏的混合框架的配对版本
- Abrir-Ventanas-Laboratorio5
- glass-calculator
- Dataquest