Поделиться через


Отладка надстройки с помощью журнала среды выполнения

Вы можете использовать ведение журнала в среде выполнения для отладки манифеста надстройки, а также некоторых ошибок установки. Эта функция может помочь вам определять и устранять проблемы с манифестом, которые не обнаруживаются при проверке схемы XSD, например несоответствие идентификаторов ресурсов. Ведение журнала среды выполнения особенно полезно для отладки надстроек, которые реализуют команды надстроек и пользовательские функции Excel.

Примечание.

Функция ведения журнала среды выполнения в настоящее время доступна для Office 2016 или более поздней версии на рабочем столе.

Важно!

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

Использование журнала в среде выполнения с помощью командной строки

Самый быстрый способ приступить к использованию этого средства ведения журнала — включить ведение журнала в среде выполнения с помощью командной строки. При этом используется npx (обычно поставляется как часть npm версии 5.2.0 и новее). Если у вас более ранняя версия npm, попробуйте воспользоваться инструкциями Ведение журнала в среде выполнения Windows или Ведение журнала в среде выполнения на компьютере Mac либо установите npx.

Важно!

Средство office-addin-dev-settings не поддерживается на Mac.

  • Включение ведения журнала в среде выполнения:

    npx office-addin-dev-settings runtime-log --enable
    
  • Чтобы включить ведение журнала в среде выполнения только для определенного файла, используйте ту же команду с именем файла:

    npx office-addin-dev-settings runtime-log --enable [filename.txt]
    
  • Отключение ведения журнала в среде выполнения:

    npx office-addin-dev-settings runtime-log --disable
    
  • Определение, включено ли ведение журнала в среде выполнения:

    npx office-addin-dev-settings runtime-log
    
  • Отображение справки в командной строке для ведения журнала в среде выполнения:

    npx office-addin-dev-settings runtime-log --help
    

Ведение журнала в среде выполнения в Windows

  1. Убедитесь, что у вас установлена сборка Office 2016 16.0.7019 или выше.

  2. Добавьте раздел реестра RuntimeLogging в раздел HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\16.0\WEF\Developer\.

    Примечание.

    Developer Если ключ (папка) еще не существует в HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\16.0\WEF\, выполните следующие действия, чтобы создать его.

    1. Щелкните правой кнопкой мыши (или выберите и удерживайте) ключ (папку ) WEF и выберите Новый>ключ.
    2. Назовите новый ключ Разработчик.
  3. В качестве значения параметра RuntimeLogging по умолчанию задайте полный путь к файлу, в который будет записываться журнал. Следующий пример запуска в .reg файле задает для ведения журнала папку C:\ClientLogs\log.txt .

    [HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\16.0\Wef\Developer\RuntimeLogging]
    @="C:\\ClientLogs\\log.txt"`
    

    Примечание.

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

Ниже показано, как должен выглядеть реестр. Чтобы отключить функцию, удалите из реестра раздел RuntimeLogging.

Редактор реестра с разделом реестра RuntimeLogging.

Ведение журнала в среде выполнения на компьютере Mac

  1. Убедитесь, что вы используете office 2016 классической сборки 16.27.19071500 или более поздней версии.

  2. Откройте приложение Терминал и настройте параметры ведения журнала в среде выполнения с помощью команды defaults:

    defaults write <bundle id> CEFRuntimeLoggingFile -string <file_name>
    

    <bundle id> указывает, для какого узла требуется включить ведение журнала в среде выполнения. <file_name> — это имя текстового файла, в который будет записан журнал.

    Задайте <bundle id> одно из следующих значений, чтобы включить ведение журнала в среде выполнения для соответствующего приложения.

    • com.microsoft.Word
    • com.microsoft.Excel
    • com.microsoft.Powerpoint
    • com.microsoft.Outlook

В следующем примере включается ведение журнала среды выполнения для Word, а затем открывается файл журнала.

defaults write com.microsoft.Word CEFRuntimeLoggingFile -string "runtime_logs.txt"
open ~/library/Containers/com.microsoft.Word/Data/runtime_logs.txt

Примечание.

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

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

defaults delete <bundle id> CEFRuntimeLoggingFile

В следующем примере отключается ведение журнала среды выполнения для Word.

defaults delete com.microsoft.Word CEFRuntimeLoggingFile

Используйте журнал среды выполнения для устранения неполадок манифеста

Чтобы устранить проблемы с загрузкой надстройки, используя журнал среды выполнения:

  1. Загрузите неопубликованную надстройку для тестирования.

    Примечание.

    Рекомендуем загружать только тестируемую надстройку, чтобы уменьшить количество сообщений в файле журнала.

  2. Если ничего не происходит и надстройка не отображается в диалоговом окне надстроек, откройте файл журнала.

  3. Выполните в этом файле поиск по идентификатору надстройки, определенному в манифесте. В файле журнала этот идентификатор отмечен как SolutionId.

Известные проблемы с ведением журнала в среде выполнения

В файле журнала могут встречаться непонятные или неправильно классифицированные сообщения. Например:

  • сообщение Medium Current host not in add-in's host list с дополнением Unexpected Parsed manifest targeting different host неправильно классифицируется как ошибка.

  • Если появится сообщение Unexpected Add-in is missing required manifest fields DisplayName, не содержащее SolutionId, то ошибка, скорее всего, не связана с надстройкой, отладка которой выполняется.

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

См. также