So-net無料ブログ作成

Windowsのプロセス、サービス及びイベントの取得(C#) [Windows]

Windowsのプロセス、サービス及びイベントの取得(C#)

Windowsの自作監視プログラムで使用しているクラスです。前に書いたパフォーマンスモニターの取得と共に使用してリモートサーバを監視しています。また、このほかに、Pingで疎通監視しTelenetでLinux系の情報取得及びWebサーバに


を送り返事でWebサーバの状態を確認しています。現在メールサーバは監視してないのですが、メールサーバもWebサーバと同様にTelenetを使用しての確認が可能です。

プロセスの取得 実行中のプロセスの情報を取得するには、ProcessクラスのGetProcessesByNameメソッドを使用できま す。リモートサーバのプロセスの存在を確認できるので必須プロセスの確認に使用しています。 例:

サービスの情報取得 ServiceController クラスはサービスの情報の取得及び操作を行えます。 状態は、StatusプロパティとServiceControllerStatus列挙子の比較で確認できます。

メンバ名 説明
ContinuePending 継続は保留中
Paused 一時中断
PausePending 一時中断は保留中
Running 実行中
Stopped 未実行
StopPending 停止中

サービスの操作のメソッド(一部)
メソッド名 説明
Start 開始
Stop 依存しているすべてのサービスを停止
Pause 中断
Continue 一時中断された後に続行
ExecuteCommand カスタムコマンドを実行

例:

イベントログの取得 EventLogクラスによりリモートのイベントログを取得できます。 MachineNameメンバーにリモートホスト名、logメンバーにログ名を指定することで簡単に取得できますが少々重いので取得時のサーバ負荷を調査のうえ使用するほうが良いかもしれません。 また、このクラスでイベントログにメッセージを書き込むことも出来ます。
例:


nice!(0)  コメント(0)  トラックバック(0) 

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0

メッセージを送る

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。

×

この広告は1年以上新しい記事の更新がないブログに表示されております。