Журнал операций в службах Analysis Services

Применимо к: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

Экземпляр служб Analysis Services регистрирует уведомления, ошибки и предупреждения сервера в файле msmdsrv.log — по одному для каждого устанавливаемого экземпляра. Администраторы обращаются к этому журналу для анализа как обычных, так и непредвиденных событий. В последних версиях ведение журнала было усовершенствовано, чтобы собирать больше сведений. Записи журнала теперь включают сведения о версии и выпуске продукта, а также о процессоре, памяти, подключении и событиях блокировки. Список всех изменений можно просмотреть в разделе Улучшения ведения журнала.

Помимо встроенного ведения журнала, многие администраторы и разработчики используют средства, предоставляемые сообществом служб Analysis Services для сбора данных об операциях сервера, например ASTrace.

Этот раздел состоит из следующих подразделов.

Расположение и типы журналов

Службы Analysis Services предоставляют журналы, описанные ниже.

Имя файла или расположение Тип Используется для По умолчанию включено
Msmdsrv.log Журнал ошибок Постоянное наблюдение и устранение основных неполадок Да
Таблица OlapQueryLog реляционной базы данных Журнал запросов Сбор входных данных для мастера оптимизации использования Нет
Файлы GUID.mdmp> SQLDmp< Сбои и исключения Устранение серьезных неполадок Нет

Настоятельно рекомендуется ознакомиться со следующей ссылкой для получения дополнительных сведений, не охваченных в этом разделе. Подсказки к начальному сбору данных от службы технической поддержки Майкрософт.

Общие сведения о параметрах конфигурации файла журнала

Разделы для каждого журнала можно найти в файле конфигурации сервера msmdsrv.ini, расположенном в папке \Program Files\Microsoft SQL Server\MSAS13.MSSQLSERVER\OLAP\Config. Инструкции по редактированию файла см. в разделе Свойства сервера в службах Analysis Services .

По возможности рекомендуется задать свойства ведения журнала на странице свойств сервера Management Studio. Тем не менее иногда необходимо изменить файл msmdsrv.ini непосредственно для настройки параметров, которые не отображаются в средствах администрирования.

Раздел файла конфигурации с параметрами журнала

Файл журнала службы MSMDSRV

Службы Analysis Services записывают операции сервера в файл msmdsrv.log по одному на экземпляр, расположенный в папке \program files\Microsoft SQL Server\<instance>\Olap\Log.

Этот файл журнала очищается при каждом перезапуске службы. В предыдущих выпусках администраторы иногда перезапускали службу с единственной целью очистить файл журнала, прежде чем он станет настолько большим, что его нельзя будет использовать. Это больше не требуется. Параметры конфигурации, появившиеся с выходом в SQL Server 2012 с пакетом обновления 2 (SP2) и более поздних версий, позволяют управлять размером файла журнала и его историей:

  • MaxFileSizeMB определяет максимальный размер файла журнала в мегабайтах. Значение по умолчанию равно 256. Допустимое замещающее значение должно быть положительным целым числом. Когда будет достигнут размер MaxFileSizeMB , службы Analysis Services переименовывают текущий файл в msmdsrv{текущая_отметка_времени}.log и начинают новый файл msmdsrv.log.

  • MaxNumberFiles задает параметры хранения старых файлов журнала. Значение по умолчанию равно 0 (отключено). Его можно изменить на положительное целое число, чтобы хранить версии файла журнала. Когда будет достигнуто MaxNumberFiles , службы Analysis Services удаляют файл с самой старой отметкой времени в имени.

Чтобы использовать эти параметры, выполните следующие действия:

  1. Откройте msmdsrv.ini в блокноте.

  2. Скопируйте следующие две строки:

    <MaxFileSizeMB>256</MaxFileSizeMB>  
    <MaxNumberOfLogFiles>5</MaxNumberOfLogFiles>  
    
  3. Вставьте две строки в раздел Log msmdsrv.ini под именем файла для msmdsrv.log. Оба параметра необходимо добавить вручную. В файле msmdsrv.ini для них не существует заполнителей.

    Измененный файл конфигурации должен выглядеть следующим образом:

    <Log>  
    <File>msmdsrv.log</File>  
    <MaxFileSizeMB>256</MaxFileSizeMB>  
    <MaxNumberOfLogFiles>5</MaxNumberOfLogFiles>  
    <FileBufferSize>0</FileBufferSize>  
    
    
  4. Измените значения, если описанные выше отличаются от необходимых.

  5. Сохраните файл.

  6. Перезапустите службу.

Журналы запросов

Журнал запросов можно включить только для экземпляров служб Analysis Services в многомерном режиме. Журнал запросов не может быть включен для экземпляров табличного режима.

Журнал запросов — немного неверное название, в том смысле, что он не регистрирует действия пользователей, связанные с запросами MDX или DAX. Вместо этого он собирает данные о запросах, сформированные службами Analysis Services, которые впоследствии используются в качестве входных данных в мастере оптимизации с учетом использования. Данные, собранные в журнале запросов, не предназначены для прямого анализа. В частности, наборы данных описаны в битовых массивах, при этом ноль или один указывают на части набора данных, включенные в запрос. Эти данные тоже предназначены для мастера.

Для мониторинга и устранения неполадок запросов многие разработчики и администраторы используют средство сообщества ASTrace. Также можно использовать приложение SQL Server Profiler, xEvents или трассировку служб Analysis Services.

Когда следует использовать журнал запросов Рекомендуется включить журнал запросов как часть процедуры по настройке производительности запросов, включающей мастер оптимизации с учетом использования. Журнал запросов не существует, пока не включен компонент, не создана поддерживающая структура данных и не заданы свойства, используемые службами Analysis Services для обнаружения и заполнения журнала.

Чтобы включить журнал запросов, выполните следующие действия.

  1. Создайте реляционную базу данных SQL Server для хранения журнала запросов.

  2. Предоставьте учетной записи службы Analysis Services достаточно разрешений в базе данных. Учетной записи необходимо предоставить разрешение на создание таблицы, записи в таблицу и считывания из таблицы.

  3. В SQL Server Management Studio щелкните правой кнопкой мышиСвойства | служб Analysis Services | Общие и задайте для createQueryLogTable значение true.

  4. При необходимости измените QueryLogSampling или QueryLogTableName , если необходимо собирать образцы запросов с другой скоростью или использовать другое имя для таблицы.

Таблица журнала запросов не будет создана, пока не выполнится достаточно запросов многомерных выражений для соответствия требованиям выборки. Например, если оставить значение по умолчанию 10, то необходимо запустить по крайней мере 10 запросов, прежде чем таблица будет создана.

Параметры журнала запросов применяются ко всему серверу. Указанные настройки будут использоваться всеми базами данных на этом сервере.

Параметры журнала запросов в Среде Management Studio

После того как параметры конфигурации указаны, запустите запрос многомерных выражений несколько раз. Если значение выборки равно 10, запустите запрос 11 раз. Убедитесь, что таблица создана. В среде Management Studio подключитесь к ядру реляционной СУБД, откройте папку базы данных, откройте папку Таблицы и убедитесь, что OlapQueryLog существует. Если таблица сразу не отображается, обновите содержимое папки, чтобы отобразить изменения содержимого.

Разрешите журналу запросов накопить достаточно данных для мастера оптимизации с учетом использования. Если запросы томов являются цикличными, необходимо захватить достаточно трафика, чтобы получить репрезентативный набор данных. Инструкции по запуску мастера см. в разделе Мастер оптимизации с учетом использования .

Дополнительные сведения о настройке журнала запросов см. в разделе Настройка журнала запросов служб Analysis Services . Несмотря на то что документ довольно старый, настройка журнала запросов не изменилась в последних выпусках и сведения этого раздела до сих пор актуальны.

Файлы мини-дампа (*.mdmp)

Файлы дампа записывают данные, используемые для анализа непредвиденных событий. Службы Analysis Services автоматически создают мини-дампы (с расширением MDMP) в ответ на сбой сервера, исключения и ошибки конфигурации. Эта функция включена, но автоматически не отправляет отчеты о сбоях.

Отчеты о сбоях настраиваются через раздел Exception в файле Msmdsrv.ini. На основе этих параметров создается файл дампа памяти. Следующий фрагмент кода показывает значения по умолчанию:

<Exception>  
<CreateAndSendCrashReports>1</CreateAndSendCrashReports>  
<CrashReportsFolder/>  
<SQLDumperFlagsOn>0x0</SQLDumperFlagsOn>  
<SQLDumperFlagsOff>0x0</SQLDumperFlagsOff>  
<MiniDumpFlagsOn>0x0</MiniDumpFlagsOn>  
<MiniDumpFlagsOff>0x0</MiniDumpFlagsOff>  
<MinidumpErrorList>0xC1000000, 0xC1000001, 0xC102003F, 0xC1360054, 0xC1360055</MinidumpErrorList>  
<ExceptionHandlingMode>0</ExceptionHandlingMode>  
<CriticalErrorHandling>1</CriticalErrorHandling>  
<MaxExceptions>500</MaxExceptions>  
<MaxDuplicateDumps>1</MaxDuplicateDumps>  
</Exception>  

Настройка отчетов о сбоях

Если иное не рекомендуется службой поддержки корпорации Майкрософт, большинство администраторов используют параметры по умолчанию. Эта старая статья базы знаний еще используется для предоставления инструкций по настройке файлов дампа. Настройка служб Analysis Services для создания файлов дампа памяти.

Наиболее вероятный параметр конфигурации, который будет изменен, — CreateAndSendCrashReports . Он используется, чтобы определить, будет ли создаваться файл дампа памяти.

Значение Описание
0 Отключает файл дампа памяти. Все остальные параметры в разделе Exception игнорируются.
1 (По умолчанию) Включает, но не отправляет файл дампа памяти.
2 Включает и автоматически отправляет отчет об ошибках в корпорацию Майкрософт.

CrashReportsFolder — местоположение файлов дампа. По умолчанию MDMP-файл и связанные записи журнала можно найти в папке \Olap\Log.

SQLDumperFlagsOn используется для создания полного дампа. По умолчанию полные дампы памяти не включены. Для этого свойства можно задать значение 0x34.

Дополнительные сведения см. по следующим ссылкам:

Советы и рекомендации

Этот раздел содержит повторение советов, упоминаемых в этой статье.

  • Настройка файла msmdsrv.log для управления размером и количеством файлов журнала msmdsrv. Параметры не включены по умолчанию, поэтому необходимо добавить их в качестве шага после выполнения установки. См. раздел Файл журнала службы MSMDSRV в этой статье.

  • Используйте ASTrace, а не журнал запросов, чтобы узнать, кто запрашивает кубы. Журнал запросов обычно используется для ввода данных в мастер оптимизации с учетом использования, и данные, которые он записывает, не просто прочитать или интерпретировать. ASTrace — это широко используемое средство сообщества, которое фиксирует операции запросов.

См. также раздел

Управление экземплярами служб Analysis Services

Свойства сервера в службах Analysis Services