IPMI

サーバ監視 (Unix)

Nagios

Ganglia

ZABBIX

Cacti

Hobbit

Hinemos

Swatch

サーバ監視(Windows)

WMIC (Windows Management Instrumentation Command Line)

 Windows Management Instrumentation(WMI)は、スクリプトなどの管理アプリケーションが、コンピュータのリソースに関する情報の入手や設定をできるようにする。コンピュータのリソースには、Windows OSサービス、ユーティリティ、パフォーマンス・カウンタ、イベント・ログ、物理的ハードウェア(ディスク・ドライブなど)、論理的ハードウェア(ディスク・ボリュームなど)、アプリケーションがある。

WMI リンク集

イベントログの監視(WMIC)

イベントログ監視スクリプト

Option Explicit

Const LOG_DIR = "C:?WORK"
Const LOG_PREFIX = "event-"
Const LOG_POSTFIX = ".log"

' n日前から検索
Const BEFORE = -3

' コンピュータ名の取得
Dim objNetWork, strComputerName, strLogPath
Set objNetWork = WScript.CreateObject("WScript.Network")
strComputerName = objNetWork.ComputerName
Set objNetWork = Nothing

' ログファイルのパスをセット
strLogPath = LOG_DIR & "?" & LOG_PREFIX & strComputerName & LOG_POSTFIX

Dim nowDate, prevDate, fromDate
Dim objWMI, colEvents

nowDate = CDate(Date)
prevDate = DateAdd("d", -1, nowDate)
fromDate = DateAdd("d", BEFORE, nowDate)

Set objWMI = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!??.?root?cimv2")
Set colEvents = objWMI.ExecQuery("select * from Win32_NTLogEvent " + "where TimeWritten >= '" &  fromDate & "' and (Type='エラー' or Type='Error')")

'ファイルシステムオブジェクトを作成
Dim objFS, objOut
Set objFS = CreateObject("Scripting.FilesystemObject")
If objFS.FileExists(strLogPath) Then
	objFS.DeleteFile(strLogPath)
End If
Set objOut = objFS.CreateTextFile(strLogPath)

'WScript.Echo colEvents.Count

Dim strTitle, strLine, objEvent

strTitle = "サーバ名" & vbTab & "発生時刻" & vbTab & "ログ" & vbTab & "タイプ" & vbTab & "カテゴリ" & vbTab & "メッセージ"
objOut.WriteLine( strTitle )

For Each objEvent In colEvents
        strLine = objEvent.ComputerName & vbTab & WMIDateStringToDate(objEvent.TimeWritten) & vbTab & objEvent.LogFile & vbTab & objEvent.Type & vbTab & objEvent.Category & vbTab &  objEvent.Message
        objOut.WriteLine( strLine )
Next

objOut.Close

Set objFS = Nothing
Set colEvents = Nothing
Set objWMI = Nothing

'WScript.Echo "End"

' WTC形式から標準形式に変換
Function WMIDateStringToDate(strUtc)
        WMIDateStringToDate = CDate(Mid(strUtc, 5, 2) & "/" & Mid(strUtc, 7, 2) & "/" & Left(strUtc, 4) & " " &  Mid (strUtc, 9, 2) & ":" & Mid(strUtc, 11, 2) & ":" & Mid(strUtc, 13, 2))
End Function

リンク集

製品・サービス

Site24x7

Paessler PRTG Network Monitor

Nagios XI

SolarWinds Server Health Monitor

Datadog

OpManager

ATERA

PowerCockpit


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS