Analisando chocolatey.log

Esta parte irá focar em como solucionar falhas na instalação de pacotes chocolatey.

Requisitos

Os seguintes itens são necessários ou úteis para solução de problemas:

  • Arquivos de log, especialmente chocolatey.log.

  • Editor de texto de sua escolha com capacidades de busca avançada, recomendado: Notepad++, Visual Studio Code.

  • ID do pacote que falhou, como generic-mozilla-firefox.

  • Carimbo de data/hora da(s) instalação(ões) com falha (não obrigatório, mas útil).

Estrutura do arquivo de log

Ponto de entrada e informações de depuração

Para encontrar o ponto de entrada da instalação do pacote dentro do chocolatey.log use esta string de busca exata (adicione o id do pacote conforme necessário): generic-mozilla-firefox --version= (se você tiver certeza sobre a string de versão, pode adicioná-la, claro, mas não é obrigatório)

Dessa forma você encontrará o(s) ponto(s) de partida do processo choco para a instalação ou atualização do ID de pacote fornecido.

A linha completa no log pode parecer assim, ao invés de atualizar pode também ser instalar dependendo da operação:

2023-08-22 15:05:36,664 [DEBUG] - Command line: "C:\ProgramData\chocolatey\choco.exe" upgrade generic-mozilla-firefox --version=117.0.0.0 --force --yes --ignore-package-exit-codes --timeout=14400 --params="/BlockAddons:1"
Ponto de entrada de uma instalação choco dentro do chocolatey.log

Esta linha já contém algumas informações importantes, como o número da versão do pacote a ser instalado, assim como os params usados (argumentos do pacote configurados no Portal RealmJoin).

As linhas seguintes conterão muitas informações de depuração (não relevantes), entre outras, o conteúdo completo do chocolateyInstall.ps1 será impresso. Dentro das informações de depuração você verá as duas seções RJAppDeployToolkit: Input Environment Variables quanto para RJAppDeployToolkit: Resulting Variables. Ambas as seções estão localizadas lado a lado e mostram variáveis e valores fornecidos pelo RJAppDeployToolkit

Saída do RJAppDeployToolkit

Processo de instalação

O script real de instalação do pacote começa após a seguinte mensagem no log:

Dependendo do script de instalação do pacote e do estado do cliente, o primeiro passo geralmente será verificar se o software já está instalado. Isso é feito para determinar se uma desinstalação será necessária antes da instalação propriamente dita. Nos logs isso pode ser rastreado usando uma ou mais das seguintes mensagens de log:

Após as verificações e as possíveis desinstalações terem sido executadas, a instalação principal da aplicação começará, indicada pela seguinte mensagem no log (o nome do arquivo diferirá, claro):

A instalação normalmente começará com o download do arquivo binário. Início e fim do download são representados pelas seguintes mensagens no log:

Após completar o download, o chocolatey verificará o hash do arquivo baixado e o comparará com o valor esperado. Se os hashes coincidirem, o arquivo de instalação será finalmente executado. A mensagem no log para a execução pode ser encontrada pela seguinte mensagem no log:

Esta mensagem inclui o caminho do arquivo de instalação, bem como a linha de comando completa, incluindo todos os parâmetros (silenciosos) usados para iniciar o instalador. Também ajudará a encontrar o caminho do arquivo de log do instalador relevante, se oferecido pelo instalador e incluído no script do pacote.

Após o processo terminar, outra mensagem de log será escrita, novamente incluindo o caminho completo do arquivo e todos os parâmetros. Além disso, esta mensagem também incluirá o código de saída retornado pelo processo de instalação, o indicador mais importante para uma instalação bem-sucedida ou mal-sucedida:

Dependendo do pacote, a instalação do pacote pode agora ser seguida por chamadas chamadas 'postActions', que podem ser algumas configurações de registro, remoção de ícones da área de trabalho ou até executar outro instalador (recomeçando com o download desse arquivo). A parte de postActions será indicada pelas seguintes mensagens de início e fim no arquivo de log:

O processo de instalação do chocolatey será encerrado com a seguinte mensagem no log (a redação pode diferir dependendo de instalar / atualizar):

Last updated

Was this helpful?