2019-12-04

服务质量可视化系统接入指南-C++


1.添加项目依赖

胡捷提供
静态库
libcatclient.a
和头文件
gridVClient.h
头文件

2.初始化cat

使用默认配置初始化 cppcat

cat::init
void init(const string& domain);

默认采用如下配置:

encoderType = CAT_ENCODER_BINARY.
enableHeartbeat is true.
enableSampling is true.
enableMultiprocessing is false.
enableDebugLog is false.

你也可以自定义配置(比如使用文本序列化取代二进制序列化)

cat::Config c = cat::Config();
c.enableDebugLog = true;
c.encoderType = cat::ENCODER_TEXT;
cat::init("appkey", c);

appkey 为自己业务系统的大写字母简称,

要求只能包含英文字母 (a-z, A-Z)、数字 (0-9)、下划线 (_) 和中划线 (-)

3.添加client.xml文件

  1. 需要在接入应用源文件所有在盘符创建/apps/appdatas/cat目录,并且确保目录有读写权限

例如当前接入应用源文件存放在/E:/workspack/项目源文件 ,则需要在E盘根路径创建/apps/appdatas/cat目录
如果当前系统是Linux,则直接在/根目录创建/apps/appdatas/cat 文件夹即可,确保文件可读写

2.创建client.xml,内容如下,其中10.16.41.232为服务端ip,根据环境配置即可,当前为测试环境:



      
          
          
          
          
          
         
     
  

4.上报调用url规则

cat::Transaction t("URL", "url");

url : 请求全路径(带域名,但不带?后面的参数),一定不要带有可变参数

 cat::Transaction t("URL", "url");
    t.SetDurationStart(_cat_start);
    t.SetTimestamp(_cat_start);

    unsigned long scEnd = (Util::GetSystemClock() - 1000) / 1000;
    t.SetDurationInMillis(scEnd-_cat_start);
    t.AddData("rsp_code", Util::to_s(200));
    t.SetStatus(cat::SUCCESS);
    t.Complete();

5.调用链路数据上报

cat::Transaction t("type", "url");

url : 调用外部系统url,请求全路径(带域名,但不带?后面的参数),一定不要带有可变参数
type : CALLER_(固定字符串) + C4A (服务提供者系统简称.即要调用的服务系统标识,可参考高可用项目系统标识)

如果有调用外部系统需要在调用逻辑前后添加监控埋点

在调用外部接口代码前后添加监控买点:

6.上报调用请求错误规则

cat::logEvent

void logEvent(const string& type, const string& name, const string& status = SUCCESS, const string& data = "");

错误类型格式:系统简称_+ 调用url
status:实际发生错误状态码

你可能感兴趣的:(2019-12-04)