官术网_书友最值得收藏!

1.4 Prometheus 2.37(LTS版本)

Prometheus 2.37發布于2022年7月,是Prometheus的首個長期支持(long term support,LTS)版本。該版本在2.0版本的基礎上進行了多個方面的增強和完善。

在本地存儲方面,2.37版本的一項重要改進是增加了事務隔離功能,從而能夠更可靠地進行并發操作。本地存儲增加了快照功能,當系統重啟時能夠通過加載快照文件快速恢復內存狀態,減少啟動時間。2.37版本實現了以mmap方式訪問本地存儲的頭部塊,提高了監控數據的讀寫性能。此外,2.37版本采用snappy格式壓縮WAL文件,節約了存儲空間。

2.37版本中的PromQL模塊引入了多項改進:增加了@修飾符,從而能夠更準確、更靈活地控制查詢數據的時間;支持嵌套子查詢,從而能夠表示更復雜的查詢請求。

在服務自動發現方面,2.37版本新增了對多種目標的自動發現,包括DigitalOcean、Eureka、Hetzner、HTTP、IONOS、Linode、Moby、Nomad、PuppetDB、Scaleway、Uyuni、Vultr和XDS等。至此版本,Prometheus自動發現的目標達到24種。

2.37版本的Web API功能也得到大幅增強,除了支持對監控數據、監控項元數據和監控目標的查詢,還增加了遠程寫功能(可接收遠程寫入的數據)以及告警規則和警報消息的查詢功能等,支持通過API執行某些存儲管理操作(如快照生成、刪除數據等)。

2.37版本各個模塊在代碼文件中的分布如代碼清單1-4所示。

代碼清單1-4 Prometheus 2.37主要代碼文件目錄

.
|-- cmd                # 包含主程序以及Promtool模塊
|-- config    # YAML配置信息處理模塊,實現了配置信息的結構定義和編解碼,以及配置文件的加載等
|-- console_libraries  # Web用戶界面所使用的模板定義,包含導航欄、菜單、通用函數等
|-- consoles           # Web用戶界面使用的HTML文件
|-- discovery          # 監控目標自動發現模塊,支持24種目標的自動發現
|-- docs               # 說明文檔和用戶手冊
|-- documentation      # 各種配置文件
|-- model              # 底層模塊,包含標簽處理、樣本數據解析和時間戳處理等功能
|-- notifier           # 通知器模塊
|-- plugins            # 用于管理自動發現功能而引入的外部庫
|-- prompb             # 各種.proto文件
|-- promql             # 數據查詢語言模塊
|-- rules              # 規則模塊,包含告警規則管理器模塊和轉錄規則管理器模塊
|-- scrape    #采樣管理器模塊和監控目標管理器模塊,監控目標自動發現模塊被拆分并轉移到discovery
#目錄中 |-- scripts # 包含2個文件,用于檢查許可聲明,以及編譯.proto文件并生成Go代碼 |-- storage # 存儲模塊,本地存儲改為TSDB(以外部依賴包方式引入) |-- template # 底層模塊,用于增強監控數據的處理能力 |-- tracing # 跟蹤器模塊 |-- tsdb # 本地存儲模塊,此前在2.0版本中該模塊以外部依賴包方式引入 |-- util # 底層數據結構模塊,包含緩存、文件操作、定時器、字符串處理、HTTP客戶端等 `-- web # 該模塊包含Web API和Web用戶界面這2個模塊
主站蜘蛛池模板: 广西| 孙吴县| 嘉鱼县| 石柱| 周至县| 武宁县| 古浪县| 利川市| 深泽县| 揭西县| 马公市| 阿拉善左旗| 卢氏县| 高邑县| 漳州市| 蒙自县| 张北县| 富锦市| 新郑市| 荃湾区| 永宁县| 德昌县| 印江| 塔河县| 二连浩特市| 大新县| 湘潭县| 金堂县| 陆良县| 岳阳县| 浦城县| 崇明县| 山西省| 布尔津县| 紫云| 广汉市| 夏津县| 黄浦区| 丰台区| 呈贡县| 乐安县|