欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

(十) Nepxion-Thunder分布式RPC集成框架 - 监控中心

程序员文章站 2022-04-20 23:50:48
...

Nepxion-Thunder(QQ 群 471164539)发布在https://github.com/Nepxion/

 

通过MonitorStat.java去刻画监控的属性,包括

    private String traceId;        // 跟踪ID
    private String messageId;      // 消息ID
    private String messageType;    // 消息类型,取值:Request,Response
    private String fromCluster;    // 消息来源的集群
    private String fromUrl;        // 消息来源的Url
    private String toCluster;      // 消息发往的集群
    private String toUrl;          // 消息发往的Url
    private long processStartTime; // 调用的业务处理起始时间   
    private long processEndTime;   // 调用的业务处理结束时间      
    private long deliverStartTime; // 调用的网络传输起始时间      
    private long deliverEndTime;   // 调用的网络传输结束时间
    private String interfaze;      // 接口名
    private String method;         // 方法名
    private String parameterTypes; // 方法参数,例如java.lang.String,int
    private String protocol;       // 协议,例如netty, hessian等
    private String application;    // 应用名
    private String group;          // 组名
    private boolean async;         // 是否是异步或者同步
    private String callback;       // 回调接口名称         
    private long timeout;          // 超时时间
    private boolean broadcast;     // 是否是广播模式
    private String loadBalance;    // 采用的负载均衡策略
    private boolean feedback;      // 消息是否需要回馈
    private String exception;      // 异常信息
 无论通过哪种方式监控,都可以拿到封装好的上述属性列表

 

1. 日志监控

(十) Nepxion-Thunder分布式RPC集成框架 - 监控中心
            
    
    博客分类: 开源框架平台选型 NettyHessianKafkaRedisDocker 通过Log4j的配置,把本地基于MonitorStat对象创建的Log生成到远端Splunk服务器硬盘上,Splunk服务器进行相关设置和过滤,就可以看到如上的日志统计。对于Splunk如何使用和工作,在这里就不做介绍了

 

2. Redis缓存监控

以TraceId为Key,MonitorStat的Json字符串为Value存入Redis缓存。所有分布式的服务方和调用方必须全部接入该Redis服务器(Redis服务器部署方式一般有三种,集群模式,哨兵模式,分片模式,在Thunder里面必须部署成哨兵模式或者集群模式,前者同时支持发布/订阅和做数据缓存用,后者支持数据缓存用)

 

3. 第三方WebService监控

每一个第三方WebService监控中心启动的时候,都往注册中心添加其URL,服务端和调用端通过连接注册中心,获取第三方监控中心的URL列表,同时也实现了对监控中心上下线的监听,达到分布式监控的目的。
服务端和调用端通过Apache 异步Http发送方式,把MonitorStat转化成Json字符串,用Post方式发往第三方监控中心

  • (十) Nepxion-Thunder分布式RPC集成框架 - 监控中心
            
    
    博客分类: 开源框架平台选型 NettyHessianKafkaRedisDocker 
  • 大小: 109 KB