|
Простая проверка доступности веб-сервера. Проверка кода состояния сервера. Создание базового телеграм-бота. Отправка уведомления через Telegram
|
|||
---|---|---|---|
#18+
Полезные ссылки: https://developer.mozilla.org/ru/docs/Web/HTTP/Status https://www.w3.org/Protocols/HTTP/HTRESP.html https://core.telegram.org/bots/api На примере данного форума я выполняю элементарную проверку кода состояния веб-сервера по запрошенным url с другого хоста. Код ответа "200 - OK" является успешным ответом для метода GET и в данном случае отсутствия полноценной системы мониторинга вроде Zabbix проверка кода состояния веб-сервера позволит получить минимальное понимание о работоспособности сервера в текущий момент времени. Разумеется, проверить функционирование непосредственно поддерживаемого веб-сайта таким образом не получится, код ответа 200 говорит только о том, что веб-сервер успешно ответил на запрос GET. Нет подключения к базе данных у веб-приложения и веб-сайт сообщает об ошибке? Всё-равно 200 ОК. ##### Скрипт проверки кода ответа веб-сервера. Код: BASH 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
##### Скрипт отправки уведомления через телеграм. Код: BASH 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
Телеграм-бот может отправлять уведомления только в телеграм-канал, при этом, необходимо добавить бота в администраторы канала, предоставив право на отправку сообщений (остальные права администратора можно отобрать). Соответственно, при вызове скрипта передаются в качестве позиционных параметров тема сообщения и текст сообщения. Бот отправляет переданную информацию в указанный канал (можно указывать канал по имени, не обязательно id), пройдя аутентификацию с указанным токеном. ##### Скрипт проверки url по списку и вызов скрипта отправки уведомления. Код: BASH 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37.
Код 1. 2. 3. 4. 5. 6. 7. 8. 9.
Алгоритм проверки и отправки уведомления: - если код ответа 200 - проверить, существует ли файл-указатель об ошибке, если существует, то удалить и ничего не делать; - если код ответа не 200 - проверить, существует ли файл-указатель об ошибке, если существует, то ничего не делать, если не существует, то создать файл-указатель об ошибке и передать информацию в скрипт отправки уведомлений. Файл-указатель об ошибке нужен, чтобы не дублировать сообщения в случае длительного, преднамеренного или аварийного простоя веб-сервера. ##### Вызов по расписанию каждые 5 минут: Код 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
18.04.2022, 11:48 |
|
|
start [/forum/topic.php?fid=4&gotonew=1&tid=729]: |
0ms |
get settings: |
22ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
35ms |
get topic data: |
9ms |
get first new msg: |
6ms |
get forum data: |
3ms |
get page messages: |
107ms |
get tp. blocked users: |
2ms |
others: | 25ms |
total: | 223ms |
0 / 0 |