美团点评cat实时监控详细部署帮你踏过所有的坑
CAT是一个实时和接近全量的监控系统,它侧重于对Java应用的监控,除了与点评RPC组件融合的很好之外,他将会能与Spring、MyBatis、Dubbo 等框架以及Log4j 等结合,支持PHP、C++、Go等多语言应用,基本接入了美团点评上海侧所有核心应用。目前在中间件(MVC、RPC、数据库、缓存等)框架中得到广泛应用,为美团点评各业务线提供系统的性能指标、健康状况、监控告警等,在微服务监控
CAT是一个实时和接近全量的监控系统,它侧重于对Java应用的监控,除了与点评RPC组件融合的很好之外,他将会能与Spring、MyBatis、Dubbo 等框架以及Log4j 等结合,支持PHP、C++、Go等多语言应用,基本接入了美团点评上海侧所有核心应用。目前在中间件(MVC、RPC、数据库、缓存等)框架中得到广泛应用,为美团点评各业务线提供系统的性能指标、健康状况、监控告警等,在微服务监控领域也是非常有用的一套组件。支撑这美团每天450亿的消息,50TB的数据监控,应用于 7000+应用服务器,2000+的业务,单台机器能15W qps,15台CAT物理集群,有着极高的性能,同时CAT支持丰富的报表,架构拥有灵活的扩展性,用户可以定制自己的监控、报表需求,本文将就CAT的部署、架构源码以及多语言支持等方面展开剖析。CAT在携程、陆金所、猎聘网、找钢网、平安银行等多家互联网公司生产环境应用。
这个项目光看GitHub上面的根本不够 我踩了太多的坑每个版本都下了
这里是Cat下载地址https://github.com/dianping/cat/tree/master/integration
现在总结一下。首先我来说说版本先说然后再说怎么跑
找不到版本的留下邮箱我发
master是最新的版本但是我第一次尝试没有成功,按照百度的流程会出现
如下之类的500报错
然后用了一个百度的版本不知道是不是个别大佬自己封装的 需要的可以留下邮箱我会发
这个版本能跑起来就这样总结
然后我用了
这个版本 youyong 这个版本也能够跑起来但是个别功能500
然后我最后发现这个版本毕竟稳定,但是我没有找到集成logback的jar这需要自己写
版本介绍完了下面说一下如何跑起来
首先说说我的环境
jdk8
win10
MVN
MYSQL5.7
TOMCAT8.0 我以前是有9.0的 网上说跑不起来 我也不敢弄所以直接弄个8.0版本
下载完后解压
这个目录直接运行
mvn clean install -DskipTests
打包
然后紧接着运行 会输入数据库账号密码
mvn cat:install
你会发现当前这个项目存在的根目录下会有data这个目录 根目录==CDEF盘 然后数据库多出个cat
如果上面这步执行不了不要着急,我第一次也是这样,我也是后面用2.0版本才成功3.0我没成功 可能是mvn版本问题
我来说说无法执行这步的解决方法
首先在项目目录
有个这个目录 先在数据库创建名字cat的库
执行上图文件夹里面的sql文件
就解决数据库问题了
然后也在
这个目录下会有xml配置文件,你手动创建目录我的项目放在D盘所以D 你们根据情况 linux就不用区分
D:\data\appdatas\cat
将上图配置文件复制过来等下再说配置内容
这是我复制过来后的样子 其他多余文件在项目跑起来会自己创建 但是要给data目录写入权限
<?xml version="1.0" encoding="utf-8"?>
<config mode="client" xmlns:xsi="http://www.w3.org/2001/XMLSchema" xsi:noNamespaceSchemaLocation="config.xsd">
<servers>
<!-- Local mode for development -->
<server ip="127.0.0.1" port="2280" http-port="8888" />
<!-- If under production environment, put actual server address as list. -->
<!--
<server ip="192.168.7.71" port="2280" />
<server ip="192.168.7.72" port="2280" />
-->
</servers>
</config>
这个是client的xml文件的配置内容
<?xml version="1.0" encoding="utf-8"?>
<!-- Configuration for development environment-->
<config local-mode="false" hdfs-machine="false" job-machine="true" alert-machine="false">
<storage local-base-dir="/data/appdatas/cat/bucket/" max-hdfs-storage-time="15" local-report-storage-time="7" local-logivew-storage-time="7">
</storage>
<console default-domain="Cat" show-cat-domain="true">
<remote-servers>127.0.0.1:8080</remote-servers>
</console>
</config>
<!-- Configuration for production environment -->
<!-- Note: -->
<!-- 1. Set local-mode false to activate remote mode. -->
<!-- 2. If machine is job-machine, set job-machine true, you just need config only one machine. Job is offline for report aggreation, statistics report.-->
<!-- 3. If machine is alert-machine, set alert-machine true, you just need config only one machine. -->
<!-- 4. Cat can run without hdfs, you just config hdfs-machine false. If you have hdfs, you can config hdfs info for saving the logview info. -->
<!-- 5. If you don't need hdfs, the logview will be stored in local disk. You can config max local-logivew-storage-time for cleaning up old logview, the unit is day. -->
<!-- 6. Please set hadoop environment accordingly. -->
<!-- 7. Please config remote-server if you have many cat servers. -->
<!--
<config local-mode="false" hdfs-machine="false" job-machine="false" alert-machine="false">
<storage local-base-dir="/data/appdatas/cat/bucket/" max-hdfs-storage-time="15" local-report-storage-time="7" local-logivew-storage-time="7">
<hdfs id="logview" max-size="128M" server-uri="hdfs://10.1.77.86/user/cat" base-dir="logview"/>
<hdfs id="dump" max-size="128M" server-uri="hdfs://10.1.77.86/user/cat" base-dir="dump"/>
<hdfs id="remote" max-size="128M" server-uri="hdfs://10.1.77.86/user/cat" base-dir="remote"/>
</storage>
<console default-domain="Cat" show-cat-domain="true">
<remote-servers>192.168.0.1:8080,192.168.0.2:8080</remote-servers>
</console>
</config>
-->
这段代码其实只有上半部分有效 下面是屏蔽了的
<?xml version="1.0" encoding="utf-8"?>
<data-sources>
<data-source id="cat">
<maximum-pool-size>3</maximum-pool-size>
<connection-timeout>1s</connection-timeout>
<idle-timeout>10m</idle-timeout>
<statement-cache-size>1000</statement-cache-size>
<properties>
<driver>com.mysql.jdbc.Driver</driver>
<url><![CDATA[jdbc:mysql://127.0.0.1:3306/cat]]></url>
<user>root</user>
<password>root</password>
<connectionProperties><![CDATA[useUnicode=true&autoReconnect=true]]></connectionProperties>
</properties>
</data-source>
<data-source id="app">
<maximum-pool-size>3</maximum-pool-size>
<connection-timeout>1s</connection-timeout>
<idle-timeout>10m</idle-timeout>
<statement-cache-size>1000</statement-cache-size>
<properties>
<driver>com.mysql.jdbc.Driver</driver>
<url><![CDATA[jdbc:mysql://127.0.0.1:3306/cat]]></url>
<user>root</user>
<password>root</password>
<connectionProperties><![CDATA[useUnicode=true&autoReconnect=true]]></connectionProperties>
</properties>
</data-source>
</data-sources>
这个是数据库配置文件密码那些自己改 我相信没人不会吧
然后基本环境配置好了
在项目目录
cathome打好的war包
改名字位 cat放入tomcat启动 这一步都是基本没必要讲了吧
放入后的样子然后启动访问http://127.0.0.1:8080/cat/r
如果要登陆就是catadmin账号密码都是这个
cat2.0我上传了 https://download.csdn.net/download/weixin_42287052/12103439
很少写博客 我怕很少人看得懂 所以暂时先不写如何集成springboot mybatis-plus lgoback 如果很多人反馈需要这些教程我会再发的
更多推荐
所有评论(0)