This script checks the availability of a website on the internet. It runs every 2 minutes via the server's cron. If the site does not respond within 15 minutes, it sends messages to Slack and/or Telegram.
- Copy the script file
check_sites.sh
and the filesites.txt
to the server. - Set permissions to run the script:
chmod +x check_sites.sh
- Edit the
sites.txt
file by adding the websites to be monitored. There must be an empty line at the end of the file! - Set up the server cron, for example, by running
crontab -e
. In the opened editor, add the following line (to run every 2 minutes):
*/2 * * * * /path/to/check_sites.sh
- Register a webhook (something like TRXXXXXXX/XXXXXXXXXXX/XXXXXXXXXXXXXXXXXXXXXXXX) in Slack and add it to line 27 of the check_sites.sh script.
- Enter the channel where the messages will be sent on line 21 of the check_sites.sh script.
- Uncomment lines 33-36 of the check_sites.sh file
- Create a bot in Telegram and get the access token:
- Find @BotFather in Telegram and send the command /newbot.
- Follow the instructions to create a bot and get the token.
- Find out your chat ID:
- Find @userinfobot in Telegram and send the command /start.
- Note the User ID value.
- Enter the data from steps 8 and 9 into lines 12 and 14 of the check_sites.sh script.
Скрипт проверяет доступность сайта в сети интернет. Запускается каждые 2 минуты по крону сервера. В случае отсутствия ответа сайта в течение 15 минут шлет сообщения в Слак и/или Телеграм
- Скопировать файл скрипта check_sites.sh и файл sites.txt на сервер.
- Установите права на запуск скрипта:
chmod +x check_sites.sh
- Отредактировать файл sites.txt добавив в него сайты для мониторинга В конце файла должна быть пустая строка!
- Настроить крон сервера, например,
crontab -e
. В открывшемся редакторе добавить строку (для запуска каждые 2 минуты):
*/2 * * * * /path/to/check_sites.sh
- Зарегистрируйте веб-хук (что-то типа TRXXXXXXX/XXXXXXXXXXX/XXXXXXXXXXXXXXXXXXXXXXXX) в Слаке и добавьте в строку 27 скрипта check_sites.sh
- В строку 21 скрипта check_sites.sh впишите канал, в который будут идти сообщения.
- Раскомментируйте строки 33-36 файла check_sites.sh
- Создайте бота в Telegram и получите токен доступа:
- Найдите @BotFather в Telegram и отправьте команду /newbot.
- Следуйте инструкциям для создания бота и получите токен.
- Узнайте свой идентификатор чата:
- Найдите @userinfobot в Telegram и отправьте команду /start.
- Запишите значение User ID.
- Впишите данные из пунктов 8 и 9 в строки 12 и 14 в check_sites.sh