Visualizando Logs ao vivo no Windows
no mundo da solução de problemas de aplicativos, os logs do aplicativo são seu melhor amigo. Às vezes você sabe quando seu erro está acontecendo, mas às vezes você precisa saber, até o momento, quando o erro aparece nos arquivos de log. Em outras palavras, às vezes você deseja visualizar todas as atualizações do log exatamente como elas acontecem. Se você está trabalhando no Windows e se encontra nesta posição, aqui está um resumo rápido das minhas maneiras favoritas de visualizar arquivos de log ao vivo.
estou usando uma instância do Sitecore para esses exemplos, mas esses métodos funcionam para visualizar todos os logs de texto e não apenas os logs do Sitecore.
Método 1: o Windows PowerShell
No Windows PowerShell, o comando básico para viver-ver as atualizações para um arquivo:
Get-Content {MyFile} -Wait -Tail 30
Utilização:
cd C:\inetpub\wwwroot\MySitecoreInstance\Data\logsGet-Content Log.20160706.txt -Wait -Tail 30
No caso de Sitecore, e, provavelmente, muitas outras soluções, mais recentemente arquivo modificado é o log ativo. Aqui está um comando que escrevi para obter conteúdo automaticamente no arquivo modificado mais recentemente (que corresponde ao log do Sitecore.*.padrão txt) no diretório:
cd C:\inetpub\wwwroot\MySitecoreInstance\Data\logsgci -Filter log.*.txt | sort LastWriteTime | select -last 1 | Get-Content -Wait -Tail 30
Assistir Sitecore de rotação de log…
A vantagem deste método é a sua disponibilidade em qualquer sistema que tenha PowerShell instalado, e o PowerShell é instalada por padrão em sistemas que executam o Windows 7 e acima. Uma pequena desvantagem, quando executo este comando nos sistemas Win7, é uma baixa taxa de atualização. Isso parece ter sido corrigido no Win8 em diante.
Método 2: Baretail.exe
nomeado após o comando “tail” do mundo Unix / Linux, Baretail é um executável livre, leve e autônomo. O único trabalho do Baretail é visualizar arquivos de log ao vivo e também possui alguns recursos interessantes, como codificação de cores. Quando eu usei este aplicativo, ele serviu seu propósito muito bem. A desvantagem inerente de Baretail é que alguns sistemas serão mais bloqueados (leia-Se: servidores de produção), e isso significa não funcionar .arquivos exe que você retirou da Internet. É por isso que o Método 1 é mais comum para mim; há uma chance muito melhor de que o PowerShell esteja em um servidor. Também vale a pena mencionar que Baretail não viu uma nova versão lançada desde 2006, mas o aplicativo ainda parece ser compatível com a versão mais recente do Windows 10.
eu disse a Baretail para destacar linhas contendo “erro”.
eu ouvi Doc Monitor plugin para Notepad++ mencionado como uma solução semelhante ao Baretail.exe, mas eu não tentei isso sozinho. Suponho que isso enfrentará desvantagens semelhantes: isso só será utilizável em sistemas onde o Notepad++ está instalado.
Método 3: O comando Tail
este será um caso raro, mas estou jogando para a variedade. Suponha que você esteja trabalhando em um sistema que tenha o Subsistema Windows Para Linux*, Cygwin ou qualquer outra coisa que forneça um shell semelhante ao Unix no Windows. Se você faz parte deste caso de borda, você tem o comando Tail disponível, que existe há décadas e é muito decente. Semelhante ao comando PowerShell que escrevi, usar este comando * * em seu shell puxará o log do Sitecore atual e seguirá:
tail -f `ls -t /mnt/c/inetpub/wwwroot/MySitecoreInstance/Data/logs/log.* | head -n1`
cauda em execução no subsistema Windows Para Linux.
*a partir de 7/6/16, o subsistema do Windows Para Linux ainda está em beta e está disponível apenas para usuários do Windows 10 que fazem parte do Programa Windows Insider e habilitaram atualizações rápidas do Ring. Claro, isso vai mudar no futuro.
* * no WSL, a unidade C é mapeada para /mnt / c/. No Cygwin, a unidade C é mapeada para / cygdrive / c/.
Menção Honrosa: Sitecore Log Analyzer
para você Desenvolvedores Sitecore, tenho que jogar isso porque é uma ferramenta tão valiosa e vejo tantos desenvolvedores Sitecore que nem sabem que existe: o Sitecore Log Analyzer (SCLA). Embora isso não permita que você visualize arquivos de log ao vivo, o SCLA fornece uma análise detalhada dos arquivos de log, facilitando o rastreamento de tendências de erros, cronogramas e muito mais. Considero o SCLA uma ferramenta essencial para o Suporte do Sitecore.
sobre o autor
Jacob King é Consultor Técnico Sênior da Perficient, especializado em soluções Sitecore. Ele mora em Indianápolis com sua esposa e filho.
Mais deste Autor