Вам нужно написать очень простое приложение, которое использует таймер для периодического запуска действия (например, запуск сценария SQL и отправка электронного письма при сбое запроса или чего-либо еще).Затем вы устанавливаете это приложение в качестве службы Windows или Unix Deamon, так что оно работает в фоновом режиме все время.Кроме того, вы можете запустить это приложение, используя планировщик задач (windows) или cron (linux).
Такие инструменты, как AlertGrid, все еще могут быть полезны, потому что даже если вы напишите такое маленькое приложение и установите его в качестве службы / демона, вы никогда не узнаете, внезапно ли по какой-либо причине оно внезапно завершилось (остановкахостинг уходит из машины).Проблема заключается в следующем: если вы автоматизируете повторяющуюся задачу, вы исключаете возможность человеческой ошибки, но начинаете сталкиваться с другим врагом: «тихие» сбои.
Итак, чтобы следить за тем,повторяющиеся задачи действительно выполняются, у вас должно быть что-то, что может получать сообщения «Я жив» из вашего приложения и генерировать оповещения, когда сообщение не получено в течение x минут.Это что-то должно: а) находиться вне машины, на которой размещено ваше приложение; б) быть НАДЕЖНЫМ (чтобы само по себе оно не выходило из строя).
Такие инструменты, как AlertGrid, делают именно это, и даже больше.AlertGrid хорош, потому что его относительно легко интегрировать и использовать.
Но это еще не все.Вы написали: «Так что, если я обнаружу проблему, я могу отправить уведомление на alert-grid.com, и оно будет отправлять уведомления всем сторонам, для которых мы настроили это?».Хитрость в том, что вы говорите, что ВЫ хотите обнаружить проблему.Рассмотрим другой подход: настройте AlertGrid для определения, является ли событие инцидентом или нет.Не все события должны быть инцидентами, в большинстве случаев ваши SQL-скрипты будут проходить без ошибок, верно?Почему бы и не сообщить об успехе?Таким образом вы убиваете двух зайцев одним выстрелом: вы отслеживаете, работает ли ваше приложение, периодически проверяя наличие любых событий (как успешных, так и неуспешных) и вызывая оповещения, если вы не получили событие за x промежуток времени, и автоматически определяете, какие событияпроисходят инциденты и отправляют уведомления по электронной почте или по телефону соответствующим контактным лицам.Еще одно преимущество: если изменяются правила уведомления (например, вы хотите отправить SMS на Mr X вместо электронной почты на Mrs Y), вам не нужно перекомпилировать или повторно развертывать приложение, вы только переконфигурируете его в AlertGrid.