Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

ΠŸΡ€Π΅Π΄Π»Π°Π³Π°ΠΌ Π΄Π° сС Π·Π°ΠΏΠΎΠ·Π½Π°Π΅Ρ‚Π΅ с Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½Π°Ρ‚Π° интСрпрСтация Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ "ExtendedPromQL"

ΠŸΡƒΡΠ½Π΅Ρ‚Π΅ Π²ΠΈΠ΄Π΅ΠΎΡ‚ΠΎ

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

Накратко Π·Π° ΠΌΠ΅Π½. Казвам сС Π ΠΎΠΌΠ°Π½. Работя Π² CloudFlare, ТивСя Π² Π›ΠΎΠ½Π΄ΠΎΠ½. Но ΡΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° съм ΠΌΠ΅ΠΉΡ‚Π΅Π½Π΅Ρ€ Π½Π° VictoriaMetrics.
И Π°Π· съм Π°Π²Ρ‚ΠΎΡ€ Π½Π° ClickHouse плъгина Π·Π° Grafana ΠΈ ClickHouse-proxy – Ρ‚ΠΎΠ²Π° Π΅ малък прокси Π·Π° ClickHouse.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

Π©Π΅ Π·Π°ΠΏΠΎΡ‡Π½Π΅ΠΌ с ΠΏΡŠΡ€Π²Π°Ρ‚Π° част, която сС Π½Π°Ρ€ΠΈΡ‡Π° β€žΠ‘Π»ΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ ΠΏΡ€ΠΈ ΠΏΡ€Π΅Π²ΠΎΠ΄Π°β€œ ΠΈ Π² нСя Ρ‰Π΅ говоря Π·Π° Ρ‚ΠΎΠ²Π°, Ρ‡Π΅ всСки Π΅Π·ΠΈΠΊ ΠΈΠ»ΠΈ Π΄ΠΎΡ€ΠΈ просто Π΅Π·ΠΈΠΊ Π½Π° ΠΎΠ±Ρ‰ΡƒΠ²Π°Π½Π΅ – Ρ‚ΠΎΠ²Π° Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π²Π°ΠΆΠ½ΠΎ. Π—Π°Ρ‰ΠΎΡ‚ΠΎ Ρ‚ΠΎΠ²Π° Π΅ Π½Π°Ρ‡ΠΈΠ½ΡŠΡ‚, ΠΏΠΎ ΠΊΠΎΠΉΡ‚ΠΎ ΠΏΡ€Π΅Π΄Π°Π²Π°Ρ‚Π΅ Π½Π° Π΄Ρ€ΡƒΠ³ Ρ‡ΠΎΠ²Π΅ΠΊ ΠΈΠ»ΠΈ систСма своитС мисли, ΠΊΠ°ΠΊ Ρ„ΠΎΡ€ΠΌΡƒΠ»ΠΈΡ€Π°Ρ‚Π΅ Π·Π°ΠΏΠΈΡ‚Π²Π°Π½Π΅Ρ‚ΠΎ си. Π₯ΠΎΡ€Π°Ρ‚Π° Π² ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚ спорят ΠΊΠΎΠΉ Π΅Π·ΠΈΠΊ Π΅ ΠΏΠΎ-Π΄ΠΎΠ±ΡŠΡ€ – java ΠΈΠ»ΠΈ някой Π΄Ρ€ΡƒΠ³. Π—Π° сСбС си Ρ€Π΅ΡˆΠΈΡ…, Ρ‡Π΅ трябва Π΄Π° ΠΈΠ·Π±ΠΈΡ€Π°Ρ‚Π΅ Π² зависимост ΠΎΡ‚ Π·Π°Π΄Π°Ρ‡Π°Ρ‚Π°, Π·Π°Ρ‰ΠΎΡ‚ΠΎ всичко Ρ‚ΠΎΠ²Π° Π΅ спСцифично.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

Π”Π° Π·Π°ΠΏΠΎΡ‡Π½Π΅ΠΌ ΠΎΡ‚ самото Π½Π°Ρ‡Π°Π»ΠΎ. Какво Π΅ PromQL? PromQL – Ρ‚ΠΎΠ²Π° Π΅ Π΅Π·ΠΈΠΊ Π·Π° запитвания Π½Π° Prometheus. Π’ΠΎΠ²Π° Π΅ Π½Π°Ρ‡ΠΈΠ½ΡŠΡ‚, ΠΏΠΎ ΠΊΠΎΠΉΡ‚ΠΎ Ρ„ΠΎΡ€ΠΌΠΈΡ€Π°ΠΌΠ΅ запитвания Π² Prometheus, Π·Π° Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ time series Π΄Π°Π½Π½ΠΈ, Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ Ρ€Π΅Π΄ΠΈΡ†ΠΈ.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

Какво прСдставляват time series Π΄Π°Π½Π½ΠΈΡ‚Π΅? Π‘ΡƒΠΊΠ²Π°Π»Π½ΠΎ, Ρ‚ΠΎΠ²Π° са Ρ‚Ρ€ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ΡŠΡ€Π°.

Π’ΠΎΠ²Π° Π΅:

  • На ΠΊΠ°ΠΊΠ²ΠΎ Π³Π»Π΅Π΄Π°ΠΌΠ΅.
  • Кога Π³Π»Π΅Π΄Π°ΠΌΠ΅ Π½Π° Ρ‚ΠΎΠ²Π°.
  • И ΠΊΠ°ΠΊΠ²Π° стойност ΠΏΠΎΠΊΠ°Π·Π²Π°.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

Ако ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅ΠΌ Ρ‚Π°Π·ΠΈ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠ° (Ρ‚ΠΎΠ²Π° Π΅ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠ°Ρ‚Π° ΠΎΡ‚ моя Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½, която ΠΏΠΎΠΊΠ°Π·Π²Π° статистиката Π½Π° ΡΡ‚ΡŠΠΏΠΊΠΈΡ‚Π΅ ΠΌΠΈ), ΠΌΠΎΠΆΠ΅ΠΌ Π±ΡŠΡ€Π·ΠΎ Π΄Π° ΠΎΡ‚Π³ΠΎΠ²ΠΎΡ€ΠΈΠΌ Π½Π° Ρ‚Π΅Π·ΠΈ Π²ΡŠΠΏΡ€ΠΎΡΠΈ.

Π“Π»Π΅Π΄Π°ΠΌΠ΅ Π½Π° ΡΡ‚ΡŠΠΏΠΊΠΈΡ‚Π΅. Π’ΠΈΠΆΠ΄Π°ΠΌΠ΅ стойността ΠΈ Π²ΠΈΠΆΠ΄Π°ΠΌΠ΅ Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ, ΠΊΠΎΠ³Π°Ρ‚ΠΎ Π³Π»Π΅Π΄Π°ΠΌΠ΅ Π½Π° нСя. Π’.Π΅. Π³Π»Π΅Π΄Π°ΠΉΠΊΠΈ Π½Π° Ρ‚Π°Π·ΠΈ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠ°, лСсно ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΊΠ°ΠΆΠ΅ΠΌ, Ρ‡Π΅ Π² нСдСля съм ΠΈΠ·ΠΌΠΈΠ½Π°Π» ΠΎΠΊΠΎΠ»ΠΎ 15 000 ΡΡ‚ΡŠΠΏΠΊΠΈ. Π’ΠΎΠ²Π° са time series Π΄Π°Π½Π½ΠΈ.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

Π‘Π΅Π³Π° Π½Π΅ΠΊΠ° "ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ²Π°ΠΌΠ΅" (ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€Π°ΠΌΠ΅) Π΄Π°Π½Π½ΠΈΡ‚Π΅ Π² Π΄Ρ€ΡƒΠ³ ΠΌΠΎΠ΄Π΅Π» Π½Π° Π΄Π°Π½Π½ΠΈ ΠΏΠΎΠ΄ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Π½Π° Ρ‚Π°Π±Π»ΠΈΡ†Π°. Π’ΡƒΠΊ ΡΡŠΡ‰ΠΎ ΠΈΠΌΠ°ΠΌΠ΅ Ρ‚ΠΎΠ²Π°, ΠΊΠΎΠ΅Ρ‚ΠΎ наблюдавамС. Π”ΠΎΠ±Π°Π²ΠΈΡ… ΠΌΠ°Π»ΠΊΠΎ Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ Π΄Π°Π½Π½ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ Ρ‰Π΅ Π½Π°Ρ€Π΅Ρ‡Π΅ΠΌ ΠΌΠ΅Ρ‚Π°-Π΄Π°Π½Π½ΠΈ, Ρ‚.Π΅. Ρ‚ΠΎΠ²Π° Π½Π΅ съм Π°Π·, Π° Π΄Π²Π°ΠΌΠ° Π΄ΡƒΡˆΠΈ, Π΄Π° ΠΊΠ°ΠΆΠ΅ΠΌ, Jay ΠΈ Silent Bob. Π•Ρ‚ΠΎ Π½Π° ΠΊΠ°ΠΊΠ²ΠΎ ΠΎΠ±Ρ€ΡŠΡ‰Π°ΠΌΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅; ΠΊΠ°ΠΊΠ²ΠΎ ΠΏΠΎΠΊΠ°Π·Π²Π° ΠΈ ΠΊΠΎΠ³Π° ΠΏΠΎΠΊΠ°Π·Π²Π° Ρ‚Π°Π·ΠΈ стойност.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ
Π‘Π΅Π³Π° Π½Π΅ΠΊΠ° сС ΠΎΠΏΠΈΡ‚Π°ΠΌΠ΅ Π΄Π° Π·Π°ΠΏΠ°Π·ΠΈΠΌ всичкитС Ρ‚Π΅Π·ΠΈ Π΄Π°Π½Π½ΠΈ Π² Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ. Π—Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π²Π·Π΅Ρ… синтаксиса Π½Π° ClickHouse. И Ρ‚ΡƒΠΊ създавамС Π΅Π΄Π½Π° Ρ‚Π°Π±Π»ΠΈΡ†Π°, която сС Π½Π°Ρ€ΠΈΡ‡Π° β€žStepsβ€œ, Ρ‚.Π΅. Π½Π° ΠΊΠ°ΠΊΠ²ΠΎ Π³Π»Π΅Π΄Π°ΠΌΠ΅. Π’ΡƒΠΊ ΠΈΠΌΠ° Π²Ρ€Π΅ΠΌΠ΅, ΠΊΠΎΠ³Π°Ρ‚ΠΎ Π³Π»Π΅Π΄Π°ΠΌΠ΅ Π½Π° Ρ‚ΠΎΠ²Π°; ΠΊΠ°ΠΊΠ²ΠΎ ΠΏΠΎΠΊΠ°Π·Π²Π° ΠΈ някакви ΠΌΠ΅Ρ‚Π°-Π΄Π°Π½Π½ΠΈ, ΠΊΡŠΠ΄Π΅Ρ‚ΠΎ Ρ‰Π΅ ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°ΠΌΠ΅, ΠΊΠΎΠΉ Π΅: Jay ΠΈ Silent Bob.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

И Π·Π° Π΄Π° сС ΠΎΠΏΠΈΡ‚Π°ΠΌΠ΅ Π΄Π° Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€Π°ΠΌΠ΅ всичко Ρ‚ΠΎΠ²Π°, Ρ‰Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ Grafana, Π·Π°Ρ‰ΠΎΡ‚ΠΎ, ΠΏΡŠΡ€Π²ΠΎ, Ρ‚ΠΎΠ²Π° Π΅ красиво.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

Π‘ΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° Ρ‰Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ Ρ‚ΠΎΠ·ΠΈ плъгин. Има Π΄Π²Π΅ ΠΏΡ€ΠΈΡ‡ΠΈΠ½ΠΈ Π·Π° Ρ‚ΠΎΠ²Π°. ΠŸΡŠΡ€Π²Π°Ρ‚Π° Π΅, Ρ‡Π΅ Π°Π· Π³ΠΎ написах. И Π·Π½Π°ΠΌ ΠΊΠΎΠ»ΠΊΠΎ Π΅ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ Π΄Π° сС ΠΈΠ·Π²Π»Π΅ΠΊΠ°Ρ‚ Π΄Π°Π½Π½ΠΈ Π·Π° Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ сСрии ΠΎΡ‚ ClickHouse, Π·Π° Π΄Π° сС ΠΏΠΎΠΊΠ°ΠΆΠ°Ρ‚ Π² Grafana.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

Π©Π΅ ΠΏΠΎΠΊΠ°Π·Π²Π°ΠΌΠ΅ Π² Graph Panel. Π’ΠΎΠ²Π° Π΅ Π½Π°ΠΉ-популярната ΠΏΠ°Π½Π΅Π» Π² Grafana, която ΠΏΠΎΠΊΠ°Π·Π²Π° зависимостта Π½Π° стойността ΠΎΡ‚ Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ Π½ΠΈ трябват само Π΄Π²Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ΡŠΡ€Π°.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ
НСка напишСм Π½Π°ΠΉ-простата заявка β€” ΠΊΠ°ΠΊ Π΄Π° ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ статистика Π·Π° ΡΡ‚ΡŠΠΏΠΊΠΈΡ‚Π΅ Π² Grafana, ΠΊΠ°Ρ‚ΠΎ ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°ΠΌΠ΅ Ρ‚Π΅Π·ΠΈ Π΄Π°Π½Π½ΠΈ Π² ClickHouse, Π² Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ‚Π°, която ΡΡŠΠ·Π΄Π°Π΄ΠΎΡ…ΠΌΠ΅. И написвамС Ρ‚Π°ΠΊΠ°Π²Π° проста заявка. Π˜Π·Π±ΠΈΡ€Π°ΠΌΠ΅ ΠΎΡ‚ ΡΡ‚ΡŠΠΏΠΊΠΈΡ‚Π΅. Π˜Π·Π±ΠΈΡ€Π°ΠΌΠ΅ стойността ΠΈ Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π½Π° Ρ‚Π΅Π·ΠΈ стойности, Ρ‚.Π΅. ΡΡŠΡ‰ΠΈΡ‚Π΅ Ρ‚Ρ€ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ΡŠΡ€Π°, Π·Π° ΠΊΠΎΠΈΡ‚ΠΎ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ…ΠΌΠ΅.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

И Π² Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°ΠΌΠ΅ Ρ‚Π°ΠΊΡŠΠ² Π³Ρ€Π°Ρ„ΠΈΠΊ. Π—Π½Π°Π΅ Π»ΠΈ някой Π·Π°Ρ‰ΠΎ ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° Ρ‚ΠΎΠ»ΠΊΠΎΠ²Π° странно?

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

ΠŸΡ€Π°Π²ΠΈΠ»Π½ΠΎ, трябва Π΄Π° сС сортира ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

Π’ ΠΊΡ€Π°ΠΉΠ½Π° смСтка Ρ‰Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ Π²Π΅Ρ‡Π΅ ΠΌΠ°Π»ΠΊΠΎ ΠΏΠΎ-Π΄ΠΎΠ±Ρ€Π΅, Π½ΠΎ всС ΠΎΡ‰Π΅ странСн Π³Ρ€Π°Ρ„ΠΈΠΊ. Π—Π½Π°Π΅ Π»ΠΈ някой Π·Π°Ρ‰ΠΎ? ΠŸΡ€Π°Π²ΠΈΠ»Π½ΠΎ, Ρ‚Π°ΠΌ са Π΄Π²Π°ΠΌΠ° участници ΠΈ Π² Grafana ΠΏΡ€Π΅Π΄Π°Π²Π°ΠΌΠ΅ Π΄Π²Π΅ Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ сСрии, Π·Π°Ρ‰ΠΎΡ‚ΠΎ Π°ΠΊΠΎ Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ ΠΎΡ‚Π½ΠΎΠ²ΠΎ Π΄Π°Ρ‚Π° ΠΌΠΎΠ΄Π΅Π»Π°, всяка Π²Ρ€Π΅ΠΌΠ΅Π²Π° сСрия Π΅ ΡƒΠ½ΠΈΠΊΠ°Π»Π½Π° комбинация ΠΎΡ‚ ΠΈΠΌΠ΅ ΠΈ всички ΠΊΠ»ΡŽΡ‡-стойности Π½Π° Π΅Ρ‚ΠΈΠΊΠ΅Ρ‚ΠΈΡ‚Π΅.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

Π—Π°Ρ‚ΠΎΠ²Π° трябва Π΄Π° ΠΈΠ·Π±Π΅Ρ€Π΅ΠΌ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π΅Π½ Ρ‡ΠΎΠ²Π΅ΠΊ. Π˜Π·Π±ΠΈΡ€Π°ΠΌΠ΅ Jay.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

И рисувамС ΠΎΡ‚Π½ΠΎΠ²ΠΎ. Π‘Π΅Π³Π° Π³Ρ€Π°Ρ„ΠΈΠΊΡŠΡ‚ Π²Π΅Ρ‡Π΅ ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° Π½ΠΎΡ€ΠΌΠ°Π»Π½ΠΎ. Π‘Π΅Π³Π° Π΅ Π½ΠΎΡ€ΠΌΠ°Π»Π΅Π½ Π³Ρ€Π°Ρ„ΠΈΠΊ ΠΈ всичко Ρ€Π°Π±ΠΎΡ‚ΠΈ Π΄ΠΎΠ±Ρ€Π΅.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

И вСроятно Π·Π½Π°Π΅Ρ‚Π΅ ΠΊΠ°ΠΊ Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ Π½Π΅Ρ‰ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ, Π½ΠΎ Π² Prometheus Ρ‡Ρ€Π΅Π· PromQL. ΠŸΡ€ΠΈΠ±Π»ΠΈΠ·ΠΈΡ‚Π΅Π»Π½ΠΎ Ρ‚Π°ΠΊΠ°. Малко ΠΏΠΎ-лСсно. И освСн Ρ‚ΠΎΠ²Π° Ρ‰Π΅ Ρ€Π°Π·Π΄Π΅Π»ΠΈΠΌ всичко. Π’Π·ΠΈΠΌΠ°Ρ…ΠΌΠ΅ Steps. И Ρ„ΠΈΠ»Ρ‚Ρ€ΠΈΡ€Π°ΠΌΠ΅ ΠΏΠΎ Jay. Π’ΡƒΠΊ Π½Π΅ ΠΊΠ°Π·Π²Π°ΠΌΠ΅, Ρ‡Π΅ Π½ΠΈ трябва Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ стойност ΠΈ Π½Π΅ ΠΈΠ·Π±ΠΈΡ€Π°ΠΌΠ΅ Π²Ρ€Π΅ΠΌΠ΅.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

А сСга Π΄Π° ΠΎΠΏΠΈΡ‚Π°ΠΌΠ΅ Π΄Π° прСсмСтнСм скоростта Π½Π° Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Jay ΠΈΠ»ΠΈ Silent Bob. Π’ ClickHouse Ρ‰Π΅ трябва Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΠΌ runningDifference, Ρ‚.Π΅. Π΄Π° изчислим Ρ€Π°Π·Π»ΠΈΠΊΠ°Ρ‚Π° ΠΌΠ΅ΠΆΠ΄Ρƒ Π΄Π²ΠΎΠΉΠΊΠΈ Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΈ Π΄Π° я Ρ€Π°Π·Π΄Π΅Π»ΠΈΠΌ Π½Π° Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ, Π·Π° Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ Ρ‚ΠΎΡ‡Π½Π°Ρ‚Π° скорост. Заявката Ρ‰Π΅ ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° ΠΏΡ€ΠΈΠ±Π»ΠΈΠ·ΠΈΡ‚Π΅Π»Π½ΠΎ Ρ‚Π°ΠΊΠ°.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

И тя Ρ‰Π΅ ΠΏΠΎΠΊΠ°ΠΆΠ΅ ΠΏΡ€ΠΈΠ±Π»ΠΈΠ·ΠΈΡ‚Π΅Π»Π½ΠΎ Ρ‚Π°ΠΊΠΈΠ²Π° стойности, Ρ‚.Π΅. ΠΎΠΊΠΎΠ»ΠΎ 1,8 ΡΡ‚ΡŠΠΏΠΊΠΈ Π² сСкунда ΠΏΡ€Π°Π²ΠΈ Silent Bob ΠΈΠ»ΠΈ Jay.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

И Π² Prometheus Π·Π½Π°Π΅Ρ‚Π΅ ΠΊΠ°ΠΊ Π΄Π° Π³ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ ΡΡŠΡ‰ΠΎ. Много ΠΏΠΎ-лСсно, ΠΎΡ‚ΠΊΠΎΠ»ΠΊΠΎΡ‚ΠΎ бСшС ΠΏΡ€Π΅Π΄ΠΈ.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎΠ˜ Π·Π° Π΄Π° бъдС Ρ‚ΠΎΠ²Π° Ρ‚ΠΎΠ»ΠΊΠΎΠ²Π° лСсно Π΄Π° сС ΠΏΡ€Π°Π²ΠΈ Π² Grafana, Π΄ΠΎΠ±Π°Π²ΠΈΡ… Ρ‚Π°ΠΊΠ°Π²Π° ΠΎΠ±Π²ΠΈΠ²ΠΊΠ°, която ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° ΠΌΠ½ΠΎΠ³ΠΎ сходно с PromQL. Вя сС Π½Π°Ρ€ΠΈΡ‡Π° Rate Macros ΠΈΠ»ΠΈ ΠΊΠ°ΠΊΡ‚ΠΎ искатС я Π½Π°Ρ€Π΅Ρ‡Π΅Ρ‚Π΅. Π’ Grafana просто ΠΏΠΈΡˆΠ΅Ρ‚Π΅ "rate", Π½ΠΎ дълбоко Π² систСмата тя сС трансформира Π² Ρ‚Π°ΠΊΡŠΠ² голям заявка. И Π½Π΅ Π΅ Π½ΡƒΠΆΠ½ΠΎ Π΄ΠΎΡ€ΠΈ Π΄Π° я Π³Π»Π΅Π΄Π°Ρ‚Π΅, тя Π΅ Ρ‚Π°ΠΌ, Π½ΠΎ спСстяватС ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅, Π·Π°Ρ‰ΠΎΡ‚ΠΎ писанСто Π½Π° Ρ‚Π°ΠΊΠΈΠ²Π° ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΈ SQL заявки Π²ΠΈΠ½Π°Π³ΠΈ Π΅ ΠΈΠ·Ρ‚ΠΎΡ‰ΠΈΡ‚Π΅Π»Π½ΠΎ. ЛСсно ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΡΠ³Ρ€Π΅ΡˆΠΈΡ‚Π΅ ΠΈ слСд Ρ‚ΠΎΠ²Π° дълго Π΄Π° Π½Π΅ Ρ€Π°Π·Π±Π΅Ρ€Π΅Ρ‚Π΅ ΠΊΠ°ΠΊΠ²ΠΎ сС случва.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

А Ρ‚ΠΎΠ²Π° Π΅ заявка, която Π½Π΅ сС ΠΏΠΎΠ±Ρ€Π° Π΄ΠΎΡ€ΠΈ Π½Π° Π΅Π΄ΠΈΠ½ слайд ΠΈ ΠΌΠΈ сС Π½Π°Π»ΠΎΠΆΠΈ Π΄Π° я раздСля Π½Π° Π΄Π²Π΅ ΠΊΠΎΠ»ΠΎΠ½ΠΈ. Π’ΠΎΠ²Π° ΡΡŠΡ‰ΠΎ Π΅ заявка Π² ClickHouse, която ΠΏΡ€Π°Π²ΠΈ ΡΡŠΡ‰ΠΎΡ‚ΠΎ rate, Π½ΠΎ Π·Π° Π΄Π²Π΅Ρ‚Π΅ Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ сСрии: ΠΈ Π·Π° Silent Bob, ΠΈ Π·Π° Jay, Π·Π° Π΄Π° ΠΈΠΌΠ°ΠΌΠ΅ Π΄Π²Π΅ Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ сСрии Π½Π° ΠΏΠ°Π½Π΅Π»Π°. И Π²Π΅Ρ‡Π΅ Π΅ ΠΌΠ½ΠΎΠ³ΠΎ слоТно, спорСд ΠΌΠ΅Π½.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

И Π·Π° Prometheus Ρ‚ΠΎΠ²Π° Ρ‰Π΅ бъдС sum(rate). Π—Π° ClickHouse Π½Π°ΠΏΡ€Π°Π²ΠΈΡ… ΠΎΡ‚Π΄Π΅Π»Π΅Π½ макрос, ΠΊΠΎΠΉΡ‚ΠΎ сС Π½Π°Ρ€ΠΈΡ‡Π° RateColumns, ΠΊΠΎΠΉΡ‚ΠΎ ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° ΠΊΠ°Ρ‚ΠΎ заявка Π² Prometheus.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

ΠŸΠΎΠ³Π»Π΅Π΄Π½Π°Ρ…ΠΌΠ΅ ΠΈ ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π°, Ρ‡Π΅ PromQL Π΅ страхотСн, Π½ΠΎ Ρ€Π°Π·Π±ΠΈΡ€Π° сС, ΠΈΠΌΠ° своитС ограничСния.

Π’ΠΎΠ²Π° Π΅:

  • ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ SELECT.
  • Π“Ρ€Π°Π½ΠΈΡ‡Π½ΠΈ JOIN.
  • Няма ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° HAVING.

И Π°ΠΊΠΎ стС Ρ€Π°Π±ΠΎΡ‚ΠΈΠ»ΠΈ дълго с Π½Π΅Π³ΠΎ, Π·Π½Π°Π΅Ρ‚Π΅, Ρ‡Π΅ понякога Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ Π½Π΅Ρ‰ΠΎ Π² PromQL, Π΄ΠΎΠΊΠ°Ρ‚ΠΎ Π² SQL ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ ΠΏΠΎΡ‡Ρ‚ΠΈ всичко, Π·Π°Ρ‰ΠΎΡ‚ΠΎ всички Ρ‚Π΅Π·ΠΈ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ ΠΎΠ±ΡΡŠΠ΄ΠΈΡ…ΠΌΠ΅, ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ Π½Π°ΠΏΡ€Π°Π²Π΅Π½ΠΈ Π² SQL. Но Π΄Π°Π»ΠΈ Π±ΠΈ Π±ΠΈΠ»ΠΎ ΡƒΠ΄ΠΎΠ±Π½ΠΎ Π΄Π° сС ΠΏΠΎΠ»Π·Π²Π°? Π’ΠΎΠ²Π° ΠΌΠ΅ Π½Π°ΠΊΠ°Ρ€Π° Π΄Π° сС замисля, Ρ‡Π΅ Π½Π΅ Π²ΠΈΠ½Π°Π³ΠΈ Π½Π°ΠΉ-силният Π΅Π·ΠΈΠΊ ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС Π½Π°ΠΉ-удобният.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

