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即可


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM