1

我想弄清楚如何最好地收集Kubernetes集羣內運行的一組基於Spring引導的服務的指標。查看各種文檔,內部監控的選擇似乎在Actuator或Spectator之間,指標被推送到外部集合商店(如Redis或StatsD)或拉到Prometheus的情況。Spring引導和普羅米修斯

由於給定服務的實例數量會有所不同,我不知道如何配置Prometheus來輪詢那些正在運行的服務,因爲它將缺乏對它們的知識。我也圍繞Eureka服務註冊表進行構建,因此不確定在此配置中是否首先輪詢它。

任何真實的世界洞察這種方法將受到歡迎。

回答

1

您應該使用Prometheus java客戶端(https://www.robustperception.io/instrumenting-java-with-prometheus/)進行檢測。像redis和statsd這樣的方法應該避免,因爲它們意味着每一次事件都會觸發網絡 - 這極大地限制了您可以監控的內容。

在Prometheus中使用file_sd服務發現爲其提供來自Eureka(https://www.robustperception.io/using-json-file-service-discovery-with-prometheus/)的目標列表,但如果您使用Kubernetes(如您的標籤提示),則Prometheus可直接與其集成。