Depurar seu suplemento com o log de tempo de execução

Use o log do tempo de execução para depurar o manifesto do suplemento e vários erros de instalação. Esse recurso ajuda a identificar e corrigir problemas com seu manifesto que a validação de esquema XSD não captura, como uma incompatibilidade entre IDs de recurso. O registro em log do tempo de execução é especialmente útil para depurar suplementos que implementam comandos de suplemento e funções personalizadas do Excel.

Observação

O log de runtime captura diagnósticos no nível do host, como resultados de análise de manifesto, erros de carregamento de suplementos e condições de inicialização. Ele não captura a saída do JavaScript console.log() . Para depuração geral de JavaScript, use as ferramentas de desenvolvedor para sua plataforma. Consulte Depurar suplementos usando ferramentas de desenvolvedor no Microsoft Edge.

Importante

O registro em log de tempo de execução afeta o desempenho. Ative-a somente quando precisar depurar problemas com o manifesto do suplemento.

Use o log de tempo de execução na linha de comandos

A maneira mais rápida de usar essa ferramenta de log é habilitar o log de runtime a partir da linha de comando.

Importante

A ferramenta office-addin-dev-settings não tem suporte no Mac. Para obter instruções específicas do Mac, consulte a seção Registro de tempo de execução no Mac.

  • Para habilitar o log de tempo de execução:

    npx office-addin-dev-settings runtime-log --enable
    
  • Para habilitar o log de tempo de execução e gravar a saída em um caminho de arquivo personalizado:

    npx office-addin-dev-settings runtime-log --enable <path\to\output.txt>
    

    Substitua <path\to\output.txt> pelo caminho onde você deseja que o log seja gravado, como C:\temp\addin_debug.txt. Esse argumento define apenas o local do arquivo de saída. Ele não filtra quais suplementos são registrados. O registro em log do tempo de execução sempre se aplica a todos os suplementos carregados no tempo de execução do Office nesse computador.

    Observação

    Quando você executa --enable sem um nome de arquivo, o Office grava o log em um local padrão. Especificar um nome de arquivo altera onde o log é gravado, não o que é registrado.

  • Para desabilitar o log de tempo de execução:

    npx office-addin-dev-settings runtime-log --disable
    
  • Para exibir se o log de tempo de execução está ativado:

    npx office-addin-dev-settings runtime-log
    
  • Para exibir ajuda na linha de comandos para o log de tempo de execução:

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

Log de tempo de execução no Mac

  1. Abra o Terminal e defina uma preferência de log de tempo de execução usando o comando defaults:

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

    <bundle id> Identifica o host para o qual habilitar o registro em log de tempo de execução. <file_name> é o nome do arquivo de texto no qual o log é gravado.

    Defina <bundle id> como um dos valores a seguir para habilitar o log de runtime para o aplicativo correspondente.

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

O exemplo a seguir habilita o log de runtime para o Word e abre o arquivo de log.

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

Observação

Você precisa reiniciar o Office depois de executar o comando para habilitar o defaults log do tempo de execução.

Para desativar o log de tempo de execução, use o comando defaults delete:

defaults delete <bundle id> CEFRuntimeLoggingFile

O exemplo a seguir desativa o log em tempo de execução do Word.

defaults delete com.microsoft.Word CEFRuntimeLoggingFile

Use o log do tempo de execução para solucionar problemas em seu manifesto

Para usar o log do tempo de execução para solucionar problemas ao carregar um suplemento:

  1. Realize o sideload do seu suplemento para teste.

    Observação

    Para minimizar o número de mensagens no arquivo de log, faça o sideload apenas do suplemento que você está testando.

  2. Se nada acontecer e você não vir seu suplemento (e ele não estiver aparecendo na caixa de diálogo de suplementos), abra o arquivo de log.

    Observação

    Um arquivo de log vazio ou quase vazio é esperado quando o suplemento é carregado sem erros no nível do host. O registro em log do tempo de execução registra apenas o manifesto e o carregamento dos diagnósticos. Ele não conterá entradas se o suplemento for carregado corretamente. Se você estiver procurando a saída do JavaScript console.log() , use as ferramentas de desenvolvedor para sua plataforma.

  3. Procure pela ID de seu suplemento no arquivo de log, definida no seu manifesto. No arquivo de log, essa ID está marcada como SolutionId.

Problemas conhecidos com o log de tempo de execução

Talvez você veja mensagens no arquivo de log que são confusas ou que estão classificadas incorretamente. Por exemplo:

  • A mensagem Medium Current host not in add-in's host list seguida por Unexpected Parsed manifest targeting different host é incorretamente classificada como um erro.

  • Se você vir a mensagem Unexpected Add-in is missing required manifest fields DisplayName e ela não contiver uma SolutionId, o erro provavelmente não está relacionado ao suplemento que você está depurando.

  • Qualquer mensagem Monitorable indica erros esperados do ponto de vista do sistema. Às vezes, indica um problema com o seu manifesto, como um elemento que foi soletrado incorretamente e que foi ignorado, mas que não fez com que o manifesto falhasse.

Confira também