2016年11月22日星期二

Hawkular_003:运行 APM 监控 Java Web 应用

环境:MAC OS X 10.12.1 + Hawkular APM 0.12.0.Final + JBoss EAP 7.0.3

以 JBoss EAP 7 的官方 helloworld 为例说明,如何使用 Hawkular APM 监控 Java Web 应用。

1. 设置 JDK 8 环境
Hawkular APM  和 JBoss EAP 7 都需要在 JDK 8 才能运行。
$ . ~/setJdk8Env.sh

2. 配置 helloworld 应用的 pom.xml 文件
(1)增加 properties
<version.org.hawkular.apm>0.12.0.Final</version.org.hawkular.apm>
(2)增加 dependencies
<!-- Import the Hawkular API -->
<dependency>
    <groupId>org.hawkular.apm</groupId>
    <artifactId>hawkular-apm-client-opentracing</artifactId>
    <version>${version.org.hawkular.apm}</version>
</dependency>
<dependency>
    <groupId>org.hawkular.apm</groupId>
    <artifactId>hawkular-apm-trace-publisher-rest-client</artifactId>
    <version>${version.org.hawkular.apm}</version>
</dependency>
(3)修改 WildFly plugin,指向 JBoss EAP 7 实例
<!-- WildFly plug-in to deploy the WAR -->
<plugin>
    <groupId>org.wildfly.plugins</groupId>
    <artifactId>wildfly-maven-plugin</artifactId>
    <version>${version.wildfly.maven.plugin}</version>
    <configuration>
        <hostname>127.0.0.1</hostname>
        <port>19990</port>
        <username>admin</username>
        <password>welcome@1</password>
    </configuration>
</plugin>

3. 启动 Hawkular APM
Hawkular APM 已经安装上一篇文章安装完毕。
$ . ~/setJdk8Env.sh
$ cd /Users/maping/Tools/hawkular/apm/dist/bin
$ ./standalone.sh -Djboss.http.port=9411访问 http://localhost:9411/ 登录账户 jdoe/password

4. 启动 JBoss EAP 7
$ . ~/setJdk8Env.sh
启动 JBoss EAP 7 前,要设置 Hawkular APM 环境变量,此步很重要!!!
$ . ~/Tools/hawkular/apm/dist/apm/setenv.sh 9411
$ cd /Users/maping/Redhat/eap/demo/7.0/2017-02-04
$ ./jboss-eap-7.0/bin/standalone.sh -Djboss.server.base.dir=./myeap -c standalone-full.xml -Djboss.socket.binding.port-offset=10000

5. 发布 helloworld 应用
$ . ~/setJdk8Env.sh
$ cd /Users/maping/Software/eap/7.0/jboss-eap-7.0.0.GA-quickstarts/helloworld
$ mvn clean install wildfly:deploy
访问 http://localhost:18080/jboss-helloworld
$ mvn wildfly:undeploy // 卸载

6. 发布 helloworld-mdb 应用
$ . ~/setJdk8Env.sh
$ cd /Users/maping/Software/eap/7.0/jboss-eap-7.0.0.GA-quickstarts/helloworld-mdb
$ mvn clean install wildfly:deploy
访问 http://localhost:18080/jboss-helloworld-mdb/ 向 Queue 中发送消息
访问 http://localhost:18080/jboss-helloworld-mdb/HelloWorldMDBServletClient?topic 向 Topic 中发送消息
$ mvn wildfly:undeploy // 卸载

7. 查看 Hawkular APM 控制台




参考文献:
1. https://hawkular.gitbooks.io/hawkular-apm-user-guide/content/quickstart/

没有评论: