0

サービスの停止と再開に問題があり、プロセスが実行されたときに通知を受け取り、その結果を知らせたいと思っています。

これがシナリオです。「sc」コマンドのテキストファイル出力があります。そのファイルを送信したいのですが、添付ファイルとしてではありません。また、メールの件名で初期状態を早く見たい。

「servstop.txt」ファイルの内容は次のとおりです。

[SC] サービスの開始に失敗しました 1058:

サービスが無効になっているか、有効なデバイスが関連付けられていないため、サービスを開始できません。

電子メールの件名を「Alert Service Start: [SC] StartService FAILED 1058」とし、本文に上記のエラー メッセージ全体を含めたいと考えています。

結果を送信するために、blat というプログラムを使用して、現在の方法を以下の回答に記載します。

4

2 に答える 2

1

Splunkは有望に見えます。しかし、それを試していません。以下のインデックスとアラートに関するサイトからの2つのブロッククォート。

インデックス:さまざまな柔軟な入力方法を使用して、すべてのアプリケーション、サーバー、およびネットワークデバイスからのログ、構成、トラップとアラート、メッセージ、スクリプト、およびコードとパフォーマンスのデータにインデックスを付けることができます。スクリプトと構成の変更についてファイルシステムを監視し、アーカイブファイルをキャプチャし、ライブアプリケーションログを検索して追跡し、ネットワークポートに接続して、syslog、SNMP、およびその他のネットワークベースの機器を受信します。そして、これはまさにそれが始まるところです。

アラート:任意の検索をスケジュールに従って実行し、検索結果に基づいて通知またはアクションをトリガーできます。また、さまざまなコンポーネントやテクノロジーで機能するため、Splunkは最も柔軟な監視ツールです。通知は、電子メール、RSS、またはSNMPを介して他の管理コンソールに送信できます。アクションは、アプリケーション、サーバー、ネットワークデバイスの再起動などのユーザー記述のアクティビティを実行するスクリプトをトリガーします。

于 2008-09-30T19:03:36.390 に答える
1

これが私がこれをやっている方法です。まず、ブラット メール(パブリック ドメインの smtp メーラー) を取得し、d:\blat ディレクトリにドロップしました。私の Exchange サーバーでは、ID/パスワードなしで電子メールを送信することができ、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
于 2008-09-25T18:49:20.657 に答える