29服务端监控(监控什么、怎么监控)

1,356 阅读2分钟

1.基本概念

  • 硬件的监控

    • 机器CPU
    • 内存
    • 磁盘
    • 网络
  • 业务的监控

    • 可能出现的问题

      • 数据库的主从延迟变长
      • 接口响应时间变长
      • 系统中出现大量错误
    • 监控的指标如何选择?

    • 采集指标有哪些方法和途径

    • 指标采集到如何处理和展示

2.监控指标如何选择(监控什么?)

  • 谷歌分布式系统监控,4个黄金信号量:

    • 延迟

      • 请求的响应时间
      • 访问数据库和缓存的时间
    • 通信量 吞吐量

    • 错误

      • 网络服务错误 4xx 5xx
      • error 
    • 饱和度

      • CPU使用率
      • 内存使用率
      • 磁盘使用率
      • 缓存数据库连接数
  • RED指标体系\

    • R 代表请求量(Request rate)\

    • E 代表错误(Error)\

    • D 代表响应时间(Duration\

  • 根据业务特色进行监控

    • 数据库主从延迟数据
    • 下次队列对滴情况
    • 缓存的命中率

\

3.如何采集数据指标

采集方式

  • Agent

    • 在具体的机器上启动监控服务

    • 收集数据,发送给监控系统

      • 连接memcached客户端 
      • JMX 内存信息、GC信息、kafka
  • 代码中埋点

    • 将计算调用资源或者服务耗时、调用量,并发送给监控服务器
  • 日志

    • 通过成熟的日志采集工具

      • Apache Flume

      • Fluentd\

      • Filebeat

4.监控数据的处理与存储

  • 1.首先使用消息队列承接数据

  • 2.处理数据

    • 把数据写入到 Elasticsearch(反索引),然后通过 Kibana 展示数据

    • 流式处理的中间件,比如 Spark、Storm\

      • 解析日志
      • 聚合运算
      • 可以存储在时序数据库中
      • 绘制报表
  • 3.形成报表

    • 访问趋势报表,整体运行情况\

    • 性能报表,程序中的阿米点\

    • 资源报表,具体资源的报表\

5.总结

  • 监控指标

    • 耗时
    • 请求量
    • 错误数
  • 数据采集方式

    • Agent
    • 埋点
    • 日志
  • 监控体系

    • 趋势报表 woter
    • 性能报表 bamai
    • 资源报表 odin