Π—Π°Ρ‚ΠΎΠ²Π° понякога трябва Π΄Π° ΠΈΠ·Π±ΠΈΡ€Π°Ρ‚Π΅ Π΅Π·ΠΈΠΊ спорСд Π·Π°Π΄Π°Ρ‡ΠΈΡ‚Π΅. Π’ΠΎΠ²Π° Π΅ ΠΊΠ°Ρ‚ΠΎ Π±ΠΈΡ‚ΠΊΠ° ΠΌΠ΅ΠΆΠ΄Ρƒ Π‘Π°Ρ‚ΠΌΠ°Π½ ΠΈ Π‘ΡƒΠΏΠ΅Ρ€ΠΌΠ΅Π½. Ясно Π΅, Ρ‡Π΅ Π‘ΡƒΠΏΠ΅Ρ€ΠΌΠ΅Π½ Π΅ ΠΏΠΎ-силСн, Π½ΠΎ Π‘Π°Ρ‚ΠΌΠ°Π½ успя Π΄Π° Π³ΠΎ ΠΏΠΎΠ±Π΅Π΄ΠΈ, Π·Π°Ρ‰ΠΎΡ‚ΠΎ Π΅ ΠΏΠΎ-ΠΏΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅Π½ ΠΈ знаСшС Ρ‚ΠΎΡ‡Π½ΠΎ ΠΊΠ°ΠΊΠ²ΠΎ ΠΏΡ€Π°Π²ΠΈ.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

Π‘Π»Π΅Π΄Π²Π°Ρ‰Π°Ρ‚Π° част Π΅ Ρ‚ΠΎΠ²Π° - Π Π°Π·ΡˆΠΈΡ€ΡΠ²Π°Π½Π΅ Π½Π° PromQL.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

ΠžΡ‰Π΅ вСднъТ Π·Π° VictoriaMetrics. Какво Π΅ VictoriaMetrics? Π’ΠΎΠ²Π° Π΅ Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ Π·Π° Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ сСрии, тя Π΅ с ΠΎΡ‚Π²ΠΎΡ€Π΅Π½ ΠΊΠΎΠ΄, дистрибутирамС я Π² Π΅Π΄ΠΈΠ½ΠΈΡ‡Π½Π° ΠΈ ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€Π½Π° вСрсия. Π‘ΠΏΠΎΡ€Π΅Π΄ Π½Π°ΡˆΠΈΡ‚Π΅ Π±Π΅Π½Ρ‡ΠΌΠ°Ρ€ΠΊΠΎΠ²Π΅, тя Π΅ Π½Π°ΠΉ-Π±ΡŠΡ€Π·Π°Ρ‚Π° Π½Π° ΠΏΠ°Π·Π°Ρ€Π° Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° ΠΈ ΠΏΠΎ компрСсия, Ρ‚.Π΅. Ρ€Π΅Π°Π»Π½ΠΈ Ρ…ΠΎΡ€Π° Π΄ΠΎΠΊΠ»Π°Π΄Π²Π°Ρ‚ компрСсия ΠΎΡ‚ ΠΎΠΊΠΎΠ»ΠΎ 0,4 Π±Π°ΠΉΡ‚Π° Π½Π° Ρ‚ΠΎΡ‡ΠΊΠ°, Π΄ΠΎΠΊΠ°Ρ‚ΠΎ ΠΏΡ€ΠΈ Prometheus - 1,2-1,4.

ΠŸΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°ΠΌΠ΅ Π½Π΅ само Prometheus. ΠŸΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°ΠΌΠ΅ InfluxDB, Graphite, OpenTSDB.

Π’ нас ΠΌΠΎΠΆΠ΅ Π΄Π° сС "писа", Ρ‚.Π΅. ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΏΡ€Π΅Ρ…Π²ΡŠΡ€Π»ΡΠΌΠ΅ стари Π΄Π°Π½Π½ΠΈ.

И освСн Ρ‚ΠΎΠ²Π° Ρ€Π°Π±ΠΎΡ‚ΠΈΠΌ ΠΈΠ΄Π΅Π°Π»Π½ΠΎ с Prometheus ΠΈ Grafana, тоСст ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°ΠΌΠ΅ PromQL engine. Π’ Grafana просто ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° смСнитС Prometheus endpoint Π½Π° VictoriaMetrics ΠΈ всичкитС Π²ΠΈ Π΄Π°ΡˆΠ±ΠΎΡ€Π΄ΠΎΠ²Π΅ Ρ‰Π΅ работят, ΠΊΠ°ΠΊΡ‚ΠΎ ΠΏΡ€Π΅Π΄ΠΈ.

Но Π²ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ ΠΈ Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ прСдоставя VictoriaMetrics.

Π‘ΡŠΡ€Π·ΠΎ Ρ‰Π΅ ΠΌΠΈΠ½Π΅ΠΌ ΠΏΡ€Π΅Π· Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈΡ‚Π΅, ΠΊΠΎΠΈΡ‚ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ…ΠΌΠ΅.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

Omit interval param – ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° пропуснСтС интСрвалния ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ΡŠΡ€ Π² Grafana. ΠšΠΎΠ³Π°Ρ‚ΠΎ Π½Π΅ искатС Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°Ρ‚Π΅ странни Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ ΠΏΡ€ΠΈ zoom-in/out Π² ΠΏΠ°Π½Π΅Π»Π°, ΠΏΡ€Π΅ΠΏΠΎΡ€ΡŠΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ Π΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π°Ρ‚Π° $__interval. Π’ΠΎΠ²Π° Π΅ Π²ΡŠΡ‚Ρ€Π΅ΡˆΠ½Π° ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π° Π½Π° Grafana ΠΈ тя сама ΠΈΠ·Π±ΠΈΡ€Π° Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° Π½Π° Π΄Π°Π½Π½ΠΈΡ‚Π΅. И VictoriaMetrics ΠΌΠΎΠΆΠ΅ сама Π΄Π° Ρ€Π°Π·Π±ΠΈΡ€Π° какъв Π΄Π° бъдС Ρ‚ΠΎΠ·ΠΈ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½. Няма Π½ΡƒΠΆΠ΄Π° Π΄Π° обновяватС всички ваши запитвания. Π©Π΅ бъдС ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎ-лСсно.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

Π’Ρ‚ΠΎΡ€Π°Ρ‚Π° функция Π΅ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Π½ΠΎ Ρ€Π΅Ρ„Π΅Ρ€ΠΈΡ€Π°Π½Π΅. ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ Ρ‚ΠΎΠ·ΠΈ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π» във Π²Π°ΡˆΠΈΡ‚Π΅ ΠΈΠ·Ρ€Π°Π·ΠΈ. ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π³ΠΎ ΡƒΠΌΠ½ΠΎΠΆΠ°Π²Π°Ρ‚Π΅, Π΄Π΅Π»ΠΈΡ‚Π΅, ΠΏΡ€Π΅Π΄Π°Π²Π°Ρ‚Π΅, Ρ€Π΅Ρ„Π΅Ρ€ΠΈΡ€Π°Ρ‚Π΅.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

Π‘Π»Π΅Π΄Π²Π° сСмСйството Π½Π° rollup Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Rollup функцията трансформира всяка ваша Π²Ρ€Π΅ΠΌΠ΅Π²Π° сСрия Π² Ρ‚Ρ€ΠΈ ΠΎΡ‚Π΄Π΅Π»Π½ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ сСрии. Π’ΠΎΠ²Π° са min, max ΠΈ avg. Бмятам, Ρ‡Π΅ Ρ‚ΠΎΠ²Π° Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΡƒΠ΄ΠΎΠ±Π½ΠΎ, Π·Π°Ρ‰ΠΎΡ‚ΠΎ понякога ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΏΠΎΠΊΠ°ΠΆΠ΅ някакви Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΈ ΠΈ нСточности.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

Ако просто ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ irate ΠΈΠ»ΠΈ rate, вСроятно ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° пропуснСтС някои случаи, ΠΊΠΎΠ³Π°Ρ‚ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π²Π°Ρ‚Π° сСрия сС Π΄ΡŠΡ€ΠΆΠΈ ΠΏΠΎ Ρ€Π°Π·Π»ΠΈΡ‡Π΅Π½ Π½Π°Ρ‡ΠΈΠ½ ΠΎΡ‚ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΎΡ‚ΠΎ. Π‘ Ρ‚Π°Π·ΠΈ функция Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎ-лСсно Π΄Π° сС Π²ΠΈΠ΄ΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ‡Π΅ max Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π΄Π°Π»Π΅Ρ‡ ΠΎΡ‚ avg.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

Π‘Π»Π΅Π΄Π²Π° ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π°Ρ‚Π° default. Default ΠΎΠ·Π½Π°Ρ‡Π°Π²Π° ΠΊΠ°ΠΊΠ²Π° стойност трябва Π΄Π° Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€Π°ΠΌΠ΅ Π² Grafana, Π°ΠΊΠΎ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° нямамС Π²Ρ€Π΅ΠΌΠ΅Π²Π° сСрия. Кога сС случва Ρ‚ΠΎΠ²Π°? НапримСр, ΠΊΠΎΠ³Π°Ρ‚ΠΎ СкспортиратС ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠ° Π·Π° Π³Ρ€Π΅ΡˆΠΊΠΈ. И ΠΈΠΌΠ°Ρ‚Π΅ Ρ‚ΠΎΠ»ΠΊΠΎΠ²Π° Ρ…ΡƒΠ±Π°Π²ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Ρ‡Π΅ ΠΊΠΎΠ³Π°Ρ‚ΠΎ стартирахтС, няматС Π³Ρ€Π΅ΡˆΠΊΠΈ ΠΈ Π΄ΠΎΡ€ΠΈ ΠΏΡ€Π΅Π· слСдващитС Ρ‚Ρ€ΠΈ часа ΠΈΠ»ΠΈ Π΄Π΅Π½. Π˜ΠΌΠ°Ρ‚Π΅ Π΄Π°ΡˆΠ±ΠΎΡ€Π΄ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ ΠΏΠΎΠΊΠ°Π·Π²Π°Ρ‚ ΡΡŠΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ success към error. И Ρ‚Π΅ Ρ‰Π΅ Π²ΠΈ ΠΏΠΎΠΊΠ°Π·Π²Π°Ρ‚ Π½ΠΈΡ‰ΠΎ, Π·Π°Ρ‰ΠΎΡ‚ΠΎ няматС ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠ° Π·Π° Π³Ρ€Π΅ΡˆΠΊΠΈ. А Π² default ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π·Π°Π΄Π°Π΄Π΅Ρ‚Π΅ ΠΊΠ°ΠΊΠ²ΠΎΡ‚ΠΎ ΠΈ Π΄Π° Π΅.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

Keep_last_Value – Π·Π°ΠΏΠ°Π·Π²Π° послСдната стойност Π½Π° ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠ°Ρ‚Π°, Π°ΠΊΠΎ тя сС Π΅ Π·Π°Π³ΡƒΠ±ΠΈΠ»Π°. Ако Prometheus слСд слСдващото скрСйпванС Π½Π΅ я Π΅ Π½Π°ΠΌΠ΅Ρ€ΠΈΠ» Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π½Π° 5 ΠΌΠΈΠ½ΡƒΡ‚ΠΈ, Π½ΠΈΠ΅ Ρ‰Π΅ Π·Π°ΠΏΠΎΠΌΠ½ΠΈΠΌ послСдната ΠΉ стойност ΠΈ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈΡ‚Π΅ Π²ΠΈ ΠΎΡ‚Π½ΠΎΠ²ΠΎ няма Π΄Π° сС поврСдят.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

Scrape_interval – ΠΏΠΎΠΊΠ°Π·Π²Π° ΠΊΠΎΠ»ΠΊΠΎ чСсто Prometheus ΡΡŠΠ±ΠΈΡ€Π° Π΄Π°Π½Π½ΠΈ Π·Π° Π²Π°ΡˆΠ°Ρ‚Π° ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠ°, с ΠΊΠ°ΠΊΠ²Π° чСстота. Π’ΡƒΠΊ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π²ΠΈΠ΄ΠΈΡ‚Π΅ пропуски, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ
Label replace – популярна функция. Но смятамС, Ρ‡Π΅ Π΅ ΠΌΠ°Π»ΠΊΠΎ слоТна, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ ΠΏΡ€ΠΈΠ΅ΠΌΠ° мноТСство Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΈ. И трябва Π΄Π° ΠΏΠΎΠΌΠ½ΠΈΡ‚Π΅ Π½Π΅ само 5 Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°, Π½ΠΎ ΠΈ тяхната послСдоватСлност.
Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ
Π—Π°Ρ‚ΠΎΠ²Π°, Π·Π°Ρ‰ΠΎ Π΄Π° Π½Π΅ Π³ΠΈ Π½Π°ΠΏΡ€Π°Π²ΠΈΠΌ ΠΏΠΎ-прости? Π’.Π΅. Π΄Π° Π³ΠΈ Ρ€Π°Π·Π±ΠΈΠ΅ΠΌ Π½Π° ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ с Ρ€Π°Π·Π±ΠΈΡ€Π°Π΅ΠΌ синтаксис.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

И сСга Π½Π°ΠΉ-интСрСсното. Π—Π°Ρ‰ΠΎ считамС, Ρ‡Π΅ Ρ‚ΠΎΠ²Π° Π΅ Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½ PromQL? Π—Π°Ρ‰ΠΎΡ‚ΠΎ ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°ΠΌΠ΅ ΠΎΠ±Ρ‰ΠΈ Ρ‚Π°Π±Π»ΠΈΡ†ΠΈ. ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° сканиратС QR ΠΊΠΎΠ΄Π° (https://github.com/VictoriaMetrics/VictoriaMetrics/wiki/ExtendedPromQL), Π΄Π° Π²ΠΈΠ΄ΠΈΡ‚Π΅ Π»ΠΈΠ½ΠΊΠΎΠ²Π΅ с ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΈ, с playground, ΠΊΡŠΠ΄Π΅Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΈΠ·ΠΏΡŠΠ»Π½ΡΠ²Π°Ρ‚Π΅ запитвания Π΄ΠΈΡ€Π΅ΠΊΡ‚Π½ΠΎ Π² VictoriaMetrics Π±Π΅Π· инсталиранС, просто Π² Π±Ρ€Π°ΡƒΠ·ΡŠΡ€Π°.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

И ΠΊΠ°ΠΊΠ²ΠΎ Π΅ Ρ‚ΠΎΠ²Π°? Π’ΠΎΠ²Π° Π·Π°ΠΏΠΈΡ‚Π²Π°Π½Π΅ ΠΎΡ‚Π³ΠΎΡ€Π΅ Π΅ доста популярно. Мисля, Ρ‡Π΅ във всСки Π΄Π°ΡˆΠ±ΠΎΡ€Π΄ Π² ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ Π΅Π΄ΠΈΠ½ ΠΈ ΡΡŠΡ‰ Ρ„ΠΈΠ»Ρ‚ΡŠΡ€ Π·Π° всичко. ОбикновСно Π΅ Ρ‚Π°ΠΊΠ°. Но ΠΊΠΎΠ³Π°Ρ‚ΠΎ трябва Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΡ‚Π΅ някакъв Π½ΠΎΠ² Ρ„ΠΈΠ»Ρ‚ΡŠΡ€, трябва Π΄Π° Π°ΠΊΡ‚ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€Π°Ρ‚Π΅ всяка ΠΏΠ°Π½Π΅Π»ΠΊΠ° ΠΈΠ»ΠΈ Π΄Π° ΠΈΠ·Ρ‚Π΅Π³Π»ΠΈΡ‚Π΅ Π΄Π°ΡˆΠ±ΠΎΡ€Π΄Π°, Π΄Π° Π³ΠΎ ΠΎΡ‚Π²ΠΎΡ€ΠΈΡ‚Π΅ Π² JSON, Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ Π½Π°ΠΌΠ΅Ρ€ΠΈ ΠΈ Π·Π°ΠΌΠ΅Π½ΠΈ, ΠΊΠΎΠ΅Ρ‚ΠΎ ΡΡŠΡ‰ΠΎ ΠΎΡ‚Π½Π΅ΠΌΠ° Π²Ρ€Π΅ΠΌΠ΅. Π—Π°Ρ‰ΠΎ Π΄Π° Π½Π΅ ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Ρ‚Π΅ Ρ‚ΠΎΠ²Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π° ΠΈ Π΄Π° Π³ΠΎ ΠΏΡ€Π΅ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅? Π‘ΠΏΠΎΡ€Π΅Π΄ ΠΌΠ΅Π½, Ρ‚ΠΎΠ²Π° ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎ-просто ΠΈ Ρ€Π°Π·Π±ΠΈΡ€Π°Π΅ΠΌΠΎ.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

НапримСр, ΠΊΠΎΠ³Π°Ρ‚ΠΎ трябва Π΄Π° Π°ΠΊΡ‚ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€Π°ΠΌ Ρ„ΠΈΠ»Ρ‚Ρ€ΠΈ Π² Grafana във всички запитвания, Π° Π΄Π°ΡˆΠ±ΠΎΡ€Π΄ΡŠΡ‚ ΠΌΠΎΠΆΠ΅ Π΄Π° Π΅ ΠΎΠ³Ρ€ΠΎΠΌΠ΅Π½ ΠΈΠ»ΠΈ Π΄ΠΎΡ€ΠΈ Π΄Π° ΠΈΠΌΠ° няколко. И ΠΊΠ°ΠΊ Π±ΠΈΡ… искал Π΄Π° Ρ€Π΅ΡˆΠ° Ρ‚ΠΎΠ·ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ Π² Grafana?

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

РСшавам Ρ‚ΠΎΠ·ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ Ρ‚Π°ΠΊΠ°: правя commonFilter ΠΈ Π² Π½Π΅Π³ΠΎ опрСдСлям Ρ‚ΠΎΠ·ΠΈ Ρ„ΠΈΠ»Ρ‚ΡŠΡ€, Π° слСд Ρ‚ΠΎΠ²Π° Π³ΠΎ ΠΏΡ€Π΅ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌ Π² запитванията. Но Π°ΠΊΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ ΡΡŠΡ‰ΠΎΡ‚ΠΎ сСга, Ρ‚ΠΎΠ²Π° няма Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈ, Π·Π°Ρ‰ΠΎΡ‚ΠΎ Grafana Π½Π΅ Π²ΠΈ позволява Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ Π²ΡŠΡ‚Ρ€Π΅ Π² ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ запитвания. И Ρ‚ΠΎΠ²Π° Π΅ ΠΌΠ°Π»ΠΊΠΎ странно.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

И Π·Π°Ρ‚ΠΎΠ²Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΡ… Ρ‚Π°ΠΊΡŠΠ² Π²Π°Ρ€ΠΈΠ°Π½Ρ‚, ΠΊΠΎΠΉΡ‚ΠΎ позволява Π΄Π° сС ΠΏΡ€Π°Π²ΠΈ Ρ‚ΠΎΠ²Π°. И Π°ΠΊΠΎ стС заинтСрСсовани ΠΈΠ»ΠΈ искатС Ρ‚Π°ΠΊΠ°Π²Π° функция, Ρ‚ΠΎ ΠΏΠΎΠ΄ΠΊΡ€Π΅ΠΏΠ΅Ρ‚Π΅ ΠΈΠ»ΠΈ Π΄Π°ΠΉΡ‚Π΅ нСхарСсванС, Π°ΠΊΠΎ Π½Π΅ Π²ΠΈ харСсва идСята. https://github.com/grafana/grafana/pull/16694

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

По-Π½Π°Ρ‚Π°Ρ‚ΡŠΠΊ относно Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈΡΡ‚Π° Π½Π° PromQL. Π’ΡƒΠΊ опрСдСлямС Π½Π΅ само ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π°, Π½ΠΎ ΠΈ цяла функция. И я Π½Π°Ρ€ΠΈΡ‡Π°ΠΌΠ΅ ru (ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° рСсурси). Π’Π°Π·ΠΈ функция ΠΏΡ€ΠΈΠ΅ΠΌΠ° свободни рСсурси, ограничСния ΠΏΠΎ рСсурситС ΠΈ Ρ„ΠΈΠ»Ρ‚ΡŠΡ€. Π‘ΠΈΠ½Ρ‚Π°ΠΊΡΠΈΡΡŠΡ‚ ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° доста прост. Много Π΅ лСсно Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Ρ‚Π°Π·ΠΈ функция ΠΈ Π΄Π° сС изчисли ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ΡŠΡ‚ Π½Π° свободната ΠΏΠ°ΠΌΠ΅Ρ‚ Ρƒ нас. Π’.Π΅. ΠΊΠΎΠ»ΠΊΠΎ ΠΏΠ°ΠΌΠ΅Ρ‚ Ρ€Π°Π·ΠΏΠΎΠ»Π°Π³Π°ΠΌΠ΅, ΠΊΠ°ΠΊΠ²ΠΎ Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅Ρ‚ΠΎ ΠΈ ΠΊΠ°ΠΊ Π΄Π° Ρ„ΠΈΠ»Ρ‚Ρ€ΠΈΡ€Π°ΠΌΠ΅. Π’ΠΎΠ²Π° ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎ-ΡƒΠ΄ΠΎΠ±Π½ΠΎ, Π°ΠΊΠΎ ΠΏΠΈΡˆΠ΅Ρ‚Π΅ всичко, ΠΏΡ€Π΅ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ ΡΡŠΡ‰ΠΈΡ‚Π΅ Ρ„ΠΈΠ»Ρ‚Ρ€ΠΈ, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Ρ‚ΠΎΠ²Π° Π±ΠΈ сС ΠΏΡ€Π΅Π²ΡŠΡ€Π½Π°Π»ΠΎ Π² голямо Π·Π°ΠΏΠΈΡ‚Π²Π°Π½Π΅.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

Π•Ρ‚ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π·Π° Ρ‚Π°ΠΊΡŠΠ² голям-Π³Ρ€ΡƒΠΏΠ΅Π½ Π·Π°ΠΏΠΈΡ‚. Π’ΠΎΠΉ ΠΈΠ΄Π²Π° ΠΎΡ‚ официалния Π΄Π°ΡˆΠ±ΠΎΡ€Π΄ Π½Π° NodeExporter Π·Π° Grafana. Но Π½Π΅ Ρ€Π°Π·Π±ΠΈΡ€Π°ΠΌ напълно ΠΊΠ°ΠΊΠ²ΠΎ става Ρ‚ΡƒΠΊ. ВоСст, Ρ€Π°Π·Π±ΠΈΡ€Π° сС, Ρ€Π°Π·Π±ΠΈΡ€Π°ΠΌ, Π°ΠΊΠΎ сС Π²Π³Π»Π΅Π΄Π°ΠΌ ΠΏΠΎ-Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»Π½ΠΎ, Π½ΠΎ броят Π½Π° скобитС ΠΌΠΎΠΆΠ΅ Π²Π΅Π΄Π½Π°Π³Π° Π΄Π° Π½Π°ΠΌΠ°Π»ΠΈ мотивацията Π΄Π° Ρ€Π°Π·Π±Π΅Ρ€Π° ΠΊΠ°ΠΊΠ²ΠΎ Π²ΡΡŠΡ‰Π½ΠΎΡΡ‚ сС случва. И Π·Π°Ρ‰ΠΎ Π½Π΅ Π³ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΠΌ ΠΏΠΎ-просто ΠΈ Ρ€Π°Π·Π±ΠΈΡ€Π°Π΅ΠΌΠΎ?

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

НапримСр, Ρ‚Π°ΠΊΠ°, ΠΊΠ°Ρ‚ΠΎ ΠΏΠΎΠ΄Ρ‡Π΅Ρ€Ρ‚Π°Π΅ΠΌ Π²Π°ΠΆΠ½ΠΈΡ‚Π΅ Π½Π΅Ρ‰Π° ΠΈΠ»ΠΈ части Π² ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ. И послС Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΠΌ своята основна ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠ°. Π’ΠΎΠ²Π° Π²Π΅Ρ‡Π΅ Π΅ ΠΏΠΎ-Π±Π»ΠΈΠ·ΠΎ Π΄ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ, Ρ‚ΠΎΠ²Π° Π΅, ΠΊΠΎΠ΅Ρ‚ΠΎ Π±ΠΈΡ… искал Π΄Π° видя Π² Π±ΡŠΠ΄Π΅Ρ‰Π΅ Π² Grafana.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

Π•Ρ‚ΠΎ Π²Ρ‚ΠΎΡ€ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΠΌ Ρ‚ΠΎΠ²Π° ΠΎΡ‰Π΅ ΠΏΠΎ-просто, Π°ΠΊΠΎ Π²Π΅Ρ‡Π΅ ΠΈΠΌΠ°Ρ…ΠΌΠ΅ Ρ‚Π°Π·ΠΈ функция ru, която Π²ΡΡŠΡ‰Π½ΠΎΡΡ‚ Π²Π΅Ρ‡Π΅ я ΠΈΠΌΠ° Π² VictoriaMetrics. И просто ΠΏΡ€Π΅Π΄Π°Π²Π°Ρ‚Π΅ ΠΊΠ΅ΡˆΠΈΡ€Π°Π½Π°Ρ‚Π° стойност, която стС обявили Π² CTE.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

Π’Π΅Ρ‡Π΅ спомСнах, ΠΊΠΎΠ»ΠΊΠΎ Π΅ Π²Π°ΠΆΠ½ΠΎ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° правилният Π΅Π·ΠΈΠΊ Π·Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅. ВСроятно във всяка компания с Grafana сС случва Π½Π΅Ρ‰ΠΎ своС. И вСроятно Π΄Π°Π²Π°Ρ‚Π΅ Π΄ΠΎΡΡ‚ΡŠΠΏ Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ си Π΄ΠΎ Grafana, ΠΈ Ρ‚Π΅ правят Π½Π΅Ρ‰ΠΎ своС. И всички Ρ‚Π΅ Π³ΠΎ правят ΠΏΠΎ Ρ€Π°Π·Π»ΠΈΡ‡Π΅Π½ Π½Π°Ρ‡ΠΈΠ½. А Π±ΠΈΡ… искал Π΄Π° бъдС ΠΏΠΎ Π΅Π΄ΠΈΠ½ ΠΈ ΡΡŠΡ‰ΠΈ Π½Π°Ρ‡ΠΈΠ½, тоСст Π΄Π° сС свСдС Π΄ΠΎ ΠΎΠ±Ρ‰ стандарт.

Π”Π° ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρ‡Π΅ ΠΈΠΌΠ°Ρ‚Π΅ Π½Π΅ просто систСмни ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ΠΈ, Π° ΠΌΠΎΠΆΠ΅ Π΄ΠΎΡ€ΠΈ СкспСрти, дСвопси ΠΈΠ»ΠΈ SRE. МоТС Π΄Π° ΠΈΠΌΠ°Ρ‚Π΅ СкспСрти, ΠΊΠΎΠΈΡ‚ΠΎ знаят ΠΊΠ°ΠΊΠ²ΠΎ Π΅ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³, знаят ΠΊΠ°ΠΊΠ²ΠΎ Π΅ Grafana, тоСст Ρ‚Π΅ работят с Ρ‚ΠΎΠ²Π° ΠΎΡ‚ Π³ΠΎΠ΄ΠΈΠ½ΠΈ ΠΈ наистина знаят ΠΊΠ°ΠΊ Π΄Π° Π³ΠΎ направят ΠΏΡ€Π°Π²ΠΈΠ»Π½ΠΎ. Π’Π΅ Π²Π΅Ρ‡Π΅ са Π³ΠΎ написали 100 ΠΏΡŠΡ‚ΠΈ ΠΈ са Π³ΠΎ обяснявали Π½Π° всички, Π½ΠΎ ΠΏΠΎ някаква ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π° Π½ΠΈΠΊΠΎΠΉ Π½Π΅ ΡΠ»ΡƒΡˆΠ°.

А ΠΊΠ°ΠΊΠ²ΠΎ, Π°ΠΊΠΎ Ρ‚Π΅Π·ΠΈ знания ΠΌΠΎΠΆΠ΅Ρ…Π° Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€Π°Π½ΠΈ Π΄ΠΈΡ€Π΅ΠΊΡ‚Π½ΠΎ Π² Grafana, Π·Π° Π΄Π° ΠΌΠΎΠ³Π°Ρ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ‚Π΅ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈ Π΄Π° ΠΏΡ€Π΅ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈΡ‚Π΅? И Π°ΠΊΠΎ Ρ‚Ρ€ΡΠ±Π²Π°ΡˆΠ΅ Π΄Π° изчислим ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚Π° свободна ΠΏΠ°ΠΌΠ΅Ρ‚, просто щяха Π΄Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ°Ρ‚ функция. А ΠΊΠ°ΠΊΠ²ΠΎ, Π°ΠΊΠΎ ΡΡŠΠ·Π΄Π°Ρ‚Π΅Π»ΠΈΡ‚Π΅ Π½Π° СкспортСри, Π·Π°Π΅Π΄Π½ΠΎ с ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π° си, прСдоставяха ΠΈ Π½Π°Π±ΠΎΡ€ ΠΎΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΊΠ°ΠΊ Π΄Π° работят с ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈΡ‚Π΅ ΠΈΠΌ, Π·Π°Ρ‰ΠΎΡ‚ΠΎ Ρ‚Π΅ Ρ‚ΠΎΡ‡Π½ΠΎ знаят ΠΊΠ°ΠΊΠ²ΠΈ са Ρ‚Π΅Π·ΠΈ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ ΠΈ ΠΊΠ°ΠΊ Π΄Π° Π³ΠΈ изчисляват ΠΏΡ€Π°Π²ΠΈΠ»Π½ΠΎ?

Π’ΠΎΠ²Π° наистина Π½Π΅ ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°. Π’ΠΎΠ²Π° Π³ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ… сам. Π’ΠΎΠ²Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π² Grafana. Π”Π° ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρ‡Π΅ Ρ…ΠΎΡ€Π°Ρ‚Π°, ΠΊΠΎΠΈΡ‚ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ…Π° NodeExporter, Π½Π°ΠΏΡ€Π°Π²ΠΈΡ…Π° Ρ‚ΠΎΠ²Π°, Π·Π° ΠΊΠΎΠ΅Ρ‚ΠΎ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ…. И ΡΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° прСдоставиха Π½Π°Π±ΠΎΡ€ ΠΎΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

Π’.Π΅. ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° Ρ‚ΠΎΠ²Π° ΠΏΡ€ΠΈΠ±Π»ΠΈΠ·ΠΈΡ‚Π΅Π»Π½ΠΎ Ρ‚Π°ΠΊΠ°. Π’ΠΈΠ΅ ΡΠ²ΡŠΡ€Π·Π²Π°Ρ‚Π΅ Ρ‚Π°Π·ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π² Grafana, Π²Π»ΠΈΠ·Π°Ρ‚Π΅ Π² Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€Π°Π½Π΅ ΠΈ Ρ‚ΡƒΠΊ ΠΌΠ½ΠΎΠ³ΠΎ просто Π² JSON Π΅ написано ΠΊΠ°ΠΊ Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈΡ‚Π΅ с Ρ‚Π°Π·ΠΈ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠ°. Π’.Π΅. някакъв Π½Π°Π±ΠΎΡ€ ΠΎΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, тяхното описаниС ΠΈ Π² ΠΊΠ°ΠΊΠ²ΠΎ сС трансформират.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

Π‘ΠΏΠΎΡ€Π΅Π΄ ΠΌΠ΅Π½ Ρ‚ΠΎΠ²Π° Π±ΠΈ Π±ΠΈΠ»ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ, Π·Π°Ρ‰ΠΎΡ‚ΠΎ Ρ‚ΠΎΠ³Π°Π²Π° Π² Grafana просто Π±ΠΈΡ…Ρ‚Π΅ писали Ρ‚Π°ΠΊΠ°. И Grafana Π²ΠΈ "ΠΊΠ°Π·Π²Π°", Ρ‡Π΅ Π΅ Π½Π°Π»ΠΈΡ‡Π½Π° Ρ‚Π°ΠΊΠ°Π²Π° функция ΠΎΡ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° – Π½Π΅ΠΊΠ° я ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅. Бмятам, Ρ‡Π΅ Ρ‚ΠΎΠ²Π° Π±ΠΈ Π±ΠΈΠ»ΠΎ наистина страхотно.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

Няколко Π΄ΡƒΠΌΠΈ Π·Π° VictoriaMetrics. НиС ΠΏΡ€Π°Π²ΠΈΠΌ ΠΌΠ½ΠΎΠ³ΠΎ интСрСсни Π½Π΅Ρ‰Π°. ΠŸΡ€ΠΎΡ‡Π΅Ρ‚Π΅Ρ‚Π΅ Π½Π°ΡˆΠΈΡ‚Π΅ статии Π·Π° компрСсия, Π·Π° Π½Π°ΡˆΠΈΡ‚Π΅ ΡΡŠΡΡ‚Π΅Π·Π°Π½ΠΈΡ с Π΄Ρ€ΡƒΠ³ΠΈ прилоТСния Π·Π° time series Π΄Π°Π½Π½ΠΈ, Π½Π°ΡˆΠ΅Ρ‚ΠΎ обяснСниС ΠΊΠ°ΠΊ Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈΡ‚Π΅ с PromQL, Π·Π°Ρ‰ΠΎΡ‚ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ Ρ…ΠΎΡ€Π° всС ΠΎΡ‰Π΅ са Π½ΠΎΠ²Π°Ρ†ΠΈ Π² Ρ‚ΠΎΠ²Π°, Π° ΡΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° Π·Π° Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»Π½Π°Ρ‚Π° скалируСмост ΠΈ сблъсъка с Thanos.

Β«ExtendedPromQLΒ» β€” Ρ€Π°Π·ΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° Π ΠΎΠΌΠ°Π½ Π₯Π°Π²Ρ€ΠΎΠ½Π΅Π½ΠΊΠΎ

Π’ΡŠΠΏΡ€ΠΎΡΠΈ:

Π—Π°ΠΏΠΎΡ‡Π²Π°ΠΌ Π²ΡŠΠΏΡ€ΠΎΡΠ° си с Π΅Π΄Π½Π° проста ТитСйска история. ΠšΠΎΠ³Π°Ρ‚ΠΎ Π·Π° ΠΏΡŠΡ€Π²ΠΈ ΠΏΡŠΡ‚ Π·Π°ΠΏΠΎΡ‡Π½Π°Ρ… Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌ Grafana, написах ΠΌΠ½ΠΎΠ³ΠΎ ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅Π»Π΅Π½ Π·Π°ΠΏΠΈΡ‚Π²Π°Π½Π΅ с дълТина 5 Ρ€Π΅Π΄Π°. Π’ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ Π½Π° Ρ‚ΠΎΠ²Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ… ΠΌΠ½ΠΎΠ³ΠΎ ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅Π»Π΅Π½ Π³Ρ€Π°Ρ„ΠΈΠΊ. Π’ΠΎΠ·ΠΈ Π³Ρ€Π°Ρ„ΠΈΠΊ ΠΏΠΎΡ‡Ρ‚ΠΈ бСшС Π³ΠΎΡ‚ΠΎΠ² Π·Π° продукция. Но ΠΏΡ€ΠΈ ΠΏΠΎ-ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π΅Π½ ΠΏΡ€Π΅Π³Π»Π΅Π΄ сС ΠΎΠΊΠ°Π·Π°, Ρ‡Π΅ Ρ‚ΠΎΠ·ΠΈ Π³Ρ€Π°Ρ„ΠΈΠΊ ΠΏΠΎΠΊΠ°Π·Π²Π° Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Π° глупост, която няма Π½ΠΈΡ‰ΠΎ ΠΎΠ±Ρ‰ΠΎ с рСалността, Π²ΡŠΠΏΡ€Π΅ΠΊΠΈ Ρ‡Π΅ Ρ†ΠΈΡ„Ρ€ΠΈΡ‚Π΅ ΠΏΠΎΠΏΠ°Π΄Π°Ρ‚ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°, ΠΊΠΎΠΉΡ‚ΠΎ ΠΎΡ‡Π°ΠΊΠ²Π°Ρ…ΠΌΠ΅ Π΄Π° Π²ΠΈΠ΄ΠΈΠΌ. И моята ΡΡ‚ΡŠΠΏΠΊΠ° Π΅. ИмамС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, ΠΈΠΌΠ°ΠΌΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π° ΠΊΠ°ΠΊ пишСм тСстовС Π·Π° Grafana? Написали стС слоТСн Π·Π°ΠΏΠΈΡ‚, ΠΎΡ‚ ΠΊΠΎΠΉΡ‚ΠΎ зависи бизнСс Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ - Π΄Π° ΠΏΠΎΡ€ΡŠΡ‡Π°Ρ‚Π΅ истински ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ ΠΎΡ‚ ΡΡŠΡ€Π²ΡŠΡ€ΠΈ ΠΈΠ»ΠΈ Π½Π΅. И ΠΊΠ°ΠΊ Π·Π½Π°Π΅ΠΌ, Ρ‡Π΅ Ρ‚Π°Π·ΠΈ функция, която рисува Π³Ρ€Π°Ρ„ΠΈΠΊ, ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° ΠΊΠ°Ρ‚ΠΎ истинска. Благодаря.

Благодаря Π·Π° Π²ΡŠΠΏΡ€ΠΎΡΠ°. Π’ΡƒΠΊ ΠΈΠΌΠ° Π΄Π²Π΅ части. ΠŸΡŠΡ€Π²Π°Ρ‚Π° – ΠΈΠΌΠ°ΠΌ Π²ΠΏΠ΅Ρ‡Π°Ρ‚Π»Π΅Π½ΠΈΠ΅, основаващо сС Π½Π° моя ΠΎΠΏΠΈΡ‚, Ρ‡Π΅ ΠΏΠΎΠ²Π΅Ρ‡Π΅Ρ‚ΠΎ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈ, ΠΊΠΎΠ³Π°Ρ‚ΠΎ Π³Π»Π΅Π΄Π°Ρ‚ Π½Π° Π³Ρ€Π°Ρ„ΠΈΡ†ΠΈΡ‚Π΅ си, Π½Π΅ Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ ΠΊΠ°ΠΊΠ²ΠΎ ΠΈΠΌ ΠΏΠΎΠΊΠ°Π·Π²Π°Ρ‚. По някаква ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π° Ρ…ΠΎΡ€Π°Ρ‚Π° са ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΠΎΠ±Ρ€ΠΈ Π² измислянСто Π½Π° оправдания Π·Π° всяка аномалия, която сС случва Π½Π° Π³Ρ€Π°Ρ„ΠΈΡ†ΠΈΡ‚Π΅, Π΄ΠΎΡ€ΠΈ Π°ΠΊΠΎ Ρ‚ΠΎΠ²Π° Π΅ Π³Ρ€Π΅ΡˆΠΊΠ° Π² самата функция. А Π²Ρ‚ΠΎΡ€Π°Ρ‚Π° част – смятам, Ρ‡Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Ρ‚Π°ΠΊΠΈΠ²Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π±ΠΈ Π±ΠΈΠ»ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎ-Π΄ΠΎΠ±Ρ€ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π½Π° вашия ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ, вмСсто всСки ΠΎΡ‚ Π²Π°ΡˆΠΈΡ‚Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈ Π΄Π° ΠΏΡ€Π°Π²ΠΈ собствСно ΠΏΠ»Π°Π½ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΊΠ°ΠΏΠ°Ρ†ΠΈΡ‚Π΅Ρ‚Π° ΠΈ Π΄Π° Π³Ρ€Π΅ΡˆΠΈ с някаква вСроятност.

Как Π΄Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ?

Как Π΄Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ? МоТС Π±ΠΈ, ΠΏΠΎ никакъв Π½Π°Ρ‡ΠΈΠ½.

Π’ΡŠΠ² Π²ΠΈΠ΄ Π½Π° тСст Π² Grafana.

Какво ΠΎΠ±Ρ‰ΠΎ ΠΈΠΌΠ° Ρ‚ΡƒΠΊ с Grafana? Grafana ΠΏΡ€Π΅Π΄Π°Π²Π° Ρ‚ΠΎΠ·ΠΈ Π·Π°ΠΏΠΈΡ‚ Π΄ΠΈΡ€Π΅ΠΊΡ‚Π½ΠΎ към DataSource.

Добавяйки ΠΌΠ°Π»ΠΊΠΎ Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈΡ‚Π΅.

НС, Π² Grafana Π½Π΅ добавят Π½ΠΈΡ‰ΠΎ. Π’Π°ΠΌ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ GET ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ, ΠΊΠ°Ρ‚ΠΎ Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ step. Π’ΠΎΠΉ Π½Π΅ сС ΡƒΠΊΠ°Π·Π²Π° явно, Π½ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС ΠΏΡ€Π΅Π½Π°Π·Π½Π°Ρ‡Π΅Π½, ΠΈΠ»ΠΈ Π΄Π° Π½Π΅ сС ΠΏΡ€Π΅Π½Π°Π·Π½Π°Ρ‡Π°Π²Π°, Π½ΠΎ сС добавя Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ. Π’ΡƒΠΊ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π½Π°ΠΏΠΈΡˆΠ΅Ρ‚Π΅ тСстовС. Мисля, Ρ‡Π΅ Π½Π΅ Π±ΠΈΠ²Π° Π΄Π° Ρ€Π°Π·Ρ‡ΠΈΡ‚Π°Ρ‚Π΅ Π½Π° Grafana ΠΊΠ°Ρ‚ΠΎ Π½Π° ΠΈΠ·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ Π½Π° истина.

Благодаря Π·Π° Π΄ΠΎΠΊΠ»Π°Π΄Π°! Благодаря Π·Π° компрСсията! Π’ΠΈΠ΅ спомСнахтС Π·Π° ΠΌΠ°ΠΏΠΈΠ½Π³Π° Π½Π° ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π° Π² Π³Ρ€Π°Ρ„ΠΈΠΊΠ°Ρ‚Π°, Ρ‡Π΅ Π² Grafana Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π° Π² ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π°. Π Π°Π·Π±ΠΈΡ€Π°Ρ‚Π΅ Π»ΠΈ Π·Π° ΠΊΠ°ΠΊΠ²ΠΎ говоря?

Π”Π°.

ΠŸΡŠΡ€Π²ΠΎΠ½Π°Ρ‡Π°Π»Π½ΠΎ Ρ‚ΠΎΠ²Π° бСшС Π³Π»Π°Π²ΠΎΠ±ΠΎΠ»ΠΈΠ΅, ΠΊΠΎΠ³Π°Ρ‚ΠΎ исках Π΄Π° направя Π°Π»Π°Ρ€ΠΌΠ° Π² Grafana. И Ρ‚Π°ΠΌ трябва Π΄Π° сС ΠΏΡ€Π°Π²ΠΈ Π°Π»Π°Ρ€ΠΌΠ° Π·Π° всСки хост ΠΏΠΎΠΎΡ‚Π΄Π΅Π»Π½ΠΎ. Π’Π°Π·ΠΈ функция, която Π½Π°ΠΏΡ€Π°Π²ΠΈΡ…Ρ‚Π΅, Ρ€Π°Π±ΠΎΡ‚ΠΈ Π»ΠΈ Π·Π° Π°Π»Π°Ρ€ΠΌΠΈΡ‚Π΅ Π² Grafana?

Ако Grafana Π½Π΅ сС отнася към ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈΡ‚Π΅ ΠΏΠΎ Ρ€Π°Π·Π»ΠΈΡ‡Π΅Π½ Π½Π°Ρ‡ΠΈΠ½, Ρ‚ΠΎ Π΄Π°, тя Ρ‰Π΅ Ρ€Π°Π±ΠΎΡ‚ΠΈ. Но моят ΡΡŠΠ²Π΅Ρ‚ Π΅ Π΄Π° Π½Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ Π°Π»Π°Ρ€ΠΌΠΈ Π² Grafana ΠΈΠ·ΠΎΠ±Ρ‰ΠΎ, ΠΏΠΎ-Π΄ΠΎΠ±Ρ€Π΅ Π΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ alertmanager.

Π”Π°, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌ Π³ΠΎ, Π½ΠΎ просто Π² Grafana изглСТдашС ΠΏΠΎ-лСсно Π·Π° настройка, Π½ΠΎ благодаря Π·Π° ΡΡŠΠ²Π΅Ρ‚Π°!

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: habr.com

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster