通过 Dockerfile 部署 Java 探针
通过部署探针,即可实现业务的全链路跟踪和异常捕获。
- 适用版本: Tomcat7 及其以上版本、JDK 1.6 及其以上版本部署的 Java 服务
- 可监控协议: HTTP、Redis、Memcached、DB、RabbitMQ、Dubbo
- 支持部署方式:
- 直接在云基础服务容器中部署探针 使用场景: 在云基础服务已有运行中的容器,希望直接在容器中部署探针
- 通过 Dockerfile 部署探针 使用场景: 代码已经上传到代码托管服务,并且项目中包含 Dockerfile 文件用于构建镜像,希望通过 Dockerfile 方部署探针
- 在任意主机中部署探针 使用场景: 在任意主机(包括但不限于云基础服务)上直接部署探针
操作步骤
1. 在项目 Dockerfile 中增加探针安装内容
...
# 请确保安装了 wget 和 tar
wget -P /root/java/ http://nos.netease.com/agent/napm-java-agent.tar.gz
tar zxvf /root/java/napm-java-agent.tar.gz
...
2. 修改启动脚本
建议将启动脚本复制一份放到项目中(或放到桶里),修改启动脚本,添加如下启动参数:
-javaagent:<user_agent_dir>/napm-java-rewriter.jar
3. Dockerfile 中 ADD 脚本
...
ADD catalina.sh /root/tomcat8/bin/
...
4. 构建镜像
5. 启用新镜像
无状态服务支持直接更改镜像版本;有状态服务需要使用保存的镜像重新创建服务。 服务启动后,在 应用监控模块 可以看到全链路数据展示的变化:
Attention
1.Javaagent 推送数据的频率为1分钟;
2.首次启动 agent,监控页面将在1分钟后获取到数据。