项目地址:https://github.com/dianping/cat
关于cat的介绍和安装网上很多,这篇文章只是写一下我安装cat的过程。
一、可以用git下载这个项目,也可以直接按下图所示下载zip文件,解压缩后是一个多模块的Maven项目。
我把解压缩后的文件都放在了E:\cat目录下。
命令行窗口进入E:\cat目录,执行mvn clean install -DskipTests,当然前提是你的系统安装了maven,并配置了环境变量。我用的公司电脑maven的setting.xml配了公司的资源库,刚开始有些jar包就没更新下来,后来改成从中央仓库下载就可以了。当然中央仓库太慢,可以配一个国内的maven镜像库。比如下面这个阿里的就不错,下载起来飞一般的感觉。
<mirrors>
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
</mirrors>
好了,执行完mvn clean install -DskipTests后,在各个模块项目中就生成了响应的jar包或war包。其中重点关注cat-home模块生成的war包,名字大约是cat-alpha-1.4.0.war,当然你的版本可能不是1.4.0,没关系。
接下来按理说应该在web容器(例如tomcat)下运行war包。但cat运行需要先初始化一个cat运行环境,生成相关的配置,比如配置连接mysql,生成一个cat数据库并创建一些表,以及创建cat的配置目录和日志目录。所以先说一下配置cat环境。
配置cat环境的步骤如下:
1、在E:\cat目录下执行mvn cat:install
安装过程中,会提示输入mysql的连接地址,输入格式严格按 jdbc:mysql://127.0.0.1:3306 这种格式来,后面不要加一些额外参数,然后输入用户名、密码(该用户要有创建database的权限),之后会自动在mysql中创建cat数据库,然后创建一堆表。
2、Linux下创建/data/appdatas/cat和/data/applogs/cat两个目录,Windows系统下 则是在系统运行盘下创建/data/appdatas/cat和/data/applogs/cat目录,要有读写权限。
然后把cat项目下的script目录下的配置文件client.xml、datasources.xml、server.xml拷贝到/data/appdatas/cat目录下(里面的2281端口是jetty部署的,如果用tomcat,请改成8080)
//这个地方要特别说明一下,如有cat的源文件在E盘,则相关配置文件就应该放在e:/data/appdatas/cat/下面
好了,下面就要运行war包了。进入cat-home目录,执行mvn jetty:run,启动服务,没错误的话,浏览器打开http://localhost:2281/cat 可以看到cat监控的界面。
网上说jdk要用1.6或1.7的,1.8会有问题。我没亲测过。
我在自己的项目里接入cat监控的步骤:
1、导入cat-client.jar包,在资源目录(例如src/main/resources)下新建文件夹META-INF,间app.properties文件,内容是app.name=自己的项目名
还可以配置拦截器监控持久层(比如mybatis)的性能。这个就不多说了,cat项目里面有个入门文档,可以参考进行配置。
最后说一下,因为我的项目是跑在D盘下的resin(用tomcat也可以)里面,所以还要在D盘下创建目录data/appdatas/cat和/data/applogs/cat,把E盘的data/appdatas/cat下面的client.xml拷贝过来就行。
好了,把你的项目跑起来,访问一下,看看http://localhost:2281/cat页面(实时模块)正确的话已经显示出你刚才的访问情况了。当然要确保你的项目部署的服务器和cat监控安装的服务器之间能ping通。
最最最后再说一下,为啥要指定创建/data/appdatas/cat和/data/applogs/cat这两个目录呢,因为cat客户端要上报给服务端,cat-client.jar包里写死的从/data/appdatas/cat读取配置,向/data/applogs/cat输出日志。