PromQL adalah bahasa yang digunakan dalam Prometheus untuk data siri masa pertanyaan. Intinya terletak pada penapisan, mengagregatkan dan mengubah data melalui nama dan tag penunjuk. 1. Ia menyokong secara langsung memasuki nama metrik untuk melihat siri masa yang relevan; 2. Gunakan penapisan tag seperti {job = "node-exporter"} untuk menyempitkan julat; 3. Memberi fungsi seperti kadar () untuk mengendalikan kaunter tambahan; 4. Membezakan antara vektor masa nyata (seperti UP) dan vektor pelbagai (seperti kadar () yang diperlukan); 5. Boleh digunakan untuk mengira kadar permintaan, kadar ralat dan data agregat merentasi keadaan, seperti AVG () oleh (contoh). Menguasai PROMQL membantu membina papan pemuka pemantauan dan menetapkan peraturan amaran.
Prometheus Query Language, atau PromQL, adalah bahasa khusus yang digunakan untuk mengambil dan bekerja dengan data siri masa yang disimpan di Prometheus. Ia adalah apa yang anda gunakan apabila anda menanyakan penggunaan CPU seperti metrik, penggunaan memori, atau meminta latency -menyeberang sistem anda.
Memahami data siri masa di promql
Pada terasnya, Prometheus mengumpul metrik sebagai data siri masa. Setiap metrik mempunyai nama (seperti http_requests_total
) dan label pilihan yang menyediakan dimensi tambahan seperti kaedah, kod status, atau contoh.
Contohnya:
http_requests_total{job="api-server", method="POST", status="200"}
PromQL membolehkan anda menapis, agregat, dan mengubah siri masa ini. Anda boleh memilih nilai mentah, menggunakan operasi matematik, atau kumpulan dan jumlah keseluruhan. Perkara utama yang perlu difahami ialah segala -galanya dalam PromQL membalikkan siri masa berlabel ini.
Beberapa cara asas untuk memulakan termasuk:
- Menaip nama metrik terus ke dalam pelayar ekspresi untuk melihat semua siri masa yang berkaitan.
- Menambah penapis label untuk mengecilkan hasil, seperti
{job="node-exporter"}
. - Menggunakan fungsi seperti
rate()
atauincrease()
untuk kaunter yang hanya naik.
Bekerja dengan vektor segera dan vektor pelbagai
PromQL berurusan dengan dua jenis data utama: vektor segera dan vektor pelbagai.
Vektor segera adalah satu set siri masa yang masing -masing mempunyai nilai tunggal pada masa penilaian semasa. Sebagai contoh, up
memberi anda status semasa semua sasaran anda sekarang.
Vektor pelbagai , sebaliknya, mengandungi pelbagai titik data dari masa ke masa. Ini terutamanya digunakan dengan fungsi seperti rate()
, avg_over_time()
, atau histogram_quantile()
. Mereka amat berguna apabila menganalisis trend atau mengira purata dalam tempoh.
Perbezaan ini penting kerana tidak semua fungsi berfungsi pada kedua -dua jenis. Sebagai contoh, rate()
menjangkakan metrik kaunter dalam tetingkap masa, jadi ia memerlukan vektor pelbagai. Tetapi abs()
hanya berfungsi pada vektor segera kerana ia beroperasi secara per-nilai.
Kes penggunaan biasa dan contoh
Promql benar-benar bersinar apabila anda mula memohon kepada tugas pemantauan dunia.
Sekiranya anda ingin mengetahui berapa banyak permintaan sesaat API anda mengendalikan, anda mungkin menulis sesuatu seperti:
kadar (http_requests_total [5m])
Ini menunjukkan kadar purata per dua permintaan HTTP selama 5 minit terakhir.
Atau jika anda cuba mengira kadar ralat:
kadar (http_requests_total {status = ~ "5 .."} [5m]) / kadar (http_requests_total [5m])
Ini membahagikan kadar kesilapan 5xx dengan jumlah kadar permintaan untuk memberi anda peratusan ralat.
Satu lagi senario biasa ialah mengagregatkan metrik dalam pelbagai keadaan. Katakan anda mahukan penggunaan CPU purata di semua pelayan anda:
AVG (kadar (node_cpu_seconds_total {mode! = "idle"} [5m])) oleh (contoh)
Di sini, kami menapis masa terbiar, mengira kadar, kemudian mengumpulkan hasilnya dengan contoh.
Ini bukan sekadar pertanyaan -mereka asas untuk papan pemuka, peringatan, dan analisis yang lebih mendalam di Prometheus.
Pemikiran terakhir
PromQL mengambil beberapa perkara yang digunakan, terutamanya jika anda datang dari SQL atau bahasa pertanyaan lain. Tetapi apabila anda mengamuk bagaimana metrik dan label berfungsi bersama -sama, ia menjadi alat yang berkuasa untuk memahami tingkah laku sistem anda.
Ia tidak terlalu kompleks, tetapi terdapat kaunter pengendalian yang cukup seperti nuansa vs alat pengukur atau mengetahui kapan hendak digunakan by
vs without
ia membayar untuk bereksperimen dan menggali ke dalam dokumen rasmi sekali -sekala.
Pada dasarnya itu sahaja.
Atas ialah kandungan terperinci Apakah bahasa pertanyaan prometheus (promql)?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undress AI Tool
Gambar buka pakaian secara percuma

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Apabila menghadapi masalah DNS, mula -mula semak fail /etc/resolv.conf untuk melihat sama ada nameserver yang betul dikonfigurasi; Kedua, anda boleh menambah DNS awam secara manual seperti 8.8.8.8 untuk ujian; Kemudian gunakan arahan NSLOOKUP dan Dig untuk mengesahkan sama ada resolusi DNS adalah normal. Sekiranya alat ini tidak dipasang, anda boleh memasang pakej DNSutils atau Bind-UTILS terlebih dahulu; Kemudian periksa status perkhidmatan yang diselesaikan SystemD dan fail konfigurasi /etc/systemd/resolved.conf, dan tetapkan DNS dan fallbackDNS seperti yang diperlukan dan mulakan semula perkhidmatan; Akhirnya periksa status antara muka rangkaian dan peraturan firewall, sahkan bahawa port 53 tidak

