【監控】監控平臺部署 Prometheus+Grafana

在 macOS 上部署 Grafana 和 Prometheus 來監控 Java 服務是一個非常實用的操作。以下是詳細的步驟,包括如何安裝和配置 Prometheus、Grafana 以及在 Java 服務中集成 Prometheus 的客戶端庫來收集指標數據。

1. 安裝 Prometheus

1.1 使用 Homebrew 安裝 Prometheus

首先,確保你已經安裝了 Homebrew。然后運行以下命令來安裝 Prometheus:

brew install prometheus

1.2 配置 Prometheus

安裝完成后,編輯 Prometheus 的配置文件。默認配置文件路徑為 /opt/homebrew/etc/prometheus.yml。

編輯 prometheus.yml 文件,添加你的 Java 服務的指標抓取配置:

global:scrape_interval: 15s # 設置全局抓取間隔時間# 配置抓取目標
scrape_configs:- job_name: "java-server"static_configs:- targets: ["xxxxx:11011"]metrics_path: /actuator/prometheus- job_name: 'java-server-health'static_configs:- targets: ['xxxxx:11011']metrics_path: /actuator/health- job_name: 'prometheus'static_configs:- targets: ['127.0.0.1:9090']

1.3 啟動 Prometheus

啟動 Prometheus 服務:

brew services start prometheus

你也可以手動啟動 Prometheus:

prometheus --config.file=/opt/homebrew/etc/prometheus.yml

2.安裝 Grafana

2.1 使用 Homebrew 安裝 Grafana

brew install grafana

2.2 啟動 Grafana

啟動 Grafana 服務:

brew services start grafana

你也可以手動啟動 Grafana

grafana-server --config=/opt/homebrew/etc/grafana/grafana.ini --homepath=/opt/homebrew/opt/grafana/bin/grafana
/opt/homebrew/opt/grafana/bin/grafana server --config /opt/homebrew/etc/grafana/grafana.ini --homepath /opt/homebrew/opt/grafana/share/grafana --packaging\=brew cfg:default.paths.logs\=/opt/homebrew/var/log/grafana cfg:default.paths.data\=/opt/homebrew/var/lib/grafana cfg:default.paths.plugins\=/opt/homebrew/var/lib/grafana/plugins

3.配置 Java 服務

在 Java 服務中使用?micrometer?和?prometheus?客戶端庫來暴露指標。以下是一個 Spring Boot 應用的示例。

3.1 添加依賴

在你的?pom.xml?文件中添加?micrometer-registry-prometheus?依賴項:

<dependency><groupId>io.micrometer</groupId><artifactId>micrometer-registry-prometheus</artifactId><version>1.8.0</version>
</dependency>
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId>
</dependency>    

3.2 配置 Spring Boot 應用

在?application.properties?文件中配置 Spring Boot 應用暴露指標端點:

management.server.port=11011
management.endpoints.web.base-path=/actuator
management.endpoints.web.exposure.include=prometheus,health,info
management.endpoint.prometheus.enabled=true
management.metrics.export.prometheus.enabled=true
management.endpoint.health.show-details=always
management.endpoint.health.probes.enabled=true
management.metrics.tags.application=${app.id:${spring.application.name}}

3.3 啟動 Spring Boot 應用

運行 Spring Boot 應用,默認情況下,Prometheus 指標將通過?/actuator/prometheus?端點暴露。

4.配置 Grafana

4.1 訪問 Grafana

打開瀏覽器,訪問 http://localhost:3000(默認端口)。使用默認的用戶名和密碼 admin/admin 登錄。

4.2 添加 Prometheus 數據源

  • 進入 Grafana 儀表板,點擊左側菜單中的“Configuration” -> “Data Sources”。
  • 點擊 “Add data source” 按鈕。
  • 選擇 “Prometheus” 作為數據源類型。
  • 在 “URL” 字段中輸入 Prometheus 服務器地址,例如 http://localhost:9090。
  • 點擊 “Save & Test” 按鈕以保存配置并測試連接。

4.3 創建儀表板

  • 在 Grafana 中點擊左側菜單中的 “Create” -> “Dashboard”。
  • 添加新面板(Panel),選擇你的 Prometheus 數據源并輸入 PromQL 查詢來獲取 Java 服務的指標。
  • 配置圖表的顯示方式,然后保存儀表板。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/37518.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/37518.shtml
英文地址,請注明出處:http://en.pswp.cn/web/37518.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

簡單分享項目內如何快速自動生成自己的庫和更新 requirements.txt

當開發Python項目時&#xff0c;requirements.txt文件被用來清單所有所需的Python包及其版本。這個文件對于在不同環境中安裝和管理項目依賴特別方便&#xff0c;無論是在生產環境、開發環境或者CI/CD流程中。 要自動創建和更新requirements.txt文件&#xff0c;有幾種常見的方…

深入剖析 @Autowired 和 @Resource 在 Spring 中的區別

在 Spring 框架中&#xff0c;Autowired 和 Resource 是兩個常用的注解&#xff0c;用于實現依賴注入。盡管它們都能達到將依賴對象注入到目標 bean 的目的&#xff0c;但在細節上存在一些顯著的差異。本文將深入探討這兩個注解的區別&#xff0c;并結合 Spring 源碼進行分析&a…

vision mamba

Mamba 成功的關鍵在于采用了 Selective Scan Space State Sequential Model&#xff08;S6 模型&#xff09;。是用于解決自然語言處理&#xff08;NLP&#xff09;任務。與 transformer中注意力機制不同&#xff0c;Mamba的S6 將 1D 向量中的每個元素&#xff08;例如文本序列…

現代信息檢索筆記(二)——布爾檢索

目錄 信息檢索概述 IR vs數據庫: 結構化vs 非結構化數據 結構化數據 非結構化數據 半結構化數據 傳統信息檢索VS現代信息檢索 布爾檢索 倒排索引 一個例子 建立詞項&#xff08;可以是字、詞、短語、一句話&#xff09;-文檔的關聯矩陣。 關聯向量 檢索效果的評價 …

如何在Sklearn Pipeline中運行CatBoost

介紹 CatBoost的一大特點是可以很好的處理類別特征&#xff08;Categorical Features&#xff09;。當我們將其結合到Sklearn的Pipeline中時&#xff0c;會發生如下報錯&#xff1a; _catboost.CatBoostError: data is numpy array of floating point numerical type, it mea…

python-期末代碼復習

import numpy as np import pandas as pd import matplotlib.pyplot as plt import warningswarnings.filterwarnings(actionignore) plt.rcParams[font.sans-serif][SimHei] plt.rcParams[axes.unicode_minus] False你提供的這兩行代碼是Python編程語言中用于設置matplotlib庫…

大淘客api實現多多進寶的商品查詢PHP版

大家好&#xff0c;我是網創有方&#xff0c;今天教大家如何使用大淘客的api實現拼多多商品詳情信息查詢。這里用到的多多進寶&#xff0c;如果沒有多多進寶的&#xff0c;先去多多進寶注冊個賬號吧&#xff01; 第一步&#xff1a;進入大淘客官方創建應用&#xff0c;并且下載…

【PyQt5】一文向您詳細介紹 QLineEdit() 的作用

【PyQt5】一文向您詳細介紹 QLineEdit() 的作用 下滑即可查看博客內容 &#x1f308; 歡迎蒞臨我的個人主頁 &#x1f448;這里是我靜心耕耘深度學習領域、真誠分享知識與智慧的小天地&#xff01;&#x1f387; &#x1f393; 博主簡介&#xff1a;985高校的普通本碩&…

2239. 找到最接近 0 的數字

給你一個長度為 n 的整數數組 nums &#xff0c;請你返回 nums 中最 接近 0 的數字。如果有多個答案&#xff0c;請你返回它們中的 最大值 。 示例 1&#xff1a; 輸入&#xff1a;nums [-4,-2,1,4,8] 輸出&#xff1a;1 解釋&#xff1a; -4 到 0 的距離為 |-4| 4 。 -2 到…

開發一個微信小程序需要用到哪些技術?

開發一個微信小程序需要用到以下幾種技術&#xff1a; 1. 基礎技術 HTML: 用于定義小程序的頁面結構。CSS: 用于頁面的樣式設計。JavaScript: 用于實現頁面的交互功能。 2. 微信小程序專用技術 WXML&#xff08;WeiXin Markup Language&#xff09;: 類似于HTML&#xff0c…

