大众点评cat接入记录

背景

因为公司api接口时不时的被人攻击,频繁的撞库,所以需要一套完整的监控体系来管理所有的接口。组内其他人正在快速迭代一个初期的监控报警体系,而我闲着没事就顺便看了下大众点评的cat,刚好以前的同事他们公司的目前使用的架构里面就用到了cat,大大加深了我想研究的心。cat能查到的文档太少了,可能是官网提供的文档足够使用了,但是对于小白用户来说,官网的文档还是需要一些实际代码的理解,不过等细入之后才发现cat是多么灵活,算是大众点评的良心之作啊。

搭建、文档

cat github地址:https://github.com/dianping/cat
相关文档:搭建文档
怎么搭建就不细说了,这里记录下大家cat-home 需要注意的地方

  • data/appdatas/cat 目录是存放cat-home 配置文件的相对地址,如果是window就是相对于项目部属所在的磁盘
  • data/applogs/cat 目录是存放cat-home 的log日志

cat有个很重要的概念,就是domain,一个domain可以对应成一个project,比如cat-home打包成war
也是一个domain, cat-home默认是服务端 也是客户端,也就是说cat-home自身也会被监控,这就是
为什么cat-home /META-INF/cat目录里面会有clinet.xml

  • cat-home 也就是cat服务器端是支持集群的,如果有多个服务端那么在client.xml就得配置多个
    服务端的信息
<config mode="client">
    <servers>
       <server ip="10.1.1.1" port="2280" http-port="8080"/>
       <server ip="10.1.1.2" port="2280" http-port="8080"/>
       <server ip="10.1.1.3" port="2280" http-port="8080"/>
    </servers>
</config>

-cat服务端的server.xml,如果是集群remote-servers 就配置多个,如果用到了hdfs 就配置,需要注意的就是local-mode=”false” 如果配置成true 就不会使用数据库了

<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>10.1.1.1:8080,10.1.1.2:8080,10.1.1.3:8080</remote-servers>      
    </console>
</config>
  • 客户端路由修改下,集群和单个都需要修改成对于的ip

这里写图片描述

  • 客户端集成其实文档已经说的很详细了,基本配置下就可以。

使用

  • 如果客户端已经接入了,比如名字叫domain=mobileapi,首先要添加项目,然后项目组分配
    这里写图片描述

  • 告警的接口需要我们自己去实现

-我们可以对埋点进行监控,什么是埋点,其实就是这个

  Cat.logMetricForCount(key

我们可以对埋的点进行指标监控,比如这个方法在一定时间内被执行多少次就直接报警啊
这里写图片描述

  • 报警级别和联系人设置 和报警接口
    这里写图片描述
    这里写图片描述
    这里写图片描述
    报警接口代码 我们可以重写

监控效果

client端接入代码

https://github.com/ggj2010/javabase/tree/master/mobiletechnology

发布了109 篇原创文章 · 获赞 27 · 访问量 23万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览