点评CAT搭建 分布式监控系统

时间:2022-04-10 10:18:02

安装环境


jdk-7u55-windows-x64.exe

apache-maven-3.2.3

apache-tomcat-7.0.69


https://github.com/dianping/cat  cat源码

https://github.com/dianping/cat/tree/mvn-repo  cat   maven依赖JAR


前期工作完成后

在cat源码里会有一个cat-home目录  里边有一个

\script\Dianping CAT 安装说明文档.md

这个说明可以用记事本打开,editplus,pad++


需要注意的是

上边说的JDK和maven必须是那个版本,不然maven无法打包成功


maven打包的时候必须设置私服地址(你公司的私服地址)不然去*仓库下载的jar 打包不会成功


在配置datasources.xml文件的时候需要用ansi编码(配置文件保存方式都要用ansi编码)

并且去掉<connectionProperties><![CDATA[useUnicode=true&autoReconnect=true]]></connectionProperties>这段


在mysql创建数据库的时候需要设置字符集为utf-8


其他步骤按照文档依次进行

安装完成后可以访问http://127.0.0.1:8080/cat


客户端配置需要在web服务的根目录新建data\appdatas\cat 目录(如果你的web容器在C盘那么就安装的C盘如果为linux则创建到根目录并且赋予读写权限)

并在目录下新建client.xml(配置文档里有模板)并设置ip为你服务的IP

<server ip="192.168.21.7" port="2280" http-port="8080" />

在项目里加入相关maven依赖

                <dependency>
<groupId>com.bailian.cat.client</groupId>
<artifactId>cat-client</artifactId>
<version>1.3.6</version>
</dependency>


<dependency>
<groupId>org.codehaus.plexus</groupId>
<artifactId>plexus-container-default</artifactId>
<version>1.6</version>
</dependency>


<dependency>
<groupId>org.unidal.framework</groupId>
<artifactId>foundation-service</artifactId>
<version>2.2.0</version>
</dependency>

代码中进行埋点

// Cat监测-head start
//URL为你cat控制台设置的过滤关键词可以设置,默认为URL等不可随意填写</span>
String type = "URL";
String name = "你的接口/方法名称";
Transaction t = Cat.newTransaction(type, name);
//最后一个参数设置后可在cat控制台看到对应的参数 一般存放请求参数等
Cat.logEvent(type, name, Event.SUCCESS, "key=value&key1=value");
Cat.logMetric(name);
try{
//你的业务代码
......
//执行最后一步默认为成功,设置标示
t.setStatus(Transaction.SUCCESS);</span>
} catch (Exception e) {
log.error("异常:", e);
//异常设置标示
Cat.getProducer().logError(e);
t.setStatus(e);
} finally {
//完成事务
t.complete();
}



 

需要注意的是在data\applogs\cat目录有对应的客户端和服务器日志,有异常就去日志排查错误

有问题可以与我一起探讨QQ18085608