Arthas使用的各类方式 | 七日打卡

188 阅读2分钟

前言

之前介绍过Arthas的Web Console简单实现。知道我们在整个集群里面如何更好的运用开发工具,当然注意点也说明了。当然每个公司的架构也是不同的,所以针对没有加入上述方案的arthas的用户,这里罗列的说下还有哪些方法。

方案介绍

方案一

往往最简单的方法实际是最有效的。

我们可以直接通过官网下载对应的jar,然后运行再进行jar再执行对应的命令。

命令如下:

java -jar arthas-boot.jar [option]

演示如下:

方案二

基于Spring相关搭建的项目直接加入依赖(需要支持对应的)。

SpringBoot项目依赖:

	  <dependency>
            <groupId>com.taobao.arthas</groupId>
            <artifactId>arthas-spring-boot-starter</artifactId>
            <version>${arthas.version}</version>
        </dependency>

SpringBoot项目依赖:

	 <dependency>
            <groupId>com.taobao.arthas</groupId>
            <artifactId>arthas-agent-attach</artifactId>
            <version>${arthas.version}</version>
        </dependency>
        <dependency>
            <groupId>com.taobao.arthas</groupId>
            <artifactId>arthas-packaging</artifactId>
            <version>${arthas.version}</version>
        </dependency>

本地项目启动之后可以直接访问:

http://127.0.0.1:3658/

当然还可以结合之前文章介绍的Web Console。例如配置文件中增加对应的配置信息:

arthas.agent-id=qwejqjnnnunnq
arthas.tunnel-server=ws://server地址:7777/ws

演示如下:

以上步骤就是先把tunnel-server启动,然后本地配置连接tunnel-server。然后输入配置的Id,即可完成对应的调试。

方案三

第三种则是基于docker配置,目前上容器服务的企业不在少数。对于容器服务,之前介绍的文章也是可以适用的,将jar下载下来之后进行 ADD也是可以的。

其实更有简单的方法:

FROM openjdk:8-jdk-alpine
ADD target/*.jar app.jar
# copy arthas
COPY --from=hengyunabc/arthas:latest /opt/arthas /opt/arthas
RUN apk add --no-cache tini
ENTRYPOINT ["/sbin/tini", "--"]

上述是通过构建Dockerfile来完成的,这里就直接将这里部分进行贴出来,这里是将当前arthas中的文件复制到对应的容器中,之后我们可以通过exec -it进入执行,步骤和方法一类似。

总结

以上介绍了三种部署以及运行arthas的方法,企业可以根据当前的项目架构选择合适的部署进行解决。为什么需要????就因为能帮助开发解决问题,不需要来回发版!!!!!!