Grafana Loki + ИИ для мониторинга журналов, или Как не пропустить что-то неожиданное
Реклама
Как быстро на вопрос “все ли у нас в порядке” поможет ответить просмотр журналов системы? Обычно за “роем” сообщений “ничего не видно”. Давайте разберемся, как можно выделить то, что действительно важно
Техническое задание
На нашем вебинаре вы научитесь использовать Grafana Loki для сбора информации из журналов
Использовать ИИ агентов для обнаружения аномалий в логах
Использовать ИИ агентов для поиска первопричин инцидента (Root Cause Analysis RCA)
Запись вебинара
Шаг 1. Что у нас есть, для начала
На следующей итерации
rm /usr/local/bin/mywall.sh
server.corp13.un:~# truncate -s 0 $(docker inspect --format='{{.LogPath}}' loki)
Шаг 2. Мониторинг Web приложения
Шаг 3. От мониторинга к наблюдаемости
-
Сервис Loki (извлечение логов из Grafana Loki через
API)
-
# cat /usr/local/bin/mywall_through_llm.sh
#!/bin/sh
export BASE_URL=http://val.bmstu.ru:8080/v1
export API_KEY=1234567890abcdefg
export MODEL_ID=ornith-1.5:9b
#export BASE_URL=https://ai.api.cloud.yandex.net/v1
#export API_KEY=...
#export MODEL_ID=gpt://b1gg4j6ru4esprat3uu7/deepseek-v4-flash/latest
PROMPT="Проанализируй строки журнала и очень кратко объясни, почему не работает?"
MESSAGE=$(curl -s http://localhost:3100/loki/api/v1/query_range \
--data-urlencode 'query={service_name=~".+"}' \
--data-urlencode 'limit=10' \
| jq -r '.data.result[].values[][1]' \
| /usr/local/bin/openai_request_to_llm.py $PROMPT)
for MY_T in $(w | grep pts | awk '{print $2}')
do
echo "$MESSAGE" > /dev/$MY_T
done
Ваши вопросы?
Подготовка к вебинару
vim /etc/prometheus/alertmanager.yml
amtool check-config /etc/prometheus/alertmanager.yml
service prometheus-alertmanager restart
apt purge webhook
rm /etc/webhook.conf
rm /usr/local/bin/openai_request_to_llm.py
apt purge python3-openai
rm /usr/local/bin/mywall_through_llm.sh
crontab -e
rm /usr/local/bin/roundcube_monitor_stat_log.sh
rm /usr/local/bin/roundcube_monitor.sh
rm /etc/prometheus/first_rules.yml
vim /etc/prometheus/prometheus.yml #-pushgateway
promtool check config /etc/prometheus/prometheus.yml
service prometheus restart
crontab -e
rm /usr/local/bin/roundcube_monitor_stat_log.sh
apt purge bc
rm /usr/local/bin/roundcube_monitor.sh
apt purge prometheus-pushgateway