Windows CBS.logの詳細度の制限、ログレベルの設定、ヘクトメガバイトの情報の狂気の停止
Windows 7(Home Premium 64ビット)では、数百メガバイトのログ誰も読み取る必要のないものはC:\Windows\Logs\CBS\CBS.log
に書き込まれます。見てください、ここで行を数えています:
$ dir C:\Windows\Logs\CBS\CBS.log
03.10.2015 16:21 726.097.704 CBS.log
$ findstr /b 2015- C:\Windows\Logs\CBS\CBS.log | find /c ", Info"
2990118
$ findstr /b 2015- C:\Windows\Logs\CBS\CBS.log | find /c /v ", Info"
102
簡単に言うと、CBSログファイル(CBSはComponent Based Servicesの略で、エイリアスTrusted Installerです。詳細は Understanding Component-Based Servicing、Apr 2008、Microsoft Technet )現時点では700 MBを消費し、そのうちの200は過去30分間に書き込まれ、最初のエントリは9日前。
全体で300万エントリ近くありますログレベルInfoではほぼすべてです。ちなみに、これは人間が読める形式のログファイル形式であり、明らかに機械処理用ではありません。あなたのことは知りませんが、デフォルトでInfoの300万行を考慮に入れなければならないという考えは、不条理に接しているように私を驚かせます。
停止ディスクとCPUのアクティビティはシステムを不必要に遅くする以外の目的には使用できないため、これを使用します。
したがって:ログレベルをWarningまたはErrorに設定するにはどうすればよいですか?これはどこに文書化されていますか?
さらに、数百メガのInfo(1週間弱)を渡る代わりに、〜100Error行?それは意味をなさず、実際にトラブルシューティングの手がかりを提供しないのではないでしょうか。その場合でも、明らかでないインストールの問題が発生した場合に備えて、Infoをオンにするオプションがあります。
更新:
コメントを読んで、私は十分に明確に私の質問に言葉をかけなかったようです。私はnotコマンドラインユーティリティを使用して、巨大なログファイルをフィルタリングする方法を尋ねています。私もnotログローテーションの方法でログファイルを処理する方法を尋ねています-ファイルが不明なしきい値に達したときにWindowsが自動的にそれを行うためです(ただし、 ファイルが20ギガに達する理由 )。私が求めるのはam amkingは単にこのクレイジーメガバイトのログが発生しないようにする方法最初に、おそらくログレベルを設定するより高いものによりInfo。ログレベルの設定方法に関するドキュメントが見つからないのは、おそらく公開されていないためでしょう。しかし、まともなソフトウェアがログレベルを設定する方法を提供するので、方法がなければなりません。
更新2:
与えられた答えを見てください。レジストリ設定が有効になり、ログを完全にシャットダウンしたようです。これは問題なく、現在のデフォルトよりもはるかに優れたデフォルトです。レジストリを編集するには、権限を修正する必要があります-付録を参照してください。
付録:Component Based Servicing
レジストリキーの権限
EnableLog
を0
に設定しようとすると、HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing
およびその下にあるものへの書き込みアクセス権がないことに気付くでしょう。 regedit
で[編集]"[権限]に移動し、編集を許可される前に所有権を取得する必要があります。
部分的な答えとして、ログを完全に停止する設定は次のとおりです。レジストリで、次の場所に移動します
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Component Based Servicing]
そしてEnableLog 0
。ソース: https://technet.Microsoft.com/en-us/library/cc732334%28v=ws.10%29.aspx#CBS
CBSログには、「ほとんど何も」をクリーニングしていない場合でも、cleanmgrによって約150〜200Mbのデータが書き込まれるため、クリーニングの代わりにディスクがいっぱいになります。
TrustedInstallerサービスを停止した後、CBSログをクリアできることを確認しました。その後、Windowsモジュールインストーラーを再起動すると、サービスが再開されます。このログは、一部のデバッグプログラムでMicrosoftによって使用されることに注意してください。