イベントログの最大ログサイズや最大値に達したときの動作を、コマンドで設定する方法
Windows PCの設定をしているときに、こんなふうに思うことがあります。
イベントログの最大サイズや最大値に達したときの動作を、コマンド操作で変更・設定したい!
Windows 10 1903のイベントログの多くは、初期設定状態では最大ログサイズが20480KB(20MB)。
そして『イベントログサイズが最大値に達したとき:』が『必要に応じてイベントを上書きする(最も古いイベントから)』で設定されています。※
※Setupログの1028KBのように、一部のログでは20480KB / 『必要に応じてイベントを上書きする(最も古いイベントから)』ではないログも存在します。
これらを、自分の好みの設定値に変更してPCを使っている!
という方もいらっしゃることでしょう。
自分が使っている複数のPCに対し、各種イベントログの最大ログサイズや最大値に達したときの動作を、手作業で設定するのは面倒です。
そのため、コマンド操作で設定ができたら便利ですよね!
そこで今回は、Windows PCのイベントログの最大ログサイズや最大値に達したときの動作を、コマンド操作で設定する方法をご紹介します!
設定コマンドをバッチファイルやPowerShellスクリプトファイルとして保存してから実行することで、とても簡単かつ自動で設定できるようになるので、ぜひ活用ください!
コマンドを使った、イベントログの最大サイズや最大値に達したときの動作の設定方法
イベントログの最大ログサイズや最大値に達したときの動作は、『wevtutil』コマンドを使用して設定します。
少し覚えにくいスペルのコマンドですが、おそらくはWindows Event Utilityの省略形※じゃないかと思いますので、そのように考えることでコマンド文字列を覚えやすくなるんじゃないでしょうか。
※私の推測なので、本当は違う文字列の省略形かもしれません。
『wevtutil』コマンドを使うことで、Windowsのイベントログに関するさまざまな操作を行うことが可能です。
そのため、とてもたくさんのパラメーターを指定できます。
ですが最大ログサイズや最大値に達したときの動作の設定に使用するのは『sl』と『/rt:』、『/ab:』、『/ms:』の4つのパラメーターだけなので、この4つだけ覚えておけばOKです!
それぞれの設定値については、Microsoft Docs – wevtutilの説明が分かりやすかったので、引用します。
{sl|セットのログ} 指定したログの構成を変更します。
中略
/rt:<保有> 保有期間のログ モードを設定します。
<保有期間> true または false にすることができます。
ログの保存モードは、ログが最大サイズに達したときに、イベント ログ サービスの動作を決定します。
イベント ログが最大サイズに達した場合、ログの保存モードが true、既存のイベントは保持され、受信イベントは破棄されます。
ログの保存モードが false の場合、受信イベントは、ログ内の最も古いイベントを上書きします。/ab:<自動> ログの自動バックアップ ポリシーを指定します。
<自動> true または false にすることができます。
この値が true の場合、ログがバックアップに自動的に最大サイズに達したとき。
この値が true の場合、保有期間 (指定されている、/rtオプション) も設定する必要がありますを true にします。/ms:<MaxSize> ログの最大サイズをバイト単位で設定します。
最小ログ サイズは 1048576 バイト (1024 KB) で、ログ ファイルは 64 KB の倍数では常に、値を入力するように切り捨てられますそれに応じて。
Microsoftさんのサイトは機械翻訳のため、少し日本語がおかしいところもありますが、『sl』はset logの省略形で設定対象のログの名前を指定します。
『/rt:』はRetentionの省略形であり、保有期間の設定。
『/ab:』はauto backupの省略形で、『/rt:』と組み合わせてイベントログの最大値に達したときの動作を指定します。
『/ms:』はMaxSizeの省略形であり、最大ログサイズを B単位で指定するものです。
『wevtutil』コマンドを実行する際は、管理者権限で起動したコマンドプロンプトかPowerShellを使ってください。
参考:Windows アプリケーションを管理者権限で起動・実行する方法
管理者権限を持っていないPowerShellでは、『アクセスが拒否されました。構成を保存すること、またはログ XXXXXX をアクティブにすることができませんでした。アクセスが拒否されました。』というエラーが発生し、『wevtutil』コマンドの実行に失敗します。
『wevtutil』コマンドを使ったイベントログの設定サンプル
ここからは、『wevtutil』コマンドを使ったイベントログの設定サンプルをいくつかご紹介しましょう。
Setupログの最大ログサイズを100MB、『イベントを上書きしないでログをアーカイブする』に設定する方法
Setupログの最大ログサイズを100MB。
そして『イベントを上書きしないでログをアーカイブする』に設定したいときは、以下コマンドを実行します。
1 | wevtutil sl Setup /rt:true /ab:true /ms:104857600 |
/msは B単位での指定となるため、100MBに設定するときは104857600(=100 × 1024 × 1024)と指定してください。
このコマンドを実行することで、イベントログのプロパティが以下のように変更されます。
Securityログの最大ログサイズを1GB、『必要に応じてイベントを上書きする(最も古いイベントから)』に設定する方法
Securityログの最大ログサイズを1GB。
そして『必要に応じてイベントを上書きする(最も古いイベントから)』に設定したいときは、以下コマンドを実行します。
1 | wevtutil sl Security /rt:false /ab:false /ms:1073741824 |
/msは B単位での指定となるため、1GBに設定するときは1073741824(=1 × 1024 × 1024 × 1024)と指定してください。
このコマンドを実行することで、イベントログのプロパティが以下のように変更されます。
Systemログの最大ログサイズを10GB、『イベントを上書きしない(ログは手動で消去)』に設定する方法
Systemログの最大ログサイズを10GB。
そして『イベントを上書きしない(ログは手動で消去)』に設定したいときは、以下コマンドを実行します。
1 | wevtutil sl System /rt:true /ab:false /ms:10737418240 |
/msは B単位での指定となるため、10GBに設定するときは10737418240(=10 × 1024 × 1024 × 1024)と指定してください。
このコマンドを実行することで、イベントログのプロパティが以下のように変更されます。
最大ログサイズは、『/ms:』パラメーターの設定値とは異なる値で設定されることも!
イベントログのプロパティ画面で設定を変更する際、最大ログサイズについて、以下のようなメッセージが表示されることがあります。
『指定された最大ログサイズが有効ではありません。大きすぎるか、小さすぎるか、または64KBの倍数ではありません。最大ログサイズは次の値に設定されます:20480KB』というメッセージ:
『指定された最大ログサイズが有効ではありません。大きすぎるか、小さすぎるか、または64KBの倍数ではありません。最大ログサイズは次の値に設定されます:1028KB 現在のログサイズが指定された最大サイズを超えています。ログが消去されるまで、新しい設定は有効になりません。または、最大ログサイズに別の値を選択できます。』というメッセージ:
『ログサイズの値は0より大きい値で、64KB単位でなければなりません。ログサイズは最も近い64KBの倍数に設定されます。』というメッセージ:
『wevtutil』コマンドを使って最大ログサイズの設定を行った際にも、これらと同様のエラーチェック処理が動作するようです。
そのため『/ms:』パラメーターの設定値によっては、『/ms:』パラメーターで指定した値とは異なる値が最大ログサイズに設定されることがある点には、ご注意ください。
以上、参考になさってくださーい!