Sebagai pentadbir sistem, anda mungkin mendapati diri anda (hari ini atau pada masa akan datang) bekerja di persekitaran di mana Windows dan Linux wujud bersama. Bukan rahsia lagi bahawa beberapa syarikat besar lebih suka (atau harus) menjalankan beberapa perkhidmatan pengeluaran mereka di Windows Boxes

Dibina pada enjin V8 Chrome, Node.js adalah persekitaran runtime JavaScript yang didorong oleh acara terbuka yang dibuat untuk membina aplikasi berskala dan API backend. Nodejs dikenali sebagai ringan dan cekap kerana model I/O yang tidak menyekat dan

Dalam sistem Linux, 1. Gunakan arahan IPA atau HostName-I untuk melihat IP peribadi; 2. Gunakan curlifconfig.me atau curlipinfo.io/ip untuk mendapatkan ip awam; 3. Versi desktop boleh melihat IP peribadi melalui tetapan sistem, dan penyemak imbas boleh mengakses laman web tertentu untuk melihat IP awam; 4. Perintah umum boleh ditetapkan sebagai alias untuk panggilan cepat. Kaedah ini mudah dan praktikal, sesuai untuk keperluan tontonan IP dalam senario yang berbeza.

LinuxcanrunonmodesthardwareWithSpecificMinimumRequirements.a1ghzprocessor (x86orx86_64) disediakan, withadual-corecpurecommended.r Amshouldbeatleast512mbforcommand-lineuseor2gbfordesktopenvironments.diskspacerequiresaminimumof5-10gb, walaupun25gbisbetterforad

Ditulis dalam C, MySQL adalah sumber terbuka, silang platform, dan salah satu sistem pengurusan pangkalan data relasi yang paling banyak digunakan (RDMS). Ini adalah bahagian penting dalam timbunan lampu dan merupakan sistem pengurusan pangkalan data yang popular dalam hosting web, analisis data,

Ubuntu telah lama berdiri sebagai benteng aksesibiliti, menggilap, dan kuasa dalam ekosistem Linux. Dengan ketibaan Ubuntu 25.04, yang dinamakan "Puffin Plucky", kanonik sekali lagi menunjukkan komitmennya untuk menyampaikan

MongoDB adalah pangkalan data NoSQL yang berorientasikan dokumen yang sangat berskala tinggi yang dibina untuk menguruskan trafik yang berat dan sejumlah besar data. Tidak seperti pangkalan data SQL tradisional yang menyimpan data dalam baris dan lajur dalam jadual, data struktur MongoDB dalam j
