Как я могу написать бесплатное уведомление об ошибках / возвратах пакетного файла? - PullRequest
0 голосов
/ 25 сентября 2008

У меня проблема с остановкой службы и ее повторным запуском, и я хочу получить уведомление о запуске процесса и сообщить мне, каков результат.

Вот сценарий, У меня есть вывод текстового файла команды "sc". Я хочу отправить этот файл, но не как вложение. Кроме того, я хочу быстро увидеть начальный статус в теме письма.

Вот содержимое файла 'servstop.txt':

[SC] StartService FAILED 1058:

Служба также не может быть запущена потому что он отключен или потому что не имеет активных устройств, связанных с это.

Я хочу, чтобы тема письма была «Запуск службы оповещений: [SC] StartService FAILED 1058» и тело, содержащее полное сообщение об ошибке выше.

Я добавлю свой текущий метод в ответ ниже, используя программу blat для отправки мне результата.

Ответы [ 2 ]

1 голос
/ 30 сентября 2008

Splunk выглядит многообещающе. Хотя не пробовал. Две цитаты с сайта об индексе и оповещении ниже.

ИНДЕКС: с помощью различных гибких методов ввода вы можете индексировать журналы, конфигурации, прерывания и оповещения, сообщения, сценарии, а также данные кода и производительности всех ваших приложений, серверов и сетевых устройств. Мониторинг файловых систем на наличие сценариев и изменений конфигурации, захват архивных файлов, поиск и отслеживание журналов приложений в реальном времени, подключение к сетевым портам для получения системного журнала, SNMP и других сетевых инструментов. И это только то, где это начинается.

ALERT: любой поиск может выполняться по расписанию и запускать уведомления или действия на основе результатов поиска. И поскольку Splunk работает с различными компонентами и технологиями, это самый гибкий инструмент мониторинга в вашем арсенале. Уведомления могут быть отправлены по электронной почте, RSS или SNMP на другие консоли управления. Действия запускают сценарии, выполняющие описанные пользователем действия, такие как перезапуск приложения, сервера или сетевого устройства.

1 голос
/ 25 сентября 2008

Вот как я это делаю. Сначала я получил blat mail (публичный домен smtp mailer) и поместил его в каталог d: \ blat. Мой сервер Exchange позволяет мне отправлять электронную почту без идентификатора / пароля и просто предполагает, что я являюсь человеком в поле «from» команды blat.

@echo off
sc start Alerter >servstop.txt
SetLocal EnableDelayedExpansion
set content=
set subj=
for /F "delims=" %%i in (servstop.txt) do set content=!content! %%i  
for /f "tokens=1 delims=:" %%s in ("%content%") do set subj=%%s 

d:\blat\blat.exe -body "%content%" -to my-email@foo.bar -f my-email@foo.bar -server smtp.foo.bar -s "Alert Service Start:%subj% " -log d:\blat\blat.log
EndLocal
...