Remove-EventLog
イベント ログを削除またはイベント ソースの登録を解除します。
構文
Remove-EventLog [-LogName] <string[]> [[-ComputerName] <string[]>] [-Confirm] [-WhatIf] [<CommonParameters>]
Remove-EventLog [[-ComputerName] <string[]>] [-Source <string[]>] [-Confirm] [-WhatIf] [<CommonParameters>]
説明
Remove-EventLog コマンドレットは、ローカル コンピューターまたはリモート コンピューターからイベント ログ ファイルを削除し、ログのイベント ソースのすべての登録を解除します。このコマンドレットを使用して、イベント ログを削除することなしにイベント ソースの登録を解除することもできます。
EventLog という名詞を含むコマンドレット (EventLog コマンドレット) は、従来のイベント ログでのみ有効です。Windows Vista 以降のバージョンで Windows イベント ログ技術を使用しているログからイベントを取得するには、Get-WinEvent を使用します。
パラメーター
-ComputerName <string[]>
リモート コンピューターを指定します。既定値はローカル コンピューターです。
リモート コンピューターの NetBIOS 名、インターネット プロトコル (IP) アドレス、または完全修飾ドメイン名を入力します。ローカル コンピューターを指定するには、コンピューター名、ドット (.)、または「localhost」を入力します。
このパラメーターは、Windows PowerShell リモート処理に依存しません。コンピューターがリモート コマンドを実行するように構成されていない場合でも、Remove-EventLog の ComputerName パラメーターを使用できます。
必須 |
false |
位置 |
2 |
既定値 |
|
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-LogName <string[]>
イベント ログを指定します。1 つ以上のイベント ログのログ名 (LogDisplayName ではなく Log プロパティの値) をコンマ区切りで入力します。ワイルドカード文字は使用できません。このパラメーターは必須です。
必須 |
true |
位置 |
1 |
既定値 |
|
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-Source <string[]>
指定されたイベント ソースの登録を解除します。コンマ区切りで、(実行可能ファイルのプロセス名ではなく) ソース名を入力します。
必須 |
false |
位置 |
named |
既定値 |
|
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-Confirm
コマンドを実行する前に確認メッセージを表示します。
必須 |
false |
位置 |
named |
既定値 |
|
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-WhatIf
実際にコマンドを実行せずに、コマンドを実行すると何が起きるかを出力します。
必須 |
false |
位置 |
named |
既定値 |
|
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
<CommonParameters>
このコマンドレットは、次の共通パラメーターをサポートします: -Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer、および -OutVariable。詳細については、次を参照してください: about_Commonparameters.
入力と出力
入力値の型は、コマンドレットへのパイプが可能なオブジェクトの型です。戻り値の型は、コマンドレットによって返されるオブジェクトの型です。
入力 |
なし パイプを使用してこのコマンドレットに入力を渡すことはできません。 |
出力 |
なし このコマンドレットによる戻り値はありません。 |
注
Windows Vista 以降のバージョンの Windows で、Remove-EventLog を使用するには、Windows PowerShell を起動する際に [管理者として実行] を指定する必要があります。
イベント ログを削除した後ログを再作成する場合、同じイベント ソースを登録することはできません。エントリを元のログに書き込むためにイベント ソースを使用したアプリケーションは、新しいログに書き込むことはできません。
特定ログのイベント ソースの登録を解除すると、エントリの他のイベント ログへの書き込みが防止されます。
例 1
C:\PS>remove-eventlog -logname MyLog
説明
-----------
このコマンドは、ローカル コンピューターから MyLog イベント ログを削除し、そのイベント ソースの登録を解除します。
例 2
C:\PS>remove-eventlog -logname MyLog, TestLog -computername Server01, Server02, localhost
説明
-----------
このコマンドは、ローカル コンピューター (localhost)、Server01 および Server02 リモート コンピューターから MyLog イベント ログと TestLog イベント ログを削除します。コマンドは、これらのログのイベント ソースの登録も解除します。
例 3
C:\PS>remove-eventlog -source MyApp
説明
-----------
このコマンドを実行すると、ローカル コンピューター上のログから MyApp イベント ソースが削除されます。このコマンドが完了すると、MyApp プログラムはイベント ログに書き込みできません。
例 4
C:\PS>get-eventlog -list
Max(K) Retain OverflowAction Entries Log
------ ------ -------------- ------- ---
15,168 0 OverwriteAsNeeded 22,923 Application
15,168 0 OverwriteAsNeeded 53 DFS Replication
512 7 OverwriteOlder 0 Directory Service
15,168 7 OverwriteOlder 0 Hardware Events
512 7 OverwriteOlder 0 Internet Explorer
20,480 0 OverwriteAsNeeded 0 Key Management Service
30,016 0 OverwriteAsNeeded 50,060 Security
15,168 0 OverwriteAsNeeded 27,592 System
15,360 0 OverwriteAsNeeded 18,355 Windows PowerShell
15,168 7 OverwriteAsNeeded 12 ZapLog
C:\PS> remove-eventlog -logname ZapLog
C:\PS> get-eventlog -list
Max(K) Retain OverflowAction Entries Log
------ ------ -------------- ------- ---
15,168 0 OverwriteAsNeeded 22,923 Application
15,168 0 OverwriteAsNeeded 53 DFS Replication
512 7 OverwriteOlder 0 Directory Service
15,168 7 OverwriteOlder 0 Hardware Events
512 7 OverwriteOlder 0 Internet Explorer
20,480 0 OverwriteAsNeeded 0 Key Management Service
30,016 0 OverwriteAsNeeded 50,060 Security
15,168 0 OverwriteAsNeeded 27,592 System
15,360 0 OverwriteAsNeeded 18,355 Windows PowerShell
説明
-----------
これらのコマンドは、コンピューター上にイベント ログの一覧を表示し、Remove-EventLog コマンドの正常な実行を確認する方法を示します。
最初のコマンドは、ローカル コンピューター上にイベント ログの一覧を表示します。
2 番目のコマンドは、ZapLog イベント ログを削除します。
3 番目のコマンドは、イベント ログの一覧を再度表示します。ZapLog イベント ログは一覧には表示されません。
例 5
C:\PS>get-wmiobject win32_nteventlogfile -filter "logfilename='TestLog'" | foreach {$_.sources}
MyApp
TestApp
C:\PS> remove-eventlog -source MyApp
C:\PS> get-wmiobject win32_nteventlogfile -filter "logfilename='TestLog'} | foreach {$_.sources}
TestApp
説明
-----------
これらのコマンドは、Get-WmiObject コマンドレットを使用して、ローカル コンピューター上のイベント ソースの一覧を表示します。これらのコマンドを実行して、コマンドの正常な完了またはイベント ソースの削除を確認できます。
最初のコマンドは、ローカル コンピューター上の TestLog イベント ログのイベント ソースを取得します。MyApp はソースの 1 つです。
2 番目のコマンドは、Remove-EventLog の Source パラメーターを使用して、MyApp イベント ソースを削除します。
3 番目のコマンドは、最初のコマンドと同一です。MyApp イベント ソースが削除されたことを示します。
関連項目
概念
Clear-EventLog
Get-EventLog
Limit-EventLog
New-EventLog
Remove-EventLog
Show-EventLog
Write-EventLog
Get-WinEvent