ΠΡΠ΅Π΄Π»Π°Π³Π°Ρ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡΡ Ρ ΡΠ°ΡΡΠΈΡΡΠΎΠ²ΠΊΠΎΠΉ Π΄ΠΎΠΊΠ»Π°Π΄Π° Π ΠΎΠΌΠ°Π½Π° Π₯Π°Π²ΡΠΎΠ½Π΅Π½ΠΊΠΎ "ExtendedPromQL"
ΠΡΠ°ΡΠΊΠΎ ΠΎΠ±ΠΎ ΠΌΠ½Π΅. ΠΠ΅Π½Ρ Π·ΠΎΠ²ΡΡ Π ΠΎΠΌΠ°Π½. Π― ΡΠ°Π±ΠΎΡΠ°Ρ Π² CloudFlare, ΠΆΠΈΠ²Ρ Π² ΠΠΎΠ½Π΄ΠΎΠ½Π΅. ΠΠΎ ΡΠ°ΠΊΠΆΠ΅ Ρ ΠΌΠ΅ΠΉΡΠ΅Π½Π΅Ρ VictoriaMetrics.
Π Ρ Π°Π²ΡΠΎΡ
ΠΡ Π½Π°ΡΠ½Π΅ΠΌ Ρ ΠΏΠ΅ΡΠ²ΠΎΠΉ ΡΠ°ΡΡΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Β«Π‘Π»ΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄Π°Β» ΠΈ Π² Π½Π΅ΠΉ Ρ Π±ΡΠ΄Ρ ΡΠ°ΡΡΠΊΠ°Π·ΡΠ²Π°ΡΡ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ Π»ΡΠ±ΠΎΠΉ ΡΠ·ΡΠΊ ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ ΠΏΡΠΎΡΡΠΎ ΡΠ·ΡΠΊ ΠΎΠ±ΡΠ΅Π½ΠΈΡ β ΡΡΠΎ ΠΎΡΠ΅Π½Ρ Π²Π°ΠΆΠ½ΠΎ. ΠΠΎΡΠΎΠΌΡ ΡΡΠΎ ΡΡΠΎ ΡΠΎ, ΠΊΠ°ΠΊ Π²Ρ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΠ΅ Π΄ΡΡΠ³ΠΎΠΌΡ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΡ ΠΈΠ»ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΡΠ²ΠΎΠΈ ΠΌΡΡΠ»ΠΈ, ΠΊΠ°ΠΊ Π²Ρ ΡΠΎΡΠΌΡΠ»ΠΈΡΡΠ΅ΡΠ΅ Π·Π°ΠΏΡΠΎΡ. ΠΡΠ΄ΠΈ Π² ΠΈΠ½ΡΠ΅ΡΠ½Π΅ΡΠ΅ ΡΠΏΠΎΡΡΡ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊΠΎΠΉ ΡΠ·ΡΠΊ Π»ΡΡΡΠ΅ β java ΠΈΠ»ΠΈ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ Π΄ΡΡΠ³ΠΎΠΉ. ΠΠ»Ρ ΡΠ΅Π±Ρ Ρ ΡΠ΅ΡΠΈΠ», ΡΡΠΎ Π½Π°Π΄ΠΎ Π²ΡΠ±ΠΈΡΠ°ΡΡ ΠΏΠΎΠ΄ Π·Π°Π΄Π°ΡΡ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Π²ΡΠ΅ ΡΡΠΎ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΠΎ.
ΠΠ°ΡΠ½Π΅ΠΌ Ρ ΡΠ°ΠΌΠΎΠ³ΠΎ Π½Π°ΡΠ°Π»Π°. Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ PromQL? PromQL β ΡΡΠΎ Prometheus Query Language. ΠΡΠΎ ΡΠΎ, ΠΊΠ°ΠΊ ΠΌΡ ΡΠΎΡΠΌΠΈΡΡΠ΅ΠΌ Π·Π°ΠΏΡΠΎΡΡ Π² Prometheus, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ time series Π΄Π°Π½Π½ΡΠ΅, Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΡΠ΄Ρ.
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ time series Π΄Π°Π½Π½ΡΠ΅? ΠΡΠ»ΠΈ Π±ΡΠΊΠ²Π°Π»ΡΠ½ΠΎ, ΡΠΎ ΡΡΠΎ ΡΡΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°.
ΠΡΠΎ:
- ΠΠ° ΡΡΠΎ ΠΌΡ ΡΠΌΠΎΡΡΠΈΠΌ.
- ΠΠΎΠ³Π΄Π° ΠΌΡ Π½Π° ΡΡΠΎ ΡΠΌΠΎΡΡΠΈΠΌ.
- Π ΠΊΠ°ΠΊΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ.
ΠΡΠ»ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π½Π° ΡΡΡ Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΡ (ΡΡΠ° Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΠ° Ρ ΠΌΠΎΠ΅Π³ΠΎ ΡΠ΅Π»Π΅ΡΠΎΠ½Π°, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΡ ΠΌΠΎΠΈΡ ΡΠ°Π³ΠΎΠ²), ΡΠΎ Π·Π΄Π΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΡΡΡΠΎ ΠΎΡΠ²Π΅ΡΠΈΡΡ Π½Π° ΡΡΠΈ Π²ΠΎΠΏΡΠΎΡΡ.
ΠΡ ΡΠΌΠΎΡΡΠΈΠΌ Π½Π° ΡΠ°Π³ΠΈ. ΠΡ Π²ΠΈΠ΄ΠΈΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈ Π²ΠΈΠ΄ΠΈΠΌ Π²ΡΠ΅ΠΌΡ, ΠΊΠΎΠ³Π΄Π° ΠΌΡ ΡΠΌΠΎΡΡΠΈΠΌ Π½Π° ΡΡΠΎ. Π’. Π΅. ΡΠΌΠΎΡΡΡ Π½Π° ΡΡΡ Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΡ Π»Π΅Π³ΠΊΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ Π² Π²ΠΎΡΠΊΡΠ΅ΡΠ΅Π½ΡΠ΅ Ρ ΠΏΡΠΎΡΠ΅Π» ΠΎΠΊΠΎΠ»ΠΎ 15 000 ΡΠ°Π³ΠΎΠ². ΠΡΠΎ time series Π΄Π°Π½Π½ΡΠ΅.
Π’Π΅ΠΏΠ΅ΡΡ Π΄Π°Π²Π°ΠΉΡΠ΅ "ΡΠ°Π·ΠΎΠ±ΡΠ΅ΠΌ" (ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅ΠΌ) ΠΈΡ Π² Π΄ΡΡΠ³ΡΡ ΠΌΠΎΠ΄Π΅Π»Ρ Π΄Π°Π½Π½ΡΡ Π² Π²ΠΈΠ΄Π΅ ΡΠ°Π±Π»ΠΈΡΡ. ΠΠ΄Π΅ΡΡ Ρ Π½Π°Ρ ΡΠΎΠΆΠ΅ Π΅ΡΡΡ ΡΠΎ, Π½Π° ΡΡΠΎ ΠΌΡ ΡΠΌΠΎΡΡΠΈΠΌ. Π’ΡΡ Ρ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΠ» Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ Π½Π°Π·ΡΠ²Π°ΡΡ ΠΌΠ΅ΡΠ°-Π΄Π°Π½Π½ΡΠΌΠΈ, Ρ. Π΅. ΡΡΠΎ ΠΏΡΠΎΡΠ΅Π» Π½Π΅ Ρ, Π° Π΄Π²Π° ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠ°, Π΄ΠΎΠΏΡΡΡΠΈΠΌ, Jay ΠΈ Silent Bob. ΠΠΎΡ ΡΡΠΎ ΡΠΎ, Π½Π° ΡΡΠΎ ΠΌΡ ΡΠΌΠΎΡΡΠΈΠΌ; ΡΡΠΎ ΡΡΠΎ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΈ ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΎ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅.
Π’Π΅ΠΏΠ΅ΡΡ Π΄Π°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΠΏΡΡΠ°Π΅ΠΌΡΡ ΡΠΎΡ
ΡΠ°Π½ΠΈΡΡ Π²ΡΠ΅ ΡΡΠΈ Π΄Π°Π½Π½ΡΠ΅ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ
. ΠΠ»Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ° Ρ Π²Π·ΡΠ» ClickHouse ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ. Π Π·Π΄Π΅ΡΡ ΠΌΡ ΡΠΎΠ·Π΄Π°Π΅ΠΌ ΠΎΠ΄Π½Ρ ΡΠ°Π±Π»ΠΈΡΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Β«StepsΒ», Ρ. Π΅. Π½Π° ΡΡΠΎ ΠΌΡ ΡΠΌΠΎΡΡΠΈΠΌ. Π’ΡΡ Π΅ΡΡΡ Π²ΡΠ΅ΠΌΡ, ΠΊΠΎΠ³Π΄Π° ΠΌΡ Π½Π° ΡΡΠΎ ΡΠΌΠΎΡΡΠΈΠΌ; ΡΡΠΎ ΠΎΠ½ΠΎ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΈ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ ΠΌΠ΅ΡΠ°-Π΄Π°Π½Π½ΡΠ΅, Π³Π΄Π΅ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ Ρ
ΡΠ°Π½ΠΈΡΡ, ΠΊΡΠΎ ΡΡΠΎ: Jay ΠΈ Silent Bob.
Π Π΄Π»Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ ΠΏΠΎΠΏΡΡΠ°ΡΡΡΡ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠΎ Π²ΡΠ΅, ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Grafana, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ, Π²ΠΎ-ΠΏΠ΅ΡΠ²ΡΡ , ΡΡΠΎ ΠΊΡΠ°ΡΠΈΠ²ΠΎ.
Π’Π°ΠΊΠΆΠ΅ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΎΡ ΠΏΠ»Π°Π³ΠΈΠ½. ΠΠ° ΡΡΠΎ Π΅ΡΡΡ Π΄Π²Π΅ ΠΏΡΠΈΡΠΈΠ½Ρ. ΠΠ΅ΡΠ²Π°Ρ β ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Ρ Π΅Π³ΠΎ Π½Π°ΠΏΠΈΡΠ°Π». Π Ρ ΡΠΎΡΠ½ΠΎ Π·Π½Π°Ρ, ΠΊΠ°ΠΊ ΡΡΠΆΠ΅Π»ΠΎ Π²ΡΡΠ°ΡΠΊΠΈΠ²Π°ΡΡ time series Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ· ClickHouse, ΡΡΠΎΠ±Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΡ Π² Grafana.
ΠΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ Π² Graph Panel. ΠΡΠΎ ΡΠ°ΠΌΠ°Ρ ΠΏΠΎΠΏΡΠ»ΡΡΠ½Π°Ρ ΠΏΠ°Π½Π΅Π»Ρ Π² Grafana, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΎΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΠΏΠΎΡΡΠΎΠΌΡ Π½Π°ΠΌ Π½Π°Π΄ΠΎ Π²ΡΠ΅Π³ΠΎ Π»ΠΈΡΡ Π΄Π²Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°.
ΠΠ°Π²Π°ΠΉΡΠ΅ Π½Π°ΠΏΠΈΡΠ΅ΠΌ ΡΠ°ΠΌΡΠΉ ΠΏΡΠΎΡΡΠΎΠΉ Π·Π°ΠΏΡΠΎΡ β ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°ΡΡ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΡ ΡΠ°Π³ΠΎΠ² Π² Grafana, Ρ
ΡΠ°Π½Ρ ΡΡΠΈ Π΄Π°Π½Π½ΡΠ΅ Π² ClickHouse, Π² ΡΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅, ΡΡΠΎ ΠΌΡ ΡΠΎΠ·Π΄Π°Π»ΠΈ. Π ΠΌΡ ΠΏΠΈΡΠ΅ΠΌ Π²ΠΎΡ ΡΠ°ΠΊΠΎΠΉ ΠΏΡΠΎΡΡΠΎΠΉ Π·Π°ΠΏΡΠΎΡ. ΠΡ Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ ΠΈΠ· ΡΠ°Π³ΠΎΠ². ΠΡ Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈ Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ Π²ΡΠ΅ΠΌΡ ΡΡΠΈΡ
Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ, Ρ. Π΅. ΡΠ΅ ΠΆΠ΅ ΡΡΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°, ΠΎ ΠΊΠΎΡΠΎΡΡΡ
ΠΌΡ Π³ΠΎΠ²ΠΎΡΠΈΠ»ΠΈ.
Π Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΠΌΡ ΠΏΠΎΠ»ΡΡΠΈΠΌ Π²ΠΎΡ ΡΠ°ΠΊΠΎΠΉ Π³ΡΠ°ΡΠΈΠΊ. ΠΡΠΎ Π·Π½Π°Π΅Ρ, ΠΏΠΎΡΠ΅ΠΌΡ ΠΎΠ½ ΡΠ°ΠΊΠΎΠΉ ΡΡΡΠ°Π½Π½ΡΠΉ?
ΠΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ, Π½Π°Π΄ΠΎ ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ.
Π Π² ΠΈΡΠΎΠ³Π΅ ΠΌΡ ΠΏΠΎΠ»ΡΡΠΈΠΌ ΡΠΆΠ΅ ΠΏΠΎΠ»ΡΡΡΠ΅, Π½ΠΎ Π²ΡΠ΅ Π΅ΡΠ΅ ΡΡΡΠ°Π½Π½ΡΠΉ Π³ΡΠ°ΡΠΈΠΊ. ΠΡΠΎ Π·Π½Π°Π΅Ρ, ΠΏΠΎΡΠ΅ΠΌΡ? ΠΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ, ΡΠ°ΠΌ Π΄Π²Π° ΡΡΠ°ΡΡΠ½ΠΈΠΊΠ°, ΠΈ ΠΌΡ Π² Grafana ΠΎΡΠ΄Π°Π΅ΠΌ Π΄Π²Π° time series, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Π΅ΡΠ»ΠΈ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ Ρ Π΄Π°ΡΠ°-ΠΌΠΎΠ΄Π΅Π»ΡΡ Π΅ΡΠ΅ ΡΠ°Π·, ΡΠΎ ΠΊΠ°ΠΆΠ΄Π°Ρ time series β ΡΡΠΎ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½Π°Ρ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ ΠΈΠΌΠ΅Π½ΠΈ ΠΈ Π²ΡΠ΅Ρ ΠΊΠ»ΡΡ-Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ labels.
ΠΠΎΡΡΠΎΠΌΡ Π½Π°ΠΌ Π½Π°Π΄ΠΎ Π²ΡΠ±ΡΠ°ΡΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠ°. ΠΡ Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ Jay.
Π ΡΠΈΡΡΠ΅ΠΌ Π΅ΡΠ΅ ΡΠ°Π·. Π’Π΅ΠΏΠ΅ΡΡ ΡΠΆΠ΅ Π³ΡΠ°ΡΠΈΠΊ ΠΏΠΎΡ ΠΎΠΆ Π½Π° ΠΏΡΠ°Π²Π΄Ρ. Π’Π΅ΠΏΠ΅ΡΡ ΡΡΠΎ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΡΠΉ Π³ΡΠ°ΡΠΈΠΊ ΠΈ Π²ΡΠ΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Ρ ΠΎΡΠΎΡΠΎ.
Π, Π½Π°Π²Π΅ΡΠ½ΠΎΠ΅, Π²Ρ Π·Π½Π°Π΅ΡΠ΅, ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°ΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠΎ ΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅, Π½ΠΎ Π² Prometheus ΡΠ΅ΡΠ΅Π· PromQL. ΠΡΠΈΠΌΠ΅ΡΠ½ΠΎ Π²ΠΎΡ ΡΠ°ΠΊ Π²ΠΎΡ. ΠΠ΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅. Π Π΅ΡΠ΅ ΡΠ°Π·ΠΎΠ±ΡΠ΅ΠΌ ΡΡΠΎ Π²ΡΠ΅. ΠΡ Π±ΡΠ°Π»ΠΈ Steps. Π ΡΠΈΠ»ΡΡΡΡΠ΅ΠΌ ΠΏΠΎ Jay. ΠΡ Π·Π΄Π΅ΡΡ Π½Π΅ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΠΌ, ΡΡΠΎ Π½Π°ΠΌ Π½Π°Π΄ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈ ΠΌΡ Π½Π΅ Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ Π²ΡΠ΅ΠΌΡ.
Π ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΠΎΠΏΡΠΎΠ±ΡΠ΅ΠΌ ΠΏΠΎΡΡΠΈΡΠ°ΡΡ ΡΠΊΠΎΡΠΎΡΡΡ ΠΏΠ΅ΡΠ΅Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ Jay ΠΈΠ»ΠΈ Silent Bob. Π ClickHouse Π½Π°ΠΌ Π½Π°Π΄ΠΎ Π±ΡΠ΄Π΅Ρ ΡΠ΄Π΅Π»Π°ΡΡ runningDifference, Ρ. Π΅. ΠΏΠΎΡΡΠΈΡΠ°ΡΡ ΡΠ°Π·Π»ΠΈΡΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΠ°ΡΠ°ΠΌΠΈ ΡΠΎΡΠ΅ΠΊ ΠΈ ΡΠ°Π·Π΄Π΅Π»ΠΈΡΡ ΠΈΡ Π½Π° Π²ΡΠ΅ΠΌΡ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠΎΡΠ½ΡΡ ΡΠΊΠΎΡΠΎΡΡΡ. ΠΠ°ΠΏΡΠΎΡ Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ Π²ΠΎΡ ΡΠ°ΠΊ.
Π ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ ΠΎΠ½ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ Π²ΠΎΡ ΡΠ°ΠΊΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, Ρ. Π΅. ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ 1,8 ΡΠ°Π³Π° Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ Π΄Π΅Π»Π°Π΅Ρ Silent Bob ΠΈΠ»ΠΈ Jay.
Π Π² Prometheus Π²Ρ Π·Π½Π°Π΅ΡΠ΅, ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠΎΠΆΠ΅. ΠΠ°ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅, ΡΠ΅ΠΌ Π±ΡΠ»ΠΎ Π΄ΠΎ ΡΡΠΎΠ³ΠΎ.
Π ΡΡΠΎΠ±Ρ ΡΡΠΎ ΠΎΡΡΠ°Π²Π°Π»ΠΎΡΡ ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΎΡΡΠΎ Π΄Π΅Π»Π°ΡΡ Π² Grafana Ρ Π΄ΠΎΠ±Π°Π²ΠΈΠ» Π²ΠΎΡ ΡΠ°ΠΊΡΡ ΠΎΠ±Π΅ΡΡΠΊΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΡ ΠΎΠΆΠ΅ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ Π½Π° PromQL. ΠΠ½Π° Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Rate Macros ΠΈΠ»ΠΈ ΠΊΠ°ΠΊ Ρ ΠΎΡΠΈΡΠ΅ Π΅Π΅ Π½Π°Π·ΡΠ²Π°ΠΉΡΠ΅. Π Grafana Π²Ρ ΠΏΠΈΡΠΈΡΠ΅ ΠΏΡΠΎΡΡΠΎ Β«rateΒ», Π½ΠΎ Π³Π΄Π΅-ΡΠΎ Π² Π³Π»ΡΠ±ΠΈΠ½Π΅ ΠΎΠ½Π° ΡΡΠ°Π½ΡΡΠΎΡΠΌΠΈΡΡΠ΅ΡΡΡ Π²ΠΎΡ Π² ΡΠ°ΠΊΠΎΠΉ Π±ΠΎΠ»ΡΡΠΎΠΉ Π·Π°ΠΏΡΠΎΡ. Π Π²Π°ΠΌ Π½Π΅ Π½Π°Π΄ΠΎ Π΄Π°ΠΆΠ΅ Π½Π° Π½Π΅Π³ΠΎ ΡΠΌΠΎΡΡΠ΅ΡΡ, ΠΎΠ½ Π³Π΄Π΅-ΡΠΎ ΡΠ°ΠΌ Π΅ΡΡΡ, Π½ΠΎ Π²Ρ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΠ΅ ΠΊΡΡΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΏΠΈΡΠ°ΡΡ ΡΠ°ΠΊΠΈΠ΅ ΠΎΠ³ΡΠΎΠΌΠ½ΡΠ΅ SQL-Π·Π°ΠΏΡΠΎΡΡ β ΡΡΠΎ Π²ΡΠ΅Π³Π΄Π° Π·Π°ΡΡΠ°ΡΠ½ΠΎ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π»Π΅Π³ΠΊΠΎ ΠΎΡΠΈΠ±ΠΈΡΡΡΡ ΠΈ ΠΏΠΎΡΠΎΠΌ Π΄ΠΎΠ»Π³ΠΎ Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ, ΡΡΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ.
Π ΡΡΠΎ Π·Π°ΠΏΡΠΎΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅ ΠΏΠΎΠΌΠ΅ΡΡΠΈΠ»ΡΡ Π΄Π°ΠΆΠ΅ Π² ΠΎΠ΄ΠΈΠ½ ΡΠ»Π°ΠΉΠ΄ ΠΈ ΠΌΠ½Π΅ ΠΏΡΠΈΡΠ»ΠΎΡΡ Π΅Π³ΠΎ Π΄Π°ΠΆΠ΅ ΡΠ°Π·Π±ΠΈΡΡ Π½Π° Π΄Π²Π΅ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ. ΠΡΠΎ ΡΠΎΠΆΠ΅ Π·Π°ΠΏΡΠΎΡ Π² ClickHouse, ΠΊΠΎΡΠΎΡΡΠΉ Π΄Π΅Π»Π°Π΅Ρ ΡΠΎΡ ΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅ rate, Π½ΠΎ ΠΏΠΎ ΠΎΠ±Π΅ΠΈΠΌ time series: ΠΈ Silent Bob, ΠΈ ΠΏΠΎ Jay, ΡΡΠΎΠ±Ρ Ρ Π½Π°Ρ Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ Π±ΡΠ»ΠΈ Π΄Π²Π΅ time series. Π ΡΡΠΎ ΡΠΆΠ΅ ΠΎΡΠ΅Π½Ρ ΡΠ»ΠΎΠΆΠ½ΠΎ, Π½Π° ΠΌΠΎΠΉ Π²Π·Π³Π»ΡΠ΄.
Π ΠΏΠΎ Prometheus ΡΡΠΎ Π±ΡΠ΄Π΅Ρ sum (rate). ΠΠ»Ρ ClickHouse Ρ ΡΠ΄Π΅Π»Π°Π» ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ ΠΌΠ°ΠΊΡΠΎΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ RateColumns, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ, ΠΊΠ°ΠΊ Π·Π°ΠΏΡΠΎΡ Π² Prometheus.
ΠΡ ΠΏΠΎΡΠΌΠΎΡΡΠ΅Π»ΠΈ ΠΈ Π²ΡΠΎΠ΄Π΅ Π±Ρ PromQL Π²Π΅ΡΡ ΡΠ°ΠΊΠΎΠΉ ΠΊΠ»Π°ΡΡΠ½ΡΠΉ, Π½ΠΎ Ρ Π½Π΅Π³ΠΎ Π΅ΡΡΡ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ.
ΠΡΠΎ:
- Limited SELECT.
- ΠΠΎΠ³ΡΠ°Π½ΠΈΡΠ½ΡΠ΅ JOIN.
- ΠΠ΅Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ HAVING.
Π Π΅ΡΠ»ΠΈ Π²Ρ ΠΏΡΠΎΡΠ°Π±ΠΎΡΠ°Π»ΠΈ Ρ Π½ΠΈΠΌ Π΄ΠΎΠ»Π³ΠΎ, ΡΠΎ Π²Ρ Π·Π½Π°Π΅ΡΠ΅, ΡΡΠΎ ΠΈΠ½ΠΎΠ³Π΄Π° ΠΎΡΠ΅Π½Ρ ΡΡΠΆΠ΅Π»ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ-ΡΠΎ Π² PromQL, Π° Π² SQL ΠΌΠΎΠΆΠ½ΠΎ Π΄Π΅Π»Π°ΡΡ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π²ΡΠ΅, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Π²ΡΠ΅ ΡΡΠΈ Π²Π°ΡΠΈΠ°Π½ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΡ ΡΠ΅ΠΉΡΠ°Ρ ΠΏΡΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠ»ΠΈ, ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π² SQL. ΠΠΎ Π±ΡΠ»ΠΎ Π±Ρ ΡΠ΄ΠΎΠ±Π½ΠΎ ΡΡΠΈΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ? Π ΡΡΠΎ Π½Π°ΡΠ°Π»ΠΊΠΈΠ²Π°Π΅Ρ ΠΌΠ΅Π½Ρ Π½Π° ΠΌΡΡΠ»Ρ, ΡΡΠΎ Π½Π΅ Π²ΡΠ΅Π³Π΄Π° ΡΠ°ΠΌΡΠΉ ΠΌΠΎΡΠ½ΡΠΉ ΡΠ·ΡΠΊ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ°ΠΌΡΠΌ ΡΠ΄ΠΎΠ±Π½ΡΠΌ.
ΠΠΎΡΡΠΎΠΌΡ ΠΈΠ½ΠΎΠ³Π΄Π° Π½Π°Π΄ΠΎ Π²ΡΠ±ΠΈΡΠ°ΡΡ ΡΠ·ΡΠΊ ΠΏΠΎΠ΄ Π·Π°Π΄Π°ΡΠΈ. ΠΡΠΎ ΠΊΠ°ΠΊ Π±ΠΈΡΠ²Π° ΠΡΡΠΌΠ΅Π½Π° Ρ Π‘ΡΠΏΠ΅ΡΠΌΠ΅Π½ΠΎΠΌ. ΠΠΎΠ½ΡΡΠ½ΠΎ, ΡΡΠΎ Π‘ΡΠΏΠ΅ΡΠΌΠ΅Π½ ΡΠΈΠ»ΡΠ½Π΅Π΅, Π½ΠΎ ΠΡΡΠΌΠ΅Π½ ΡΠΌΠΎΠ³ Π΅Π³ΠΎ ΠΏΠΎΠ±Π΅Π΄ΠΈΡΡ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΎΠ½ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅Π½ ΠΈ ΡΠΎΡΠ½ΠΎ Π·Π½Π°Π», ΡΡΠΎ ΠΎΠ½ Π΄Π΅Π»Π°Π΅Ρ.
Π ΡΠ»Π΅Π΄ΡΡΡΠ°Ρ ΡΠ°ΡΡΡ β ΡΡΠΎ Extending PromQL.
ΠΡΠ΅ ΡΠ°Π· ΠΏΡΠΎ VictoriaMetrics. Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ VictoriaMetrics? ΠΡΠΎ time series Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΠΎΠ½Π° Π² OpenSource, ΠΌΡ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΡΠΈΠΌ Π΅Π΅ single ΠΈ cluster-Π²Π΅ΡΡΠΈΠΈ. ΠΠΎ Π½Π°ΡΠΈΠΌ Π±Π΅Π½ΡΠΌΠ°ΡΠΊΠ°ΠΌ ΠΎΠ½Π° Π±ΡΡΡΡΠ΅Π΅ Π²ΡΠ΅Π³ΠΎ, ΡΡΠΎ Π΅ΡΡΡ Π½Π° ΡΡΠ½ΠΊΠ΅ ΡΠ΅ΠΉΡΠ°Ρ ΠΈ ΠΏΠΎ ΠΊΠΎΠΌΠΏΡΠ΅ΡΡΠΈΠΈ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ, Ρ. Π΅. ΠΆΠΈΠ²ΡΠ΅ Π»ΡΠ΄ΠΈ ΡΠ΅ΠΏΠΎΡΡΡΡ ΠΊΠΎΠΌΠΏΡΠ΅ΡΡΠΈΡ Π³Π΄Π΅-ΡΠΎ Π² 0,4 Π±Π°ΠΉΡ Π½Π° ΡΠΎΡΠΊΡ, ΠΊΠΎΠ³Π΄Π° Ρ Prometheus β ΡΡΠΎ 1,2-1,4.
ΠΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Prometheus. ΠΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌ InfluxDB, Graphite, OpenTSDB.
Π Π½Π°Ρ ΠΌΠΎΠΆΠ½ΠΎ "ΠΏΠΈΡΠ°ΡΡ", Ρ. Π΅. ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΡΡ ΡΡΠ°ΡΡΠ΅ Π΄Π°Π½Π½ΡΠ΅.
Π Π΅ΡΠ΅ ΠΌΡ ΠΈΠ΄Π΅Π°Π»ΡΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅ΠΌ Ρ Prometheus ΠΈ Grafana, Ρ. Π΅. ΠΌΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌ PromQL engine. Π Π² Grafana Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΡΠΎ ΠΏΠΎΠΌΠ΅Π½ΡΡΡ Prometheus endpoint Π½Π° VictoriaMetrics ΠΈ Ρ Π²Π°Ρ Π²ΡΠ΅ Π΄Π°ΡΠ±ΠΎΡΠ΄Ρ Π±ΡΠ΄ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ, ΠΊΠ°ΠΊ ΠΈ ΡΠ°Π±ΠΎΡΠ°Π»ΠΈ.
ΠΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠΈΡΠΊΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ Π΄Π°Π΅Ρ VictoriaMetrics.
ΠΡ Π±ΡΡΡΡΠΎ ΠΏΡΠΎΠΉΠ΄Π΅ΠΌ ΠΏΠΎ ΡΡΠ½ΠΊΡΠΈΡΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΡ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ.
Omit interval param β Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΠΏΡΡΠΊΠ°ΡΡ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π» ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² Π² Grafana. ΠΠΎΠ³Π΄Π° Π²Ρ Π½Π΅ Ρ
ΠΎΡΠΈΡΠ΅ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΡΡΡΠ°Π½Π½ΡΠ΅ Π³ΡΠ°ΡΠΈΠΊΠΈ ΠΏΡΠΈ zoom-in/out Π² ΠΏΠ°Π½Π΅Π»ΠΈ, ΡΠΎ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ $__interval
. ΠΡΠΎ Π²Π½ΡΡΡΠ΅Π½Π½ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π° Grafana ΠΈ ΠΎΠ½Π° ΡΠ°ΠΌΠ° Π²ΡΠ±ΠΈΡΠ°Π΅Ρ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π΄Π°Π½Π½ΡΡ
. Π VictoriaMetrics ΠΌΠΎΠΆΠ΅Ρ ΡΠ°ΠΌΠ° ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ, ΠΊΠ°ΠΊΠΈΠΌ ΡΡΠΎΡ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π΄ΠΎΠ»ΠΎΠΆΠ΅Π½ Π±ΡΡΡ. Π Π²Π°ΠΌ Π½Π΅ Π½Π°Π΄ΠΎ Π°ΠΏΠ΄Π΅ΠΉΡΠΈΡΡ Π²ΡΠ΅ Π²Π°ΡΠΈ Π·Π°ΠΏΡΠΎΡΡ. ΠΡΠ΄Π΅Ρ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅.
ΠΡΠΎΡΠ°Ρ ΡΡΠ½ΠΊΡΠΈΡ β ΡΡΠΎ interval referencing. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΎΡ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π» Π² ΡΠ²ΠΎΠΈΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡΡ . ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΌΠ½ΠΎΠΆΠ°ΡΡ, Π΄Π΅Π»ΠΈΡΡ, ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°ΡΡ, ΡΡΡΠ»Π°ΡΡΡΡ Π½Π° Π½Π΅Π³ΠΎ.
ΠΠ°Π»Π΅Π΅ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²ΠΎ rollup function. Rollup function ΡΡΠ°Π½ΡΡΠΎΡΠΌΠΈΡΡΠ΅Ρ Π»ΡΠ±ΠΎΠΉ Π²Π°Ρ time series Π² ΡΡΠΈ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ time series. ΠΡΠΎ min, max ΠΈ avg. Π― ΡΡΠΈΡΠ°Ρ, ΡΡΠΎ ΡΡΠΎ ΠΎΡΠ΅Π½Ρ ΡΠ΄ΠΎΠ±Π½ΠΎ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΈΠ½ΠΎΠ³Π΄Π° ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΡ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ outliers (Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΈ ) ΠΈ Π½Π΅ΡΠΎΡΠ½ΠΎΡΡΠΈ.
Π Π΅ΡΠ»ΠΈ Π²Ρ ΠΏΡΠΎΡΡΠΎ Π΄Π΅Π»Π°Π΅ΡΠ΅ irate ΠΈΠ»ΠΈ rate, ΡΠΎ Π²Π΅ΡΠΎΡΡΠ½ΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΠΏΡΡΡΠΈΡΡ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ ΡΠ»ΡΡΠ°ΠΈ, ΠΊΠΎΠ³Π΄Π° time series Π²Π΅Π΄Π΅Ρ ΡΠ΅Π±Ρ Π½Π΅ ΡΠ°ΠΊ, ΠΊΠ°ΠΊ Π²Ρ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π»ΠΈ. Π‘ ΡΡΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ ΡΠ²ΠΈΠ΄Π΅ΡΡ, Π΄ΠΎΠΏΡΡΡΠΈΠΌ, ΡΡΠΎ max ΠΎΡΠ΅Π½Ρ ΡΠΈΠ»ΡΠ½ΠΎ ΠΎΡ avg.
ΠΠ°Π»ΡΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ default. Default β ΡΡΠΎ Π·Π½Π°ΡΠΈΡ, ΠΊΠ°ΠΊΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Π² Grafana, Π΅ΡΠ»ΠΈ Ρ Π½Π°Ρ Π½Π΅Ρ time series Π² Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ. ΠΠΎΠ³Π΄Π° ΡΡΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ? ΠΠΎΠΏΡΡΡΠΈΠΌ Π²Ρ ΡΠΊΡΠΏΠΎΡΡΠΈΡΡΠ΅ΡΠ΅ ΠΊΠ°ΠΊΡΡ-ΡΠΎ ΠΌΠ΅ΡΡΠΈΠΊΡ ΠΏΠΎ ΠΎΡΠΈΠ±ΠΊΠ°ΠΌ. Π Ρ Π²Π°Ρ ΡΠ°ΠΊΠΎΠ΅ ΠΊΠ»Π°ΡΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΡΡΠΎ ΠΊΠΎΠ³Π΄Π° Π²Ρ ΡΡΠ°ΡΡΠΎΠ²Π°Π»ΠΈ, ΡΠΎ Ρ Π²Π°Ρ Π½Π΅Ρ ΠΎΡΠΈΠ±ΠΎΠΊ ΠΈ Π΄Π°ΠΆΠ΅ Π½Π΅Ρ ΠΎΡΠΈΠ±ΠΎΠΊ Π² ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΡΠΈ ΡΠ°ΡΠ° ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ Π΄Π΅Π½Ρ. Π Ρ Π²Π°Ρ Π΅ΡΡΡ Π΄Π°ΡΠ±ΠΎΡΠ΄Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ Ρ success ΠΊ error. Π ΠΎΠ½ΠΈ Π±ΡΠ΄ΡΡ Π²Π°ΠΌ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ Π½ΠΈΡΠ΅Π³ΠΎ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Ρ Π²Π°Ρ Π½Π΅Ρ ΠΌΠ΅ΡΡΠΈΠΊΠΈ error. Π Π² default Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠ°Π·Π°ΡΡ ΡΡΠΎ ΡΠ³ΠΎΠ΄Π½ΠΎ.
Keep_last_Value β ΡΠΎΡ ΡΠ°Π½ΡΠ΅Ρ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΌΠ΅ΡΡΠΈΠΊΠΈ, Π΅ΡΠ»ΠΈ ΠΎΠ½Π° ΠΏΡΠΎΠΏΠ°Π»Π°. ΠΡΠ»ΠΈ Prometheus ΠΏΠΎΡΠ»Π΅ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ ΡΠΊΡΠ΅ΠΉΠΏΠ° Π½Π΅ Π½Π°ΡΠ΅Π» Π΅Π΅ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠΈ 5 ΠΌΠΈΠ½ΡΡ, ΡΠΎ Π·Π΄Π΅ΡΡ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡΡ Π΅Π΅ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈ Π²Π°ΡΠΈ Π³ΡΠ°ΡΠΈΠΊΠΈ ΡΠ½ΠΎΠ²Π° Π½Π΅ ΡΠ»ΠΎΠΌΠ°ΡΡΡΡ.
Scrape_interval β ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΠΊΠ°ΠΊ ΡΠ°ΡΡΠΎ Prometheus ΡΠΎΠ±ΠΈΡΠ°Π΅Ρ Π΄Π°Π½Π½ΡΠ΅ ΠΏΠΎ Π²Π°ΡΠ΅ ΠΌΠ΅ΡΡΠΈΠΊΠ΅, Ρ ΠΊΠ°ΠΊΠΎΠΉ ΡΠ°ΡΡΠΎΡΠΎΠΉ. ΠΠ΄Π΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΠΏΡΠΎΠΏΡΡΠΊ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ.
Label replace β ΠΏΠΎΠΏΡΠ»ΡΡΠ½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ. ΠΠΎ ΠΌΡ ΡΡΠΈΡΠ°Π΅ΠΌ, ΡΡΠΎ ΠΎΠ½Π° Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ»ΠΎΠΆΠ½Π°Ρ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΎΠ½Π° ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΡΠ΅Π»ΡΡ
Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ². Π Π²Π°ΠΌ Π½Π°Π΄ΠΎ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠΌΠ½ΠΈΡΡ 5 Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ², Π½ΠΎ Π΅ΡΠ΅ ΠΈ ΠΏΠΎΠΌΠ½ΠΈΡΡ ΠΈΡ
ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ.
ΠΠΎΡΡΠΎΠΌΡ, ΠΏΠΎΡΠ΅ΠΌΡ Π±Ρ Π½Π΅ ΡΠ΄Π΅Π»Π°ΡΡ ΠΈΡ
ΠΏΠΎΠΏΡΠΎΡΠ΅? Π’. Π΅. ΡΠ°Π·Π±ΠΈΡΡ Π½Π° ΠΌΠ΅Π»ΠΊΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Ρ ΠΏΠΎΠ½ΡΡΠ½ΡΠΌ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠΎΠΌ.
Π ΡΠ΅ΠΏΠ΅ΡΡ ΡΠ°ΠΌΠΎΠ΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎΠ΅. ΠΠΎΡΠ΅ΠΌΡ ΠΌΡ ΡΡΠΈΡΠ°Π΅ΠΌ, ΡΡΠΎ ΡΡΠΎ extended PromQL? ΠΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΌΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌ Common Table Expressions. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΏΠΎ QR-ΠΊΠΎΠ΄Ρ (
Π ΡΡΠΎ ΠΆΠ΅ ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅? ΠΠΎΡ ΡΡΠΎΡ Π·Π°ΠΏΡΠΎΡ ΡΠ²Π΅ΡΡ Ρ β ΡΡΠΎ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠΉ Π·Π°ΠΏΡΠΎΡ. Π― Π΄ΡΠΌΠ°Ρ, Π² Π»ΡΠ±ΠΎΠΌ Π΄Π°ΡΠ±ΠΎΡΠ΄Π΅ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΠΎΠ΄ΠΈΠ½ ΠΈ ΡΠΎΡ ΠΆΠ΅ ΡΠΈΠ»ΡΡΡ Π΄Π»Ρ Π²ΡΠ΅Π³ΠΎ. ΠΠ±ΡΡΠ½ΠΎ ΡΠ°ΠΊ. ΠΠΎ ΠΊΠΎΠ³Π΄Π° Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ Π½ΠΎΠ²ΡΠΉ ΡΠΈΠ»ΡΡΡ, ΡΠΎ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡΡ ΠΊΠ°ΠΆΠ΄ΡΡ ΠΏΠ°Π½Π΅Π»Ρ, Π»ΠΈΠ±ΠΎ ΡΠΊΠ°ΡΠΈΠ²Π°ΡΡ Π΄Π°ΡΠ±ΠΎΡΠ΄, ΠΎΡΠΊΡΡΠ²Π°ΡΡ Π² JSON, Π΄Π΅Π»Π°ΡΡ find replace, ΡΡΠΎ ΡΠΎΠΆΠ΅ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ Π²ΡΠ΅ΠΌΡ. ΠΠΎΡΠ΅ΠΌΡ Π±Ρ Π½Π΅ ΡΠΎΡ ΡΠ°Π½ΡΡΡ ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΈ ΠΏΠ΅ΡΠ΅ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ? ΠΡΠΎ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ, Π½Π° ΠΌΠΎΠΉ Π²Π·Π³Π»ΡΠ΄, Π½Π° ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ ΠΈ ΠΏΠΎΠ½ΡΡΠ½Π΅ΠΉ.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠΎΠ³Π΄Π° ΠΌΠ½Π΅ Π½Π°Π΄ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡΡ ΡΠΈΠ»ΡΡΡΡ Π² Grafana Π²ΠΎ Π²ΡΠ΅Ρ Π·Π°ΠΏΡΠΎΡΠ°Ρ , Π° Π΄Π°ΡΠ±ΠΎΡΠ΄ ΠΏΡΠΈ ΡΡΠΎΠΌ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΠ³ΡΠΎΠΌΠ½ΡΠΉ ΠΈΠ»ΠΈ ΠΈΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π΄Π°ΠΆΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ. Π ΠΊΠ°ΠΊ Π±Ρ Ρ Ρ ΠΎΡΠ΅Π» ΡΠ΅ΡΠ°ΡΡ ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π² Grafana?
Π― ΡΠ΅ΡΠ°Ρ ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΡΠ°ΠΊ: Ρ Π΄Π΅Π»Π°Ρ commonFilter ΠΈ Π² Π½Π΅ΠΌ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡ ΡΡΠΎΡ ΡΠΈΠ»ΡΡΡ, Π° ΠΏΠΎΡΠΎΠΌ Π΅Π³ΠΎ ΠΏΠ΅ΡΠ΅ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π² Π·Π°ΠΏΡΠΎΡΠ°Ρ . ΠΠΎ Π΅ΡΠ»ΠΈ Π²Ρ ΡΠ΄Π΅Π»Π°Π΅ΡΠ΅ ΡΠ΅ΠΉΡΠ°Ρ ΡΠ°ΠΊ ΠΆΠ΅, ΡΡΠΎ Π½Π΅ Π±ΡΠ΄Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Grafana Π½Π΅ ΡΠ°Π·ΡΠ΅ΡΠ°Π΅Ρ Π²Π°ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Π²Π½ΡΡΡΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ². Π ΡΡΠΎ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΡΡΡΠ°Π½Π½ΠΎ.
Π ΠΏΠΎΡΡΠΎΠΌΡ Ρ ΡΠ΄Π΅Π»Π°Π» ΡΠ°ΠΊΠΎΠΉ Π²Π°ΡΠΈΠ°Π½Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°Π·ΡΠ΅ΡΠ°Π΅Ρ ΡΡΠΎ Π΄Π΅Π»Π°ΡΡ. Π Π΅ΡΠ»ΠΈ Π²Π°ΠΌ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ ΠΈΠ»ΠΈ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ ΡΠ°ΠΊΡΡ ΡΠΈΡΡ, ΡΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΡΠ΅ ΠΈΠ»ΠΈ Π΄ΠΈΠ·Π»Π°ΠΉΠΊΠ½ΠΈΡΠ΅, Π΅ΡΠ»ΠΈ Π²Π°ΠΌ Π½Π΅ Π½ΡΠ°Π²ΠΈΡΡΡ ΡΠ°ΠΊΠ°Ρ ΠΈΠ΄Π΅Ρ.
ΠΠ°Π»ΡΡΠ΅ ΠΏΡΠΎ PromQL extended. ΠΠ΄Π΅ΡΡ ΠΌΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ, Π½ΠΎ ΠΏΡΡΠΌΠΎ ΡΠ΅Π»ΡΡ ΡΡΠ½ΠΊΡΠΈΡ. Π Π½Π°Π·ΡΠ²Π°Π΅ΠΌ Π΅Π΅ ru (resource usage). Π ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΡΡΠ° ΡΡΠ½ΠΊΡΠΈΡ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΡΠ΅ ΡΠ΅ΡΡΡΡΡ, ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠ΅ΡΡΡΡΡ ΠΈ ΡΠΈΠ»ΡΡΡ. ΠΡΠΎΠ΄Π΅ Π±Ρ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π²Π΅ΡΡ ΠΏΡΠΎΡΡΠΎΠΉ. Π ΠΎΡΠ΅Π½Ρ Π»Π΅Π³ΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ ΠΈ ΠΏΠΎΡΡΠΈΡΠ°ΡΡ ΠΏΡΠΎΡΠ΅Π½Ρ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ Ρ Π½Π°Ρ. Π’. Π΅. ΡΠΊΠΎΠ»ΡΠΊΠΎ Ρ Π½Π°Ρ Π΅ΡΡΡ ΠΏΠ°ΠΌΡΡΠΈ, ΠΊΠ°ΠΊΠΎΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ ΠΈ ΠΊΠ°ΠΊ ΡΠΈΠ»ΡΡΡΠΎΠ²Π°ΡΡ. ΠΡΠΎ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ΄ΠΎΠ±Π½Π΅Π΅, Π΅ΡΠ»ΠΈ Π±Ρ Π²Ρ ΠΏΠΈΡΠ°Π»ΠΈ ΡΡΠΎ Π²ΡΠ΅, ΠΏΠ΅ΡΠ΅ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΎΠ΄Π½ΠΈ ΠΈ ΡΠ΅ ΠΆΠ΅ ΡΠΈΠ»ΡΡΡΡ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΡΡΠΎ Π±Ρ ΠΏΡΠ΅Π²ΡΠ°ΡΠΈΠ»ΠΎΡΡ Π² Π±ΠΎΠ»ΡΡΠΎΠΉ-Π±ΠΎΠ»ΡΡΠΎΠΉ Π·Π°ΠΏΡΠΎΡ.
Π Π²ΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ ΡΠ°ΠΊΠΎΠ³ΠΎ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ-Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ°. ΠΠ½ ΠΈΠ· ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Π΄Π°ΡΠ±ΠΎΡΠ΄Π° NodeExporter Π΄Π»Ρ Grafana. ΠΠΎ Ρ ΡΠ»Π°Π±ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ, ΡΡΠΎ Π·Π΄Π΅ΡΡ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ. Π’. Π΅., ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ, Π΅ΡΠ»ΠΈ ΠΏΡΠΈΡΠΌΠΎΡΡΠ΅ΡΡΡΡ, Π½ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠΊΠΎΠ±ΠΎΠΊ ΠΌΠΎΠΆΠ΅Ρ ΡΡΠ°Π·Ρ ΠΏΠΎΠ½ΠΈΠ·ΠΈΡΡ ΠΌΠΎΡΠΈΠ²Π°ΡΠΈΡ ΡΠ°Π·Π±ΠΈΡΠ°ΡΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ Π·Π΄Π΅ΡΡ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ. Π ΠΏΠΎΡΠ΅ΠΌΡ Π±Ρ Π½Π΅ ΡΠ΄Π΅Π»Π°ΡΡ Π΅Π³ΠΎ ΠΏΡΠΎΡΠ΅ ΠΈ ΠΏΠΎΠ½ΡΡΠ½Π΅ΠΉ?
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΠΎΡ ΡΠ°ΠΊ, Π²ΡΠ΄Π΅Π»ΠΈΠ² Π·Π½Π°ΡΠΈΠΌΡΠ΅ Π²Π΅ΡΠΈ ΠΈΠ»ΠΈ ΡΠ°ΡΡΠΈ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅. Π ΠΏΠΎΡΠΎΠΌ ΠΏΡΠΎΠΈΠ·Π²Π΅ΡΡΠΈ ΡΠ²ΠΎΡ Π±Π°Π·ΠΎΠ²ΡΡ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΠΊΡ. ΠΡΠΎ ΡΠΆΠ΅ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΡ ΠΎΠΆΠ΅ Π½Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅, ΡΡΠΎ ΡΠΎ, ΡΡΠΎ Ρ Π±Ρ ΠΈ Ρ ΠΎΡΠ΅Π» Π²ΠΈΠ΄Π΅ΡΡ Π² Π±ΡΠ΄ΡΡΠ΅ΠΌ Π² Grafana.
ΠΠΎΡ Π²ΡΠΎΡΠΎΠΉ ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠ°ΠΊ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ Π΅ΡΠ΅ ΠΏΡΠΎΡΠ΅, Π΅ΡΠ»ΠΈ Π±Ρ Ρ Π½Π°Ρ ΡΠΆΠ΅ Π±ΡΠ»Π° ΡΡΠ° ΡΡΠ½ΠΊΡΠΈΡ ru, Π° ΠΎΠ½Π° ΡΠΆΠ΅ Π΅ΡΡΡ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ Π² VictoriaMetrics. Π Π²Ρ ΡΠΎΠ³Π΄Π° ΠΏΡΠΎΡΡΠΎ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΠ΅ Π·Π°ΠΊΡΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²Ρ ΠΎΠ±ΡΡΠ²ΠΈΠ»ΠΈ Π² CTE.
Π― ΡΠΆΠ΅ Π³ΠΎΠ²ΠΎΡΠΈΠ», ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ Π²Π°ΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½ΡΠΆΠ½ΡΠΉ ΡΠ·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ. Π, Π½Π°Π²Π΅ΡΠ½ΠΎΠ΅, Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Π² Grafana ΡΠ²ΠΎΡΠΈΡΡΡ ΡΡΠΎ-Π½ΠΈΠ±ΡΠ΄Ρ ΡΠ²ΠΎΠ΅. Π, Π½Π°Π²Π΅ΡΠ½ΠΎΠ΅, Π²Ρ Π΅ΡΠ΅ Π΄Π°Π΅ΡΠ΅ Π΄ΠΎΡΡΡΠΏ ΠΊ Grafana ΡΠ²ΠΎΠΈΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ, ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Π΄Π΅Π»Π°ΡΡ ΡΡΠΎ-ΡΠΎ ΡΠ²ΠΎΠ΅. Π Π²ΡΠ΅ ΠΎΠ½ΠΈ Π΄Π΅Π»Π°ΡΡ ΡΡΠΎ ΠΊΠ°ΠΊ-ΡΠΎ ΠΏΠΎ-ΡΠ°Π·Π½ΠΎΠΌΡ. Π Ρ ΠΎΡΠ΅Π»ΠΎΡΡ, ΡΡΠΎΠ±Ρ ΠΊΠ°ΠΊ-ΡΠΎ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎ, Ρ. Π΅. ΡΠ²Π΅ΡΡΠΈ ΠΊ ΠΎΠ±ΡΠ΅ΠΌΡ ΡΡΠ°Π½Π΄Π°ΡΡΡ.
ΠΠΎΠΏΡΡΡΠΈΠΌ, Ρ Π²Π°Ρ Π΅ΡΡΡ Π΄Π°ΠΆΠ΅ Π½Π΅ ΠΏΡΠΎΡΡΠΎ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΡ, ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Ρ Π²Π°Ρ Π΄Π°ΠΆΠ΅ Π΅ΡΡΡ ΡΠΊΡΠΏΠ΅ΡΡΡ, Π΄Π΅Π²ΠΎΠΏΡΡ ΠΈΠ»ΠΈ SRE. ΠΠΎΠΆΠ΅Ρ Ρ Π²Π°Ρ Π΅ΡΡΡ ΡΠΊΡΠΏΠ΅ΡΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π·Π½Π°ΡΡ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³, Π·Π½Π°ΡΡ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Grafana, Ρ. Π΅. ΠΎΠ½ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΡΡΠΈΠΌ Π³ΠΎΠ΄Π°ΠΌΠΈ ΠΈ ΠΎΠ½ΠΈ ΡΠΎΡΠ½ΠΎ Π·Π½Π°ΡΡ, ΠΊΠ°ΠΊ Π΄Π΅Π»Π°ΡΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ. Π ΠΎΠ½ΠΈ ΡΠΆΠ΅ ΠΏΠΈΡΠ°Π»ΠΈ ΡΡΠΎ 100 ΡΠ°Π· ΠΈ Π²ΡΠ΅ΠΌ ΠΎΠ±ΡΡΡΠ½ΡΠ»ΠΈ, Π½ΠΎ ΠΏΠΎΡΠ΅ΠΌΡ-ΡΠΎ Π½ΠΈΠΊΡΠΎ Π½Π΅ ΡΠ»ΡΡΠ°Π΅Ρ.
Π ΡΡΠΎ, Π΅ΡΠ»ΠΈ Π±Ρ ΠΎΠ½ΠΈ ΡΠΌΠΎΠ³Π»ΠΈ ΡΡΠΈ Π·Π½Π°Π½ΠΈΡ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΡ Π² Grafana, ΡΡΠΎΠ±Ρ Π΄ΡΡΠ³ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΠΌΠΎΠ³Π»ΠΈ ΠΏΠ΅ΡΠ΅ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ? Π Π΅ΡΠ»ΠΈ Π±Ρ Π½Π°Π΄ΠΎ Π±ΡΠ»ΠΎ Π±Ρ ΠΏΠΎΡΡΠΈΡΠ°ΡΡ ΠΏΡΠΎΡΠ΅Π½Ρ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ, ΡΠΎ ΠΎΠ½ΠΈ Π±Ρ ΠΏΡΠΎΡΡΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠ»ΠΈ ΡΡΠ½ΠΊΡΠΈΡ. Π ΡΡΠΎ, Π΅ΡΠ»ΠΈ ΡΠΎΠ·Π΄Π°ΡΠ΅Π»ΠΈ ΡΠΊΡΠΏΠΎΡΡΠ΅ΡΠΎΠ², Π²ΠΌΠ΅ΡΡΠ΅ ΡΠΎ ΡΠ²ΠΎΠΈΠΌ ΠΏΡΠΎΠ΄ΡΠΊΡΠΎΠΌ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ»ΠΈ ΡΠ°ΠΊΠΆΠ΅ ΠΈ Π½Π°Π±ΠΎΡ ΡΡΠ½ΠΊΡΠΈΠΉ, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΠΈΡ ΠΌΠ΅ΡΡΠΈΠΊΠ°ΠΌΠΈ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΎΠ½ΠΈ ΡΠΎΡΠ½ΠΎ Π·Π½Π°ΡΡ, ΡΡΠΎ ΡΡΠΎ Π·Π° ΠΌΠ΅ΡΡΠΈΠΊΠΈ ΠΈ ΠΊΠ°ΠΊ ΠΈΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΡΡΠΈΡΠ°ΡΡ?
ΠΠΎΡ ΡΡΠΎΠ³ΠΎ Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ Π½Π΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ. ΠΠΎΡ ΡΡΠΎ Ρ ΡΠ΄Π΅Π»Π°Π» ΡΠ°ΠΌ. ΠΡΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ Π² Grafana. ΠΠΎΠΏΡΡΡΠΈΠΌ, ΡΠ΅Π±ΡΡΠ°, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ΄Π΅Π»Π°Π»ΠΈ NodeExporter, ΡΠ΄Π΅Π»Π°Π»ΠΈ ΡΠΎ, ΠΎ ΡΠ΅ΠΌ Ρ ΡΠ°ΡΡΠΊΠ°Π·Π°Π». Π ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΠ»ΠΈ ΡΠ°ΠΊΠΆΠ΅ Π½Π°Π±ΠΎΡ ΡΡΠ½ΠΊΡΠΈΠΉ.
Π’. Π΅. Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΡΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ°ΠΊ. ΠΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅ΡΠ΅ ΡΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ Π² Grafana, Π²Ρ Π·Π°Ρ ΠΎΠ΄ΠΈΡΠ΅ Π² ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΡΡΡ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠΎ Π² JSON Π½Π°ΠΏΠΈΡΠ°Π½ΠΎ, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΡΡΠΎΠΉ ΠΌΠ΅ΡΡΠΈΠΊΠΎΠΉ. Π’. Π΅. ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ Π½Π°Π±ΠΎΡ ΡΡΠ½ΠΊΡΠΈΠΉ, ΠΈΡ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΈ Π²ΠΎ ΡΡΠΎ ΠΎΠ½ΠΈ ΡΠ°Π·Π²ΠΎΡΠ°ΡΠΈΠ²Π°ΡΡΡΡ.
ΠΠΎ-ΠΌΠΎΠ΅ΠΌΡ, ΡΡΠΎ ΠΌΠΎΠ³Π»ΠΎ Π±Ρ Π±ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΌ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΡΠΎΠ³Π΄Π° Π² Grafana Π²Ρ Π±Ρ ΠΏΠΈΡΠ°Π»ΠΈ ΠΏΡΠΎΡΡΠΎ ΡΠ°ΠΊ. Π Π²Π°ΠΌ Grafana "Π³ΠΎΠ²ΠΎΡΠΈΡ", ΡΡΠΎ Π΅ΡΡΡ Π²ΠΎΡ ΡΠ°ΠΊΠ°Ρ-ΡΠΎ ΡΡΠ½ΠΊΡΠΈΡ Ρ ΡΠ°ΠΊΠΎΠΉ-ΡΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ β Π΄Π°Π²Π°ΠΉΡΠ΅ Π΅Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ. ΠΠ½Π΅ ΠΊΠ°ΠΆΠ΅ΡΡΡ, ΡΡΠΎ ΡΡΠΎ Π±ΡΠ»ΠΎ Π±Ρ ΠΎΡΠ΅Π½Ρ Π·Π΄ΠΎΡΠΎΠ²ΠΎ.
ΠΠ΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎ VictoriaMetrics. ΠΡ Π΄Π΅Π»Π°Π΅ΠΌ ΠΎΡΠ΅Π½Ρ ΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΡ Π²Π΅ΡΠ΅ΠΉ. ΠΠΎΡΠΈΡΠ°ΠΉΡΠ΅ Π½Π°ΡΠΈ ΡΡΠ°ΡΡΠΈ ΠΏΡΠΎ compression, ΠΏΡΠΎ Π½Π°ΡΠΈ ΡΠΎΡΠ΅Π²Π½ΠΎΠ²Π°Π½ΠΈΡ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ time series ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ Π΄Π°Π½Π½ΡΡ , Π½Π°ΡΠ΅ ΠΏΠΎΡΡΠ½Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ PromQL, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Π² ΡΡΠΎΠΌ ΠΌΠ½ΠΎΠ³ΠΎ Π΅ΡΠ΅ Π½ΠΎΠ²ΠΈΡΠΊΠΎΠ², Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΎ vertical scalability ΠΈ ΠΏΡΠΎ ΠΏΡΠΎΡΠΈΠ²ΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Ρ Thanos.
ΠΠΎΠΏΡΠΎΡΡ:
Π― Π½Π°ΡΠ½Ρ ΡΠ²ΠΎΠΉ Π²ΠΎΠΏΡΠΎΡ Ρ ΠΏΡΠΎΡΡΠΎΠΉ ΠΆΠΈΠ·Π½Π΅Π½Π½ΠΎΠΉ ΠΈΡΡΠΎΡΠΈΠΈ. ΠΠΎΠ³Π΄Π° Ρ Π²ΠΏΠ΅ΡΠ²ΡΠ΅ Π½Π°ΡΠ°Π» ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Grafana, Ρ Π½Π°ΠΏΠΈΡΠ°Π» ΠΎΡΠ΅Π½Ρ ΡΠ±Π΅Π΄ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ Π·Π°ΠΏΡΠΎΡ Π΄Π»ΠΈΠ½ΠΎΠΉ Π² 5 ΡΡΡΠΎΠΊ. Π ΠΈΡΠΎΠ³Π΅ ΠΏΠΎΠ»ΡΡΠΈΠ»ΡΡ ΠΎΡΠ΅Π½Ρ ΡΠ±Π΅Π΄ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ Π³ΡΠ°ΡΠΈΠΊ. ΠΡΠΎΡ Π³ΡΠ°ΡΠΈΠΊ ΠΏΠΎΡΡΠΈ ΡΠ΅Ρ Π°Π» Π² production. ΠΠΎ ΠΏΡΠΈ Π±Π»ΠΈΠΆΠ°ΠΉΡΠ΅ΠΌ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½ΠΈΠΈ ΠΎΠΊΠ°Π·Π°Π»ΠΎΡΡ, ΡΡΠΎ ΡΡΠΎΡ Π³ΡΠ°ΡΠΈΠΊ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π°Π±ΡΠΎΠ»ΡΡΠ½ΡΡ Π°Ρ ΠΈΠ½Π΅Ρ, Π½Π΅ ΠΈΠΌΠ΅ΡΡΡΡ Π½ΠΈΠΊΠ°ΠΊΠΎΠ³ΠΎ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ ΠΊ ΡΠ΅Π°Π»ΡΠ½ΠΎΡΡΠΈ, Ρ ΠΎΡΡ ΡΠΈΡΡΡ ΠΏΠΎΠΏΠ°Π΄Π°ΡΡ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΡ ΠΎΠΆΠΈΠ΄Π°Π»ΠΈ ΡΠ²ΠΈΠ΄Π΅ΡΡ. Π ΠΌΠΎΠΉ Π²ΠΎΠΏΡΠΎΡ. Π£ Π½Π°Ρ Π΅ΡΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, Ρ Π½Π°Ρ Π΅ΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ, Π° ΠΊΠ°ΠΊ ΠΌΡ ΠΏΠΈΡΠ΅ΠΌ ΡΠ΅ΡΡΡ Π΄Π»Ρ Grafana? ΠΡ Π½Π°ΠΏΠΈΡΠ°Π»ΠΈ ΡΠ»ΠΎΠΆΠ½ΡΠΉ Π·Π°ΠΏΡΠΎΡ, ΠΎΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π·Π°Π²ΠΈΡΠΈΡ Π±ΠΈΠ·Π½Π΅Ρ-ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ β Π·Π°ΠΊΠ°Π·Π°ΡΡ Π½Π°ΡΡΠΎΡΡΠΈΠΉ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ² ΠΈΠ»ΠΈ Π½Π΅ Π·Π°ΠΊΠ°Π·ΡΠ²Π°ΡΡ. Π ΠΊΠ°ΠΊ ΠΌΡ Π·Π½Π°Π΅ΠΌ, ΡΡΠ° ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠΈΡΡΠ΅Ρ Π³ΡΠ°ΡΠΈΠΊ ΠΏΠΎΡ ΠΎΠΆΠ° Π½Π° ΠΏΡΠ°Π²Π΄Ρ. Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ.
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ Π·Π° Π²ΠΎΠΏΡΠΎΡ. Π’ΡΡ Π΄Π²Π΅ ΡΠ°ΡΡΠΈ. ΠΠ΅ΡΠ²Π°Ρ β Ρ ΠΌΠ΅Π½Ρ ΡΠΊΠ»Π°Π΄ΡΠ²Π°Π΅ΡΡΡ Π²ΠΏΠ΅ΡΠ°ΡΠ»Π΅Π½ΠΈΠ΅, ΠΈΡΡ ΠΎΠ΄Ρ ΠΈΠ· ΠΌΠΎΠ΅ΠΉ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ, ΡΡΠΎ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, ΠΊΠΎΠ³Π΄Π° ΡΠΌΠΎΡΡΡΡ Π½Π° ΡΠ²ΠΎΠΈ Π³ΡΠ°ΡΠΈΠΊΠΈ, Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ, ΡΡΠΎ ΠΎΠ½ΠΈ ΠΈΠΌ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ. ΠΠΎΡΠ΅ΠΌΡ-ΡΠΎ Π»ΡΠ΄ΠΈ ΠΎΡΠ΅Π½Ρ Ρ ΠΎΡΠΎΡΠΈ Π² ΡΠΎΠΌ, ΡΡΠΎΠ±Ρ ΠΏΡΠΈΠ΄ΡΠΌΠ°ΡΡ ΠΎΠΏΡΠ°Π²Π΄Π°Π½ΠΈΠ΅ Π»ΡΠ±ΠΎΠΉ Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π½Π° Π³ΡΠ°ΡΠΈΠΊΠ°Ρ , Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΡΡΠΎ ΠΎΡΠΈΠ±ΠΊΠ° Π²Π½ΡΡΡΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ. Π Π²ΡΠΎΡΠ°Ρ ΡΠ°ΡΡΡ β ΠΌΠ½Π΅ ΠΊΠ°ΠΆΠ΅ΡΡΡ, ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π²ΠΎΡ ΡΠ°ΠΊΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ Π»ΡΡΡΠ΅ ΠΏΠΎΠ΄ΠΎΡΠ»ΠΎ Π±Ρ ΠΊ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π²Π°ΡΠ΅ΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, Π²ΠΌΠ΅ΡΡΠΎ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· Π²Π°ΡΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Π΄Π΅Π»Π°Π» ΡΠ²ΠΎΠΉ capacity planning ΠΈ ΠΎΡΠΈΠ±Π°Π»ΡΡ Ρ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΡΡ.
ΠΠ°ΠΊ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ?
ΠΠ°ΠΊ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ? ΠΠ°Π²Π΅ΡΠ½ΠΎΠ΅, Π½ΠΈΠΊΠ°ΠΊ.
Π Π²ΠΈΠ΄Π΅ ΡΠ΅ΡΡΠ° Π² Grafana.
ΠΡΠΈΡΠ΅ΠΌ ΡΡΡ Grafana? Grafana ΡΡΠ°Π½ΡΠ»ΠΈΡΡΠ΅Ρ ΡΡΠΎΡ Π·Π°ΠΏΡΠΎΡ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ Π² DataSource.
ΠΠΎΠ±Π°Π²Π»ΡΡ ΡΡΡΡ-ΡΡΡΡ Π² ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ.
ΠΠ΅Ρ, Π² Grafana Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ. Π’Π°ΠΌ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ GET-ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ, ΠΊΠ°ΠΊ, Π΄ΠΎΠΏΡΡΡΠΈΠΌ, step. ΠΠ½ ΡΠ²Π½ΠΎ Π½Π΅ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ, Π½ΠΎ Π²Ρ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π΅ ΠΏΠ΅ΡΠ΅ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ, Π½ΠΎ ΠΎΠ½ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ. ΠΡ Π·Π΄Π΅ΡΡ Π½Π΅ Π½Π°ΠΏΠΈΡΠΈΡΠ΅ ΡΠ΅ΡΡΡ. Π― Π΄ΡΠΌΠ°Ρ, ΡΡΠΎ Π½Π΅ ΡΡΠΎΠΈΡ ΠΏΠΎΠ»Π°Π³Π°ΡΡΡΡ Π·Π΄Π΅ΡΡ Π½Π° Grafana, ΠΊΠ°ΠΊ Π½Π° ΠΈΡΡΠΎΡΠ½ΠΈΠΊ ΠΏΡΠ°Π²Π΄Ρ.
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ Π·Π° Π΄ΠΎΠΊΠ»Π°Π΄! Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ Π·Π° ΠΊΠΎΠΌΠΏΡΠ΅ΡΡΠΈΡ! ΠΡ Π²ΡΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΈ ΠΏΡΠΎ mapping ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π² Π³ΡΠ°ΡΠΈΠΊΠ΅, ΡΡΠΎ Π² Grafana Π½Π΅Π»ΡΠ·Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ. ΠΠΎΠ½ΠΈΠΌΠ°Π΅ΡΠ΅, ΠΎ ΡΠ΅ΠΌ Ρ?
ΠΠ°.
ΠΡΠΎ Π±ΡΠ»ΠΎ ΠΈΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ Π³ΠΎΠ»ΠΎΠ²Π½ΠΎΠΉ Π±ΠΎΠ»ΡΡ, ΠΊΠΎΠ³Π΄Π° Ρ Ρ ΠΎΡΠ΅Π» ΡΠ΄Π΅Π»Π°ΡΡ alert Π² Grafana. Π ΡΠ°ΠΌ Π½ΡΠΆΠ½ΠΎ alert Π΄Π΅Π»Π°ΡΡ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ ΠΎΡΡΠ° ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ. ΠΠΎΡ ΡΡΠ° ΡΡΡΠΊΠ°, ΠΊΠΎΡΠΎΡΡΡ Π²Ρ ΡΠ΄Π΅Π»Π°Π»ΠΈ, ΠΎΠ½Π° ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π΄Π»Ρ alerts Π² Grafana?
ΠΡΠ»ΠΈ Grafana Π½Π΅ ΠΎΠ±ΡΠ°ΡΠ°Π΅ΡΡΡ ΠΊ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌ ΠΊΠ°ΠΊ-ΡΠΎ ΠΏΠΎ-Π΄ΡΡΠ³ΠΎΠΌΡ, ΡΠΎ β Π΄Π°, ΠΎΠ½Π° Π±ΡΠ΄Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ. ΠΠΎ ΠΌΠΎΠΉ ΡΠΎΠ²Π΅Ρ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π°Π»Π΅ΡΡΠΈΠ½Π³ Π² Grafana Π²ΠΎΠΎΠ±ΡΠ΅, Π²Π°ΠΌ Π»ΡΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ alertmanager.
ΠΠ°, Ρ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ, Π½ΠΎ ΠΏΡΠΎΡΡΠΎ ΡΡΠΎ Π² Grafana ΠΏΠΎΠΊΠ°Π·Π°Π»ΠΎΡΡ Π»Π΅Π³ΡΠ΅ Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠ΅, Π½ΠΎ ΡΠΏΠ°ΡΠΈΠ±ΠΎ Π·Π° ΡΠΎΠ²Π΅Ρ!
ΠΡΡΠΎΡΠ½ΠΈΠΊ: habr.com