18

В Windows 7 (Home Premium 64 Bit)сотни мегабайт журналов, которые никто никогда не захочет читать, записываются в 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 Services, псевдоним Trusted Installer, см. Раздел Понимание обслуживания на основе компонентов, апрель 2008 г., Microsoft Technet) на данный момент занимает 700 МБ, 200 из которых записаны за последние 30 минут. с первой записью от 9 дней назад.

Всего около 3 миллионов записей, и почти все это на уровне логики Info. Имейте в виду, это читаемый человеком формат файла журнала, очевидно, не для машинной обработки. Не знаю как вы, но мысль о том, что я должен учитывать 3 миллиона строк Info по умолчанию, кажется мне граничащей с абсурдом.

Я хочу, чтобы это прекратилось, потому что работа с диском и процессором не служит никакой цели, кроме ненужного замедления работы системы.

Итак: Как мне установить уровень журнала на Предупреждение или Ошибка? Где это задокументировано?

Плюс: представьте себе, что вместо того, чтобы пробираться через сотни мегабайт информации (чуть больше недели), вы сохраняете только ~ 100 строк ошибок ? Разве это не имеет смысла и действительно дает подсказки в устранении неполадок? Тогда у вас все еще будет возможность включить Info на случай, если возникнет неочевидная проблема с установкой.

Обновить:

Читая комментарии, кажется, я не достаточно ясно сформулировал свой вопрос. Я не спрашиваю, как отфильтровать огромный файл журнала с помощью утилит командной строки - потому что я уже знаю, как это сделать. Я также не спрашиваю, как обращаться с файлами журналов путем ротации журналов - потому что Windows сделает это самостоятельно, когда файл достигнет некоторого неизвестного порога (хотя вы найдете людей, спрашивающих, почему файл достигает 20 гигов). То, что я спрашиваю, это просто как остановить эту сумасшедшую регистрацию в гектомегабайтах , возможно, сначала установив уровень журнала выше, чем Info. Я просто не могу найти документацию о том, как установить уровень журнала, возможно, потому что он не существует публично. Но должен быть способ, потому что любое приличное программное обеспечение предоставляет способ установить уровень журнала.

Обновление 2:

Смотрите ответ, данный. Кажется, настройки реестра вступают в силу и полностью закрывают журнал. Что хорошо и намного лучше по умолчанию, чем текущий. Для того, чтобы внести изменения в реестр, вам необходимо исправить разрешения - см. Приложение.

Приложение. Разрешения для раздела реестра для обслуживания на Component Based Servicing

Когда вы попытаетесь установить для EnableLog значение 0 , вы, вероятно, заметите, что у вас нет прав на запись в HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing и другие материалы под ним. Вам нужно перейти «Редактировать» Разрешения »в regedit а затем вступить во владение, прежде чем разрешить вносить изменения:

Примите право собственности и дайте себе разрешение на запись

2 ответа2

10

В качестве частичного ответа здесь приведена настройка для полной остановки регистрации: в реестре перейдите к

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

2

Журнал CBS также заполняется программой cleanmgr примерно 150–200 МБ данных, даже при чистке почти «ничего», таким образом заполняя ваш диск вместо очистки.

Я обнаружил, что журнал CBS можно очистить после остановки службы TrustedInstaller, после перезапуска установщика модулей Windows после этого служба снова запустится. Имейте в виду, что журнал используется Microsoft в некоторых программах отладки.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .