• DebugDiag 1.2 - Regras de Hang

    A versão do DebugDiag 1.2 traz algumas novidades muito interessantes, e nos fornece um poder muito grande para lidar com problemas criticos e poder capturar o dado correto no momento correto.

    Uma das novidades é a possibilidade de capturar agora dumps de Hang, baseado em contadores de performance.

    Abaixo eu apresento uma tela da criação de regra de HANG baseada em contadores de performance. Isso é excelente para fazer troubleshootings de performance por exemplo.

    image

     

    Existem uma serie de outras novidades uso de ETW para detectar se o IIS esta respondendo ou não, coleta de dump em serie, exportar e importar regras em maquinas diferentes que estarei comentando nos proximos posts.

  • ARR 2.5 publicado no site IIS.NET

    O ARR é um produto OOB ou Out of Band (Não vem junto ao CD de instalação do Windows), mas pode ser instalado gratuitamente em servidores com Windows 2008 / Windows 2008 R2.

    É um otimo produto para fazer balancamento e cache de paginas e videos, principalmente usando o IIS Smooth Streaming.

    As principais novidades do ARR 2.5 em relação as versões anteriores são:

       * Melhoria na performance e escalabilidade quando usando "disk caching".

       * Todas melhorias do artigo KB2406763, agora ja vem com o produto.

        * Adicionado ao WEBPI - Web Plataform Installer.

    Para instalar o ARR, basta baixar o WEBPI e selecionar o ARR 2.5, ou então baixar o pacote do ARR 2.5 no site www.iis.net:

    • Microsoft Application Request Routing Version 2.5 (x86) Clique aqui.
    • Microsoft Application Request Routing Version 2.5 (x64) Clique aqui.

    Para acessar ler um overview sobre o ARR clique aqui.

  • DebugDiag 1.2 BETA1

    O DebugDiag é uma otima ferramenta para depuração de problemas com o IIS (e outros softwares). É possivel capturar e analisar dumps de memoria
    de crash, hang e memory/handle leak. A ferramenta está atualmente na versão 1.1, e apenas é suportada até o Windows 2003 R2 (x86/x64).

    Uma nova versão da ferramenta esta em desenvolvimento (versão 1.2) e em breve sera lançada. Esta versão ira funcionar nos servidores Windows 2008/ Windows 2008R2
    e esta atualmente em sua fase de desenvolvimento BETA1. Caso queira testar, você pode encontrar uma versão para download em:

    http://viisual.net/tools/DebugDiagv1-2Beta/x86/DebugDiagx86.msi
    http://viisual.net/tools/DebugDiagv1-2Beta/x64/DebugDiagx64.msi

    Siga-me no twitter @GCARNEVALE

  • Usando o Process Explorer para mostrar limites de Paged e Non Paged Pool

    O Kernel do Windows possui duas areas onde os drivers são armazenados de vital importância para a estabilidade e performance do sistema operacional.

    Estas areas são chamadas de PAGED POOL (pode ser armazenado no pagefile), e Non Paged Pool estes ficando exclusivamente na memoria RAM.

    Dependendo de alguns fatores do hardware, memoria RAM disponivel e chaves de registro (“Memory Management”), são definidos os tamanhos limites dos POOLs.

    Você deve ficar sempre atento a utilização de sua memoria em kernel,observando o valor atual e o limite, quando o valor atual alcançar o limite, o sistema operacional ficara instavel e você recebera erros ao realizar diversas operações basicas.

    O Process Explorer (Ferramenta da Microsoft/SysInternals), disponivel em http://live.sysinternals.com, facilita verificar os valores limites. Mas para isto é necessário uma configuração a qual explicarei abaixo. Ao baixar a ferramenta e executar (não é necessário instalação), acionando CTRL+I, uma tela System Information aparece, mas os limites dos pools, não aparecem, veja abaixo:

    image

    Para resolver este comportamento e fazer com que o Process Explorer consiga exibir os valores, é necessário configurar os símbolos, clicando em Options / Configure Symbols. É necessário alterar as duas linhas disponíveis, veja abaixo:

    image

    A primeira linha solicita a localização da DLL DBGHelp (por padrão ela é C:\windows\system32\dbghelp.dll), para seja possivel o Process Explorer automaticamente baixar da internet o arquivo de simbolo, é necessario alterar o valor da DBGHelp, pela versão que acompanha o pacote WINDBG (neste exemplo C:\debuggers\dbghelp.dll) , disponivel no site da Microsoft. Na linha do Symbols path: digite SRV*C:\symbols*http://msdl.microsoft.com/downloads/symbols

    PRONTO ! Agora você pode observar o limite e o valor corrente, veja novamente o System Information (CTRL+I).

    image

    Referência para limites máximos de Paged e Non-Paged Pool, lembre-se o valor limite é calculado no momento do boot.

    image

    Caso você não tenha conexão internet no servidor, continue lendo:

    Os passos acima se fazem necessario igualmente, mas devido a você não ter acesso a internet, é necessario usar um utilitario do pacote WINDBG para gerar um arquivo TXT com o arquivo de simbolo necessario, e então em outro computador com acesso a internet você pode utiliza-lo para baixar e enfim levar o arquivo de simbolo para o servidor que nao possui conexão com a internet.

    1. Baixe o Windbg

    2. Instale o Windbg em c:\debuggers (ou outra pasta qualquer)

    3. Execute no servidor: C:\debuggers\symchk.exe /om c:\Lista.txt /if c:\windows\system32\ntoskrnl.exe  (Para sistemas com processador unico)

              Ou: c:\debuggers\symchk.exe /om c:\Lista.txt /if C:\WINDOWS\system32\dllcache\ntkrpamp.exe  (Para sistemas multi-processor)

    4. Execute em uma estação com Internet: C:\debuggers\symchk.exe /im c:\Lista.txt /s SRV*c:\Symbols*http://msdl.microsoft.com/download/symbols

    5. Copie o diretorio C:\symbols da estação para o servidor com o Process Explorer e pronto ! Agora você também pode ver os valores limites do POOL.

  • Troubleshooting IIS Errors

    Em algumas situações de falta de recurso de sistema por exemplo, pode acontecer de você tentar abrir um site, e o Internet Explorer exibir uma pagina já conhecida “The Page Cannot Be Displayed” ou em português “A Pagina não pode ser Exibida”. Na maioria das vezes esta mensagem significa que o servidor web esta realmente fora do ar ou seja, com a porta que recebe as conexões fora do ar mesmo. Mas isto não é verdade para 100% dos casos, então deixo uma dica para vocês terem 100% de certeza antes de pensar que o servidor web esta realmente fora do ar.

    Usem o Internet Explorer como forma de teste inicial, caso recebam a mensagem “The Page Cannot be Displayed”, utilizem o utilitário que é um “Browser Avançado”, chamado WFETCH. Ele não exibe figuras, mas mostra todo conteudo retornado do servidor, e alguns detalhes preciosos que o Internet Explorer não exibe.

    O WFETCH pode ser obtido em conjunto com o IIS 6 Resource KIT ou separadamente através do seguinte link para download:

    http://www.microsoft.com/downloads/details.aspx?FamilyID=b134a806-d50e-4664-8348-da5c17129210&displaylang=en

    Referência de uso: http://support.microsoft.com/kb/284285