計量校準溫度儀表的常見分類有哪些?

溫度儀表在計量校準中&#xff0c;可以說是比較常見的儀器&#xff0c;而溫度儀器因為用于校準的場景很多&#xff0c;應用的場合不同&#xff0c;也是有著很多不同的分類&#xff0c;今天就簡單為大家介紹一些溫度儀表的細分分類。 溫度儀表根據測溫的方式不同&#xff0c;可以…

2024華為OD機試真題- 電腦病毒感染-(C++/Python)-C卷D卷-200分

2024華為OD機試題庫-(C卷+D卷)-(JAVA、Python、C++) 題目描述 一個局域網內有很多臺電腦,分別標注為 0 ~ N-1 的數字。相連接的電腦距離不一樣,所以感染時間不一樣,感染時間用 t 表示。 其中網絡內一臺電腦被病毒感染,求其感染網絡內所有的電腦最少需要多長時間。如果…

Laravel Activity Log操作日志擴展包

Laravel Activity Log操作日志擴展包 簡介 Laravel Action Logs操作日志記錄Laravel Activity Log 很多數據管理員都想記錄他們用戶的所有活躍記錄。這個包可以很方便的記錄你的用戶何時何地的創建、更新實體的記錄。外加&#xff0c;現在這個包還可以記錄多個版本的實體間數…

【基礎篇】第3章 索引與文檔操作

在Elasticsearch的世界里&#xff0c;索引是存儲數據的地方&#xff0c;文檔則是索引中的基本單位&#xff0c;包含具體的數據信息。本章將深入探討索引和文檔操作的基礎&#xff0c;從創建到管理&#xff0c;為高效數據處理奠定基礎。 3.1 索引概念與創建 3.1.1 索引、類型與…

PyTorch之nn.Module與nn.functional用法區別

文章目錄 1. nn.Module2. nn.functional2.1 基本用法2.2 常用函數 3. nn.Module 與 nn.functional3.1 主要區別3.2 具體樣例&#xff1a;nn.ReLU() 與 F.relu() 參考資料 1. nn.Module 在PyTorch中&#xff0c;nn.Module 類扮演著核心角色&#xff0c;它是構建任何自定義神經網…

【Spring Boot 源碼學習】初識 ConfigurableEnvironment

《Spring Boot 源碼學習系列》 初識 ConfigurableEnvironment 一、引言二、主要內容2.1 Environment2.1.1 配置文件&#xff08;profiles&#xff09;2.1.2 屬性&#xff08;properties&#xff09; 2.2 ConfigurablePropertyResolver2.2.1 屬性類型轉換配置2.2.2 占位符配置2.…

wxss和css有什么區別?

WXSS&#xff08;WeiXin Style Sheets&#xff09;和CSS&#xff08;Cascading Style Sheets&#xff09;在功能和應用上有很多相似之處&#xff0c;但針對微信小程序的特殊需求&#xff0c;WXSS對CSS進行了一些擴展和修改。以下是WXSS和CSS之間的主要區別&#xff1a; 尺寸單…

Mybatis實現流程

一&#xff0c;UserDAO 接口定義 首先&#xff0c;定義 UserDAO接口&#xff0c;包含 getList()方法,定義類型為List<User>&#xff1a; package dao;import model.User; import java.util.List;public interface UserDAO {List<User> getList(); }二&#xff0c…

Python--進程基礎

創建進程 os.fork() 該方法只能在linux和mac os中使用&#xff0c;因為其主要基于系統的fork來實現。window中沒有這個方法。 通過os.fork()方法會創建一個子進程&#xff0c;子進程的程序集為該語句下方的所有語句。 import os??print("主進程的PID為:" , os.g…

Python pdfkit wkhtmltopdf html轉換pdf 黑體字體亂碼

wkhtmltopdf 黑體在html轉換pdf時&#xff0c;黑體亂碼&#xff0c;分析可能wkhtmltopdf對黑體字體不太兼容&#xff1b; 1.html內容如下 <html> <head> <meta http-equiv"content-type" content"text/html;charsetutf-8"> </head&…