指标监控

指标的特性

  标准化      可量化     多维度

指标监控的报警链路

常用的指标项

  • 可用性
  • 流量
  • cpu 内存 checkpoint connector等
    自定义指标
  • 缓冲命中
  • 外部接口的调用
  • 丢弃数据的比例(异常处理一般都catch了 不然抛出异常任务将一直重启)
  • 处理逻辑耗时

如何确定关注的指标项

  • 作业相关     a. 是否可用   b 是否稳定   c 是否异常
    
  • 性能相关      a 是否延迟   b 数据倾斜   d性能瓶颈
    
  • 业务逻辑相关   a 上游数据问题   b 新上逻辑问题   c数据丢失
    

聚合的维度信息

  • task
    
  • operator
    
  • job
    
  • host   物理指标项
    

聚合的指标项

  • 总和   均值  最大  最小
    
  • 差值
    
  • 99线
    
  • 指标缺失
    

实际类型排查

  • 任务延时:   
    处理方式: 通过反压找到节点的问题  是否是GC等,查看堆栈信息,查看日志
    调整方式: 增加反压节点的并发,调整每个taskmanager的cpu于内存,拆开flink的slot共享链chain
    
  • 作业failover   
    1. jobmanager 的failover(zk访问超时,资源的问题)
    2. taskmanager的failover
    
  • 作业无法提交
    yarn的资源限制     jar包过大   jobmanager资源不足
    
  • 作业异常停止  ---  无指标采集上来
    重启侧率问题    重启次数达到上限
    

总结: 排查问题的方法论: 查看日志,查看指标项 --》 查看反压 ---》 定位到节点-----》 定位到位置 -----》 调整代码逻辑或者是沟通

-------有时候还得 多加一些理性的猜测

排查问题

通过指标由粗到细的进行排查

你可能感兴趣的:(指标监控)