連載
» 2016年11月22日 05時00分 UPDATE

Windows PowerShell基本Tips(10):【 New-EventLog 】コマンドレット――新しいイベントソースを作成する

本連載は、Windows PowerShellコマンドレットについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、「New-EventLog」コマンドレットです。

[国井傑(Microsoft MVP for Directory Services),株式会社ソフィアネットワーク]
「Windows PowerShell基本Tips」のインデックス

連載目次

 本連載では、Windows PowerShellの基本的なコマンドレットについて、基本的な書式からオプション、具体的な実行例までを分かりやすく紹介していきます。今回は、「イベントビューア」に新しいイベントソースを作成する「New-EventLog」コマンドレットです

New-EventLogコマンドレットとは?

 「New-EventLog」は、イベントビューアに新しいイベントソースを作成するためのコマンドレットです。イベントソースとは、イベントビューアに記録されるイベントの「カテゴリー」に相当し(画面1の「ソース」部分)、あらかじめイベントソースを作成しておくと、「Write-EventLog」コマンドレット(本連載第9回参照)でイベントログを記録するときなどに管理者が定義したイベントソースを利用できるようになります。

 また、New-EventLogコマンドレットでイベントソースを作成した上で、Write-EventLogコマンドレットでイベントを記録すると、Write-EventLogコマンドレットを単体で実行したときのようなエラーメッセージ(画面1の「全般」タブ部分)が表示されなくなります。

画面1 画面1 「New-EventLog」コマンドレットを利用しないで「Write-EventLog」コマンドレットだけを単体で実行したときに表示されるエラー

New-EventLogコマンドレットの書式

New-EventLog [オプション]

※[ ]は省略可能な引数を示しています



New-EventLogコマンドレットの主なオプション

 New-EventLogコマンドレットの主なオプションは次の通りです。

オプション 意味
-LogName 記録するイベントの種類を指定する
-Source 記録するイベントのソースを指定する
-ComputerName イベントを記録するコンピュータの名前を指定する。省略可能
-ParameterResourceFile イベントの説明を記したDLLファイルの名前を指定する。省略可能


アプリケーションログにイベントソースを作成する

 New-EventLogコマンドレットでは、「-LogName」「-Source」の2つが最低限実行に必要なオプションになっています。

 例えば、アプリケーションログにイベントソースを作成するには、「-LogName」オプションで「Application」、「-Source」オプションで「ソースの名前(任意の文字列)」をそれぞれ指定します。

 以下の実行例では、アプリケーションログに「AdminAlert」という名前のイベントソースを作成しています。

コマンドレット実行例

New-EventLog -LogName Application -Source AdminAlert

(アプリケーションログにイベントソース「AdminAlert」を作成する)(画面2


画面2 画面2 アプリケーションログにイベントソース「AdminAlert」を作成する

 この実行例のように事前にイベントソースを作成しておけば、Write-EventLogコマンドレットでイベントを記録した際、「全般」タブの説明欄に画面1のようなエラーメッセージが表示されなくなります。以下が、アプリケーションログのイベントソース「AdminAlert」にエラーイベントを記録した実行例になります。

コマンドレット実行例

Write-EventLog -LogName Application -Source AdminAlert -EventID 100 -EntryType Error -Message "コンピューターでエラーが発生しました"

(アプリケーションログのイベントソース「AdminAlert」にエラーイベントを記録する)(画面3


画面3 画面3 アプリケーションログのイベントソース「AdminAlert」にエラーイベントが記録された


「アプリケーションとサービス」ログに新しいイベント種類とイベントソースを作成する

 New-EventLogコマンドレットでは、アプリケーションやシステムなどの既存のイベント種類にイベントソースを作成するだけでなく、新しいイベント種類自体を作成することもできます。

 以下の実行例では、イベント種類「AdminTask」と、イベントソース「AdminInfo」を新規作成しています。

コマンドレット実行例

New-EventLog -LogName AdminTask -Source AdminInfo

(イベント種類「AdminTask」と、イベントソース「AdminInfo」を新規作成する)(画面4


画面4 画面4 新しいイベント種類とイベントソースを作成した

 また、新しくイベント種類とイベントソースを作成した上で、Write-EventLogコマンドレットでイベントを記録すると、イベントビューアからも確認できるようになります。

 以下の実行例では、イベント種類に「AdminTask」、イベントソースに「AdminInfo」を指定してイベントを記録しています。

コマンドレット実行例

Write-EventLog -LogName AdminTask -Source AdminInfo -EventID 100 -Message "タスク実行が完了しました"

(イベント種類に「AdminTask」、イベントソースに「AdminInfo」を指定してイベントを記録する)(画面5


画面5 画面45 イベント種類「AdminTask」のイベントソースに「AdminInfo」にイベントが記録された


筆者紹介

国井 傑(くにい すぐる)

株式会社ソフィアネットワーク取締役。1997年よりマイクロソフト認定トレーナーとして、Active DirectoryやActive Directoryフェデレーションサービス(AD FS)など、ID管理を中心としたトレーニングを提供している。2007年よりMicrosoft MVP for Directory Servicesを連続して受賞。なお、テストで作成するユーザーアカウントには必ずサッカー選手の名前が登場するほどのサッカー好き。


Copyright© 2017 ITmedia, Inc. All Rights Reserved.

@IT Special

- PR -

TechTargetジャパン

この記事に関連するホワイトペーパー

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。