Chciałbym wykorzystać sql-exporter + prometheus do wykrywania różnych anomalii w bazie danych (sql server jak i postgres). Przykładowe zapytania:
- użytkownicy którzy od dawna się nie zalogowali
- zamówienia, które jeszcze nie zostały opłacone
- ile jest zamówień per klient
Problem w tym, że:
- niektóre zapytania chciałbym, by były odpalane co 1 minutę, inne co 15 minut, jeszcze inne co godzinę itd.
- niektóre zapytania mają miec timeout 5 sekund, a inne 1 minutę, itd.
- niektóre alerty mają być wysyłane na kanał slack z "resolved", a inne, na tym samym kanale bez "resolved"
- niektóre alerty mają się wysyłać co 5 minut, inne raz dziennie itd.
No i odnoszę wrażenie, że w prometheusu dużo z tych ustawień jest "globalnych", a robienie ich per zapytanie wiąże się z "hackami". Przykładowo to, że jedne zapytania mają być odpalane co 1 minutę, a inne co 15 minut powoduje, że muszę:
a) uruchomić 2 instancje exportera na 1 hoście
b) skonfigurować 2 osobne joby w prometheusu - w każdym z nich na sztywno będę określał jakie joby z exportera mają być uruchomione podczas scrapowania
No i minusem b) jest to, że teraz z kazdym nowym jobem exportera muszę dodawać go do prometheusa.
Mam wrażenie, że próbuję użyć prometheusa w miejscu, w którym nie jest on przeznaczony. Mam rację?