- 第一步:创建MySQL数据库
bistoury
,并导入script/schema.sql script/data.sql 两个脚本。在导入data.sql之前,需要先配置一下如下三个变量
- 第二步:执行构建脚本 script/build.sh 检查根目录下.mvn目录是否存在,不存在就从源工程中cp
- 第三步:启动bistoury-proxy。执行 /D/Workspace/Java/bistoury/bistoury-proxy/target/bistoury-proxy-bin/bin/bistoury-proxy.sh start 启动之前先修改bistoury-proxy-env.sh中JAVA_HOME的值
- 第四步:启动bistoury-ui . 启动之前,先要保证zookeeper可用,默认在/D/Workspace/Java/bistoury/bistoury-ui/conf/registry.properties中进行zookeeper的配置。执行/D/Workspace/Java/bistoury/bistoury-ui/target/bistoury-ui-bin/bin/bistoury-ui.sh start 启动直线先修改bistoury-ui-env.sh中JAVA_HOME的值
- 第五步:启动bistoury-agent
- Agent启动前需要在 /D/Workspace/Java/bistoury/bistoury-dist/target/bistoury-agent-bin/bin/bistoury-agent-env.sh的JAVA_OPTS设置以下参数
参数名称 | 是否必须 | 默认值 | 说明 |
bistoury.store.path | 否 | bistoury-agent/store | bistoury agent数据存放路径,包括rocksdb存放的监控、jstack及jmap数据和反编译代码临时文件的存放 |
bistoury.proxy.host | 是 | proxy的域名,具体值请联系管理员,agent依赖该值获取proxy的连接配置信息 | |
bistoury.app.lib.class | 是 | 应用依赖的jar包中的一个类(推荐使用公司内部中间件的jar包或Spring相关包中的类,如org.springframework.web.servlet.DispatcherServlet),agent通过该类获取应用jar包路径 | |
bistoury.pid.handler.jps.symbol.class | 否 | org.apache.catalina.startup.Bootstrap | attach的应用入口类,用于使用jps -l命令获取应用pid |
bistoury.pid.handler.jps.enable | 否 | true | 是否打开通过jps -l获取pid的开关 |
bistoury.pid.handler.ps.enable | 否 | true | 是否打开通过ps aux |
bistoury.app.classes.path | 否 | bistoury.app.lib.class对应jar包目录同级的classes目录 | 项目代码编译后字节码存放目录,一般情况下为classes目录 |
bistoury.agent.workgroup.num | 否 | 2 | agent netty work group 线程数 |
bistoury.agent.thread.num | 否 | 16 | agent执行命令的线程数 |
- 启动bistoury-agent: /D/Workspace/Java/bistoury/bistoury-dist/target/bistoury-agent-bin/bin/bistoury-agent.sh -p 36196 start (36196是待诊断jvm进程pid)
- 第六步:访问 bistoury-ui: http://127.0.0.1:9091 admin/admin 如果不能获取到信息,就访问http://localhost:9090/proxy.html - 【详细信息】中获取到AgentId,将其配置到http://localhost:9091/application.html - 【服务器列表】之中。(如果本机有多块网卡,一定要这么操作才能获取到正确的IP)
参考链接:
- https://github.com/qunarcorp/bistoury/blob/master/docs/cn/deploy.md
- https://gitee.com/feixueck/bistouryX/tree/master