Rumah Java javaTutorial Cara menggunakan Prometheus+Grafana untuk memantau aplikasi Springboot

Cara menggunakan Prometheus+Grafana untuk memantau aplikasi Springboot

May 19, 2023 pm 09:10 PM
springboot prometheus grafana

1 Pengenalan

Semakin banyak projek berjalan, semakin saya rasa pemantauan operasi dan penyelenggaraan adalah terlalu penting untuk mana-mana sistem yang berada dalam talian.

Prometheus ialah sistem penggabungan pangkalan data sumber terbuka, penggera dan siri masa yang sangat baik Dalam sistem pengurusan kontena Kubernetes yang paling biasa sekarang, ia biasanya dipasangkan dengan Prometheus untuk pemantauan.

2.1 Pengenalan kepada Springboot

Perkenalkan Prometheus ke dalam dependensi seperti berikut:

<dependency>
 <groupid>io.micrometer</groupid>
 <artifactid>micrometer-registry-prometheus</artifactid>
</dependency>
Salin selepas log masuk

Untuk Springboot, dayakan Actuator dan buka Endpoint yang sepadan:

management.endpoints.web.exposure.include=*
# 或者
management.endpoints.web.exposure.include=prometheus
Salin selepas log masuk

Selepas bermulaSpringboot, anda boleh menyemak sama ada data pemantauan boleh diperolehi dengan betul melalui URL berikut:

localhost:8080/actuator/prometheus

Dapatkan Data berjaya, menunjukkan bahawa Springboot boleh menyediakan data pemantauan seperti biasa.

2.2 Menggunakan Docker

Untuk kemudahan, gunakan Docker untuk memulakan Prometheus:

# 拉取docker镜像
docker pull prom/prometheus
Salin selepas log masuk

Sediakan fail konfigurasi prometheus.yml:

scrape_configs:
# 可随意指定
- job_name: 'spring'
 # 多久采集一次数据
 scrape_interval: 15s
 # 采集时的超时时间
 scrape_timeout: 10s
 # 采集的路径
 metrics_path: '/actuator/prometheus'
 # 采集服务的地址,设置成Springboot应用所在服务器的具体地址
 static_configs:
 - targets: ['hostname:9000','hostname:8080']
Salin selepas log masuk

Mulakan contoh docker:

# Port ialah 9090, nyatakan fail konfigurasi
docker run -d -p 9090:9090 -v ~/temp/prometheus.yml :/etc /prometheus/prometheus.yml prom/prometheus --config.file=/etc/prometheus/prometheus.yml

2.3 Menguji dan Melihat

Berjaya dimulakan Selepas itu, anda boleh membuka halaman web untuk melihatnya dan memaparkannya secara grafik URLnya ialah http://localhost:9090/.

Cara menggunakan Prometheus+Grafana untuk memantau aplikasi Springboot

Seperti yang ditunjukkan dalam gambar di atas, selepas membuka halaman web, pilih penunjuk dan parameter pemantauan yang sepadan dan klik Execute untuk melihatnya.

3 Grafana

Grafana ialah suite analisis dan visualisasi pengukuran sumber terbuka, alat bahagian hadapan yang dibangunkan semata-mata oleh JavaScript, melalui perpustakaan akses (seperti sebagai InfluxDB ), paparkan laporan tersuai, carta paparan, dsb. UInya sangat fleksibel, kaya dengan pemalam dan templat serta berkuasa. Biasanya digunakan dalam memantau data siri masa.

3.1 Pemasangan dan permulaan Docker

# 拉取镜像
docker pull grafana/grafana
# 运行实例
docker run -d -p 3000:3000 grafana/grafana
Salin selepas log masuk

Selepas berjaya memulakan, lawati http://localhost:3000 untuk menyemak sama ada kata laluan akaun pentadbir awal ialah admin/admin.

3.2 Konfigurasikan sumber data

Grafana Untuk memaparkan data, anda perlu mengkonfigurasi sumber data yang sepadan Dalam artikel ini, konfigurasikan sumber data Prometheus dipasang dan didayakan sebelum ini, khususnya Konfigurasi adalah seperti yang ditunjukkan di bawah:

Cara menggunakan Prometheus+Grafana untuk memantau aplikasi Springboot

Perlu diingat bahawa Access mesti memilih mod Browser, jika tidak, data tidak boleh diperolehi biasalah. Selepas konfigurasi selesai, klik Save & Test.

3.3 Aplikasi templat

Selepas anda boleh mendapatkan data, anda boleh menyesuaikan paparan visualisasi data. Tetapi jika anda menambah satu penunjuk pada satu masa, ia akan menjadi sangat menyusahkan. Malah, Grafana menyediakan banyak templat yang sangat baik, yang boleh didapati di https://grafana.com/grafana/dashboards.

Artikel ini menggunakan templat Spring Boot 2.1 Statistics Kaedah import adalah seperti berikut:

Klik pada nombor + --> -> Masukkan pautan templat atau ID --> Import

Cara menggunakan Prometheus+Grafana untuk memantau aplikasi Springboot

Selepas import berjaya, anda boleh memantau data dan antara mukanya sangat bagus:

Cara menggunakan Prometheus+Grafana untuk memantau aplikasi Springboot

Contoh dalam ini artikel Maklumat versi perisian adalah seperti berikut:

springboot.version=2.2.5
micrometer-registry-prometheus=1.3.5
prometheus.version=2.16
grafana.version=6.7.0-beta1
Salin selepas log masuk

Atas ialah kandungan terperinci Cara menggunakan Prometheus+Grafana untuk memantau aplikasi Springboot. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Bagaimana Springboot menyepadukan Jasypt untuk melaksanakan penyulitan fail konfigurasi Bagaimana Springboot menyepadukan Jasypt untuk melaksanakan penyulitan fail konfigurasi Jun 01, 2023 am 08:55 AM

Pengenalan kepada Jasypt Jasypt ialah perpustakaan java yang membenarkan pembangun menambah fungsi penyulitan asas pada projeknya dengan usaha yang minimum dan tidak memerlukan pemahaman yang mendalam tentang cara penyulitan berfungsi dengan tinggi untuk penyulitan sehala dan dua hala. teknologi penyulitan berasaskan piawai. Sulitkan kata laluan, teks, nombor, perduaan... Sesuai untuk penyepaduan ke dalam aplikasi berasaskan Spring, API terbuka, untuk digunakan dengan mana-mana pembekal JCE... Tambahkan kebergantungan berikut: com.github.ulisesbocchiojasypt-spring-boot-starter2 Faedah Jasypt melindungi keselamatan sistem kami Walaupun kod itu bocor, sumber data boleh dijamin.

Bagaimana SpringBoot menyepadukan Redisson untuk melaksanakan baris gilir kelewatan Bagaimana SpringBoot menyepadukan Redisson untuk melaksanakan baris gilir kelewatan May 30, 2023 pm 02:40 PM

Senario penggunaan 1. Tempahan berjaya dibuat tetapi pembayaran tidak dibuat dalam masa 30 minit. Pembayaran tamat masa dan pesanan dibatalkan secara automatik 2. Pesanan telah ditandatangani dan tiada penilaian dilakukan selama 7 hari selepas ditandatangani. Jika pesanan tamat dan tidak dinilai, sistem lalai kepada penilaian positif 3. Pesanan dibuat dengan jayanya jika peniaga tidak menerima pesanan selama 5 minit, pesanan itu dibatalkan peringatan mesej teks dihantar... Untuk senario dengan kelewatan yang lama dan prestasi masa nyata yang rendah, kami boleh Gunakan penjadualan tugas untuk melaksanakan pemprosesan undian biasa. Contohnya: xxl-job Hari ini kita akan memilih

Cara menggunakan Redis untuk melaksanakan kunci teragih dalam SpringBoot Cara menggunakan Redis untuk melaksanakan kunci teragih dalam SpringBoot Jun 03, 2023 am 08:16 AM

1. Redis melaksanakan prinsip kunci teragih dan mengapa kunci teragih diperlukan Sebelum bercakap tentang kunci teragih, adalah perlu untuk menjelaskan mengapa kunci teragih diperlukan. Lawan daripada kunci yang diedarkan ialah kunci yang berdiri sendiri Apabila kami menulis program berbilang benang, kami mengelakkan masalah data yang disebabkan oleh mengendalikan pembolehubah yang dikongsi pada masa yang sama Kami biasanya menggunakan kunci untuk mengecualikan pembolehubah yang dikongsi bersama untuk memastikan ketepatannya pembolehubah yang dikongsi skop penggunaannya adalah dalam proses yang sama. Jika terdapat berbilang proses yang perlu mengendalikan sumber yang dikongsi pada masa yang sama, bagaimanakah ia boleh saling eksklusif? Aplikasi perniagaan hari ini biasanya merupakan seni bina perkhidmatan mikro, yang juga bermakna bahawa satu aplikasi akan menggunakan berbilang proses Jika berbilang proses perlu mengubah suai baris rekod yang sama dalam MySQL, untuk mengelakkan data kotor yang disebabkan oleh operasi yang tidak teratur, keperluan pengedaran. untuk diperkenalkan pada masa ini. Gaya dikunci. Ingin mencapai mata

Bagaimana untuk menyelesaikan masalah bahawa springboot tidak boleh mengakses fail selepas membacanya ke dalam pakej balang Bagaimana untuk menyelesaikan masalah bahawa springboot tidak boleh mengakses fail selepas membacanya ke dalam pakej balang Jun 03, 2023 pm 04:38 PM

Springboot membaca fail, tetapi tidak boleh mengakses perkembangan terkini selepas membungkusnya ke dalam pakej balang Terdapat situasi di mana springboot tidak boleh membaca fail selepas membungkusnya ke dalam pakej balang adalah tidak sah dan hanya boleh diakses melalui strim. Fail berada di bawah resources publicvoidtest(){Listnames=newArrayList();InputStreamReaderread=null;try{ClassPathResourceresource=newClassPathResource("name.txt");Input

Analisis perbandingan dan perbezaan antara SpringBoot dan SpringMVC Analisis perbandingan dan perbezaan antara SpringBoot dan SpringMVC Dec 29, 2023 am 11:02 AM

SpringBoot dan SpringMVC adalah kedua-dua rangka kerja yang biasa digunakan dalam pembangunan Java, tetapi terdapat beberapa perbezaan yang jelas antara mereka. Artikel ini akan meneroka ciri dan penggunaan kedua-dua rangka kerja ini dan membandingkan perbezaannya. Mula-mula, mari belajar tentang SpringBoot. SpringBoot telah dibangunkan oleh pasukan Pivotal untuk memudahkan penciptaan dan penggunaan aplikasi berdasarkan rangka kerja Spring. Ia menyediakan cara yang pantas dan ringan untuk membina bersendirian, boleh dilaksanakan

Bagaimana untuk melaksanakan Springboot+Mybatis-plus tanpa menggunakan pernyataan SQL untuk menambah berbilang jadual Bagaimana untuk melaksanakan Springboot+Mybatis-plus tanpa menggunakan pernyataan SQL untuk menambah berbilang jadual Jun 02, 2023 am 11:07 AM

Apabila Springboot+Mybatis-plus tidak menggunakan pernyataan SQL untuk melaksanakan operasi penambahan berbilang jadual, masalah yang saya hadapi akan terurai dengan mensimulasikan pemikiran dalam persekitaran ujian: Cipta objek BrandDTO dengan parameter untuk mensimulasikan parameter yang dihantar ke latar belakang bahawa adalah amat sukar untuk melaksanakan operasi berbilang jadual dalam Mybatis-plus Jika anda tidak menggunakan alatan seperti Mybatis-plus-join, anda hanya boleh mengkonfigurasi fail Mapper.xml yang sepadan dan mengkonfigurasi ResultMap yang berbau dan kemudian. tulis pernyataan sql yang sepadan Walaupun kaedah ini kelihatan menyusahkan, ia sangat fleksibel dan membolehkan kita

Bagaimana SpringBoot menyesuaikan Redis untuk melaksanakan penyirian cache Bagaimana SpringBoot menyesuaikan Redis untuk melaksanakan penyirian cache Jun 03, 2023 am 11:32 AM

1. Sesuaikan RedisTemplate1.1, mekanisme siri lalai RedisAPI Pelaksanaan cache Redis berasaskan API menggunakan templat RedisTemplate untuk operasi cache data Di sini, buka kelas RedisTemplate dan lihat maklumat kod sumber kelas tersebut. Isytihar kunci, Pelbagai kaedah pesirilan nilai, nilai awal kosong @NullableprivateRedisSe

Menggunakan Prometheus dan Grafana untuk melaksanakan pemantauan dan membimbangkan di Beego Menggunakan Prometheus dan Grafana untuk melaksanakan pemantauan dan membimbangkan di Beego Jun 22, 2023 am 09:06 AM

Dengan peningkatan pengkomputeran awan dan perkhidmatan mikro, kerumitan aplikasi telah meningkat. Oleh itu, pemantauan dan diagnostik menjadi salah satu tugas pembangunan yang penting. Dalam hal ini, Prometheus dan Grafana ialah dua alat pemantauan dan visualisasi sumber terbuka yang popular yang boleh membantu pembangun memantau dan menganalisis aplikasi dengan lebih baik. Artikel ini akan meneroka cara menggunakan Prometheus dan Grafana untuk melaksanakan pemantauan dan membimbangkan dalam rangka kerja Beego. 1. Pengenalan Beego ialah aplikasi web pembangunan pesat sumber terbuka.

See all articles