mirror of
https://github.com/ManyakRus/telegram_loki.git
synced 2024-12-04 21:05:12 +02:00
сделал sql
This commit is contained in:
parent
30fe5f2367
commit
1182b539b6
14
README.md
14
README.md
@ -5,19 +5,25 @@ and no one will look there every 5 minutes -
|
||||
Therefore, it is necessary to automate the process of searching for errors in logs and notifying developers.
|
||||
|
||||
The application does:
|
||||
Search for errors in the LOKI logger
|
||||
1. Log in to grafana
|
||||
2. Takes a list of services from the services.txt file
|
||||
3. For each service, searches for LOKI logs with the text: error:,panic:,ERROR:,PANIC:
|
||||
4. Found logs with errors are sent to the Telegram messenger
|
||||
3. For each service, searches for LOKI logs with the text: error:, panic:, ERROR:, PANIC:
|
||||
4. Sends the found logs with errors to the Telegram messenger
|
||||
5. Repeats the search every 10 minutes
|
||||
|
||||
Search for errors in the database:
|
||||
1. Log in to the PostgreSQL database
|
||||
2. Finds .sql files in the sql folder, and executes a script in the database,
|
||||
if the script returns a value, a message about this will come to the Telegram messenger,
|
||||
if the script does not return lines, then everything is fine.
|
||||
3. Repeats requests every 60 minutes
|
||||
|
||||
Installation procedure:
|
||||
1. Compile this repository
|
||||
make build
|
||||
>make build
|
||||
the telegram_loki file will appear in the bin folder
|
||||
|
||||
|
||||
2. fill parametes in settings.txt file (or .env file)
|
||||
with Grafana LOKI URL, login, password, etc.
|
||||
|
||||
|
@ -1 +1 @@
|
||||
2024-11-01 12:03:45.152
|
||||
2024-11-01 12:11:04.332
|
@ -1 +1 @@
|
||||
00157
|
||||
00158
|
@ -54,6 +54,10 @@ func RunSQL_and_Send() {
|
||||
|
||||
// RunSQL - запускает все скрипты .sql
|
||||
func RunSQL() error {
|
||||
var err error
|
||||
|
||||
log.Debug("Start run .sql scripts")
|
||||
|
||||
dir := micro.ProgramDir_bin()
|
||||
DirFilename := dir + config.Settings.SQL_FILES_FOLDER
|
||||
Files, err := os.ReadDir(DirFilename)
|
||||
|
@ -1 +1 @@
|
||||
fc8ca01 2024-11-01 15:02:44 +0300
|
||||
30fe5f2 2024-11-01 15:06:48 +0300
|
||||
|
14
readme.rus
14
readme.rus
@ -5,21 +5,29 @@
|
||||
поэтому надо автоматизировать процесс поиска ошибок в логах и уведомление разработчикам.
|
||||
|
||||
Приложение делает:
|
||||
Поиск ошибок в логгере LOKI
|
||||
1. Логинится в grafana
|
||||
2. Берёт список сервисов из файла services.txt
|
||||
3. По каждому сервису ищет логи LOKI с текстом: error:,panic:,ERROR:,PANIC:
|
||||
4. Найденные логи с ошибками присылает в Telegram мессенджер
|
||||
5. Повторяет поиск каждые 10 минут
|
||||
|
||||
Поиск ошибок в базе данных:
|
||||
1. Логинится в базу данных PostgreSQL
|
||||
2. Находит файлы .sql в папке sql, и выполняет скрипт в базе данных,
|
||||
если скрипт вернёт значение, то сообщение об этом придёт в Telegram messenger,
|
||||
если скрипт не вернёт ни одной строки, то значит всё хорошо.
|
||||
3. Повторяет запросы каждые 60 минут
|
||||
|
||||
|
||||
Порядок установки:
|
||||
1. Скомпилировать этот репозиторий
|
||||
make build
|
||||
>make build
|
||||
в папке bin появится файл telegram_loki
|
||||
|
||||
|
||||
2. заполнить файл settings.txt (или .env)
|
||||
с настройками LOKI URL, логин, пароль и др.
|
||||
с настройками LOKI URL, логин, пароль и др.,
|
||||
а также настройки подключения в базу данных.
|
||||
|
||||
3. Заполнить файл settings/services.txt
|
||||
В формате json написать имя сервиса в LOKI
|
||||
|
@ -1 +0,0 @@
|
||||
SELECT 1
|
1
test/test_error.sql
Normal file
1
test/test_error.sql
Normal file
@ -0,0 +1 @@
|
||||
SELECT 'test'
|
Loading…
Reference in New Issue
Block a user