• prometheus exporter简介


    一、服务分类

    1. 在线服务:请求的客户端和发起者需要立即响应(高并发、低延迟:并发数、接口响应时间、错误数、延迟时间),面对突发流量能进行资源的自动伸缩
    2. 离线服务:请求发送到服务端但不要求立即获取结果(监控服务的每个执行阶段、成功/失败的次数)
    3. 批处理:批量任务的执行(一般定时执行),针对每个任务的执行耗时、待处理任务、阻塞任务、处理成功/失败的任务数

    二、数据规范

    1. prometheus制定了一套独特的监控数据规范,符合这一规范的监控数据都可以被统一采集、分析和展现
    2. prometheus为监控对象提供一个标准的HTTP GET接口,调用接口每次都将返回所有的监控数据
    3. 监控数据以文本形式组织,每个指标都占用一行,除了文本的最后一个空行,其他空行都将被忽略
    4. #HELP:指标的注释
      #TYPE:定义一个监控指标

    三、exporter简介

    1. exporter诞生的原因:大多数监控无法直接提供监控接口(本身不支持HTTP接口、安全性、稳定性、代码耦合等)
    2. exporter是一个采集监控数据并通过prometheus监控规范对外提供数据的组件
    3. 官方实现的exporter:blackbox_exporter、consul_exporter、graphite_exporter、haproxy_exporter、memcached_exporter、mysqld_exporter、node_exporter、statsd_exporter
    4. 第三方实现的exporter:Redis exporter、RabbitMQ exporter等
    5. prometheus会周期性地调用exporter提供的metrics数据接口来获取数据
    6. exporter通过被监控对象提供的监控相关的接口获取监控数据(HTTP/HTTPS、TCP、本地文件(node)、标准协议方式)
    7. 官方主要依赖库:go、java、scala、python、ruby等

    四、功能特性总结

    1. prometheus只会采集指定格式的监控信息
    2. exporter按照prometheus规定的格式采集各种软件的监控信息(mysql、node、consul、rabbitMQ等)
    3. 部分exporter在采集监控信息时需要获取一定的权限用于采集指定信息(如:mysql)
    4. 类似于多功能充电线,什么品牌的手机选择对应型号的线即可;不同的软件选择对应exporter即可
  • 相关阅读:
    python 线程通信 生产者与消费者
    python 死锁
    python 线程锁
    python 进程间通信 Queue
    python 进程 Queue
    python 阻塞模式 进程池
    python 非阻塞模式 进程池
    Django在根据models生成数据库表时报 __init__() missing 1 required positional argument: 'on_delete'
    rest_framework序列化
    python3与django中@property详解
  • 原文地址:https://www.cnblogs.com/jayce9102/p/12049704.html
Copyright © 2020-2023  润新知