Início > Microsoft Utilities, Windows Client/Server > Como ser um troubleshooter com o Resource Monitor do Windows 7

Como ser um troubleshooter com o Resource Monitor do Windows 7

julho 10, 2010

Olá caro leitor,

Hoje vou falar sobre uma excelente ferramenta presente no Windows 7, o Resource Monitor.

Em nosso dia a dia como profissionais de IT, constantemente, nos deparamos com situações onde é necessário realizar algum troubleshooting nos sistemas que gerenciamos.

Alto consumo de CPU, Network e memória são situações corriqueiras e que muitas vezes, demandam o conhecimento de software não nativos dos sistema operacional para realizar tais análises.

É muito comum o uso de ferramentas da SysInternals, as quais eu recomendo também por serem excelentes.

Processo Explorer, AutoRuns, Process Monitor estão entre as mais utilizadas para realizar um trobleshooting mais detalhado em sistemas operacionais Windows.

Com a chegada do Windows Vista e preservado no Windows 7, temos uma ferramenta pouco usada para fins de troubleshooting nestas duas versões do Windows. O Resource Monitor (resmon).

O Resource Monitor é uma ferramenta nativa do Windows Vista/7 que permite um troubleshooting mais detalhado sobre o que está realmente ocorrendo com processos, serviços, conexões de rede e leitura/gravação de dados em disco no Windows.

Com o Resource Monitor, é possível filtrar processos, suas conexões, leituras/escritas específicos e verificar muitas informações que nos permitem diagnosticar alguns das questões mais comuns encontradas em nossa rotína de trabalho.

Um exemplo clássico de sua utilização e diagnóstico, é quando temos instâncias SVCHOST fazendo alto consumo de CPU. Instâncias SVCHOST possuem diversos miniaplicativos vinculadas as estas sendo executados e por muitas vezes usuários interrompem uma instância que faz alto uso de CPU para corrigir o problema.

No entanto, este é um tratamento errado já que, não diagnosticamos o problema em si e literalmente encerramos diversos outros serviços que não necessariamente deveriam receber este mesmo procedimento.

Logo, é muito mais produtivo encontrar um determinado serviço que faz alto consumo de CPU em determinada instância SVCHOST e em seguida, desativá-lo e/ou procurar por possíveis causas/soluções para tratar e resolver o problema.

Mas como fazer isto? Eis aqui a resposta! Com o Resource Monitor. Vejamos mais adiante como realizar um troubleshooting de um serviço que esteja fazendo alto consumo de CPU em um host.

Existem três (3) meios para acessar a interface do Resource Monitor.

  1. Start (Iniciar) > All Programs (Todos os Programas) > Accessories (Acessórios) > System Tools (Ferramentas de Sistema) > Resouce Monitor (Monitor de Recursos).
  2. Pressionar Ctrl+Alt+Del e/ou clicar com o botão direto sobre a barra de ferramentas e escolher Task Manager (Gerenciador de Tarefas), selecionar a tab Performance (Desempenho) e clicar no botão Resource Monitor na parte inferior direita.
  3. Start (Iniciar) > Run (Executar) e/ou pressionar as teclas Windows Key + R, digitar resmon e pressionar ENTER.

Todos os três meios levam a exibição da interface abaixo, o Rescource Monitor:

Resource Monitor Overview

Na tab  Overview, encontramos informações sobre todos os monitores (CPU, Memory, Disk e Network) do RESMON.

Nesta tab, podemos filtrar um determinado processo simplesmente marcando a checkbox do processo e espandindo cada uma das sessões abaixo, visualizando as seguintes informações:

  • em Disk (Disco) o caminho completo para os arquivos que estão sendo executados com o processo, quantia em Bytes/S de escrita e leitura, total de escrita/leitura, I/O e tempo de resposta.
  • em Network (Rede) o Address (Endereço) de destino no qual o processo está conectado, quantia em Bytes/S recebida/enviada e também o total de ambas.
  • em Memory (Memória) Hard Faults/S, Commit, Working Set, Shareable e Private.

Informação EXTRA!

Explicando os monitores de memória do Windows:

  • Hard Fault é um evento gerado quando um endereço de memória de um programa não está mais presente na memória principal (RAM) por que foi movido para o SWAP.
  • Commit mostra a quantia total de Virtual Address Space usado pelo processo no arquivo de SWAP no Windows.
  • Working Set são atualmente as páginas do Virtual Address Space que estão na memória física.
  • Shareable mostra atualmente a quantidade de memória que está sendo compartilhada entre outros processos.
  • Private é total de Virtual Address Space não compartilhado para outros processos.

Em Overview também encontramos ao lado direito os monitos visuais para CPU, Memory, Disk e Network tal como visualizamos no Task Manager.

É uma ferramentas visual que permite ao troubleshooter, quando selecionado determinado processo, visualizar com uma linha contínua laranja, o histórico de uso dos recursos.

Vemos abaixo um exemplo filtrando o Microsoft Office Outlook e suas conexões de rede estabelecidas:

Filtrando o Microsoft Office Outlook

Como podemos visualizar, temos muitas informações em mãos das quais podemos determinar o tratamento adequado caso o problema fosse identificar, quanto de dados estão sendo injetados pelo Microsoft Office Outlook ao enviar/receber e-mails de determinado destino. O tratamento poderia ser limitar o tráfego do Outlook a X Bytes.

Neste momento, já temos muitas informações sobre como usar os filtros do Resource Monitor e extrair dados sobre um determinado processo.

Agora que já entendemos o conceito sobre a ferramenta, vamos entender como efetuar um troubleshooting para identificar um serviço específico que esteja gerando alto uso de CPU em um host.

Abra o Resouce Monitor e selecione a tab CPU como mostrado na imagem abaixo:

Tab CPU do Resource Monitor

Cada tab específica do RESMON, possui informação pertinentes a esta somente. Como podemos verificar na imagem anterior, em CPU temos um bloco de Processes, ServicesAssociated Handles e Associated Modules necessários para um troubleshooting sobre processos.

Suponhamos neste momento que exista uma instância qualquer do SVCHOST que esteja fazendo alto uso de CPU em seu host. O primeiro passo é identificá-la entre os processos e marcara caixa de seleção ao lado esquerdo como na imagem abaixo:

INFO: Tal como no Task Manager, se for necessário ordenar os processos por critérios de colunas, o RESMON permite a mesma ação. Basta clicar na coluna na qual se deseja ordenar os processos e selecionar o item de sua escolha.

Instância SVCHOST selecionada

Na imagem acima, temos uma instância do SVCHOST referente a serviços de Network Services selecionada. Ao espandir o bloco Services, podemos visualizar quais serviços estão sendo executados dentro desta instência SVCHOST.

Neste caso, temos os seguintes serviços: NlaSvc (Network Location Awareness), LanmanWorkstation (Workstation), Dnscache (DNS Client) e CyptSvc (Cryptographic Services).

Bloco de serviços da instância selecionada

A imagem anterior é praticamente alto explicativa pelas colunas que possui.

Temos da esqueda para a direita, o nome do serviço dentro do sistema operacional (Name), o identificar de processo (PID), o nome amigável para o usuário (Description), o status do serviço (Status), o grupo ao qual pertencem (Group), o uso de CPU (CPU – coluna que será utilizada neste caso para o troubleshooting) e a média usada pelo serviço de CPU (Average CPU).

Cabe dizer que em meu caso, todo o S.O está saudável e não há problemas de alto uso de CPU, por está razão os serviços estão com consumo ZERO (0) de CPU.

Agora, suponhamos que o houvesse um serviço com algo consumo de CPU, tomemos como exemplo o CryptSvc. Ao identificar esse comportamento, a primeira medida seria desativá-lo no console de Serviços do Windows.

Os próximos passos seriam básicos, consultas ao Google, fóruns de discussão, etc. para tentar identificar se há algum problema conhecido e uma medida para solucionar o problema caso o mesmo problema tenha ocorrido com outros usuário.

Pois bem caro leitor, este é uma troubleshooting básico que pode ser feito por qualquer end-user para identificar um problema de alto consumo de CPU em seu host.

É importante mencionar também que este exemplo pode ser aplicado para todos os outros itens do RESMON. Você pode identificar precisamente objetos que estão fazendo leitura/escrita em disco, uso de memória e tráfego de rede.

Certamente, mesmo que não seja possível resolver o problemas imediatamente e seja necessário recorrer a uma ajuda externa (Comunidades, Fóruns, etc.), no momento de informar seu problema, você terá bem mais detalhes a serem levados em consideração pelas pessoas que se proporem a ajudá-lo.

Isso facilita o entendimento do problema e permite uma resposta mais precisa, clara e objetiva sobre como solucionar sua questão.

É comum encontrarmos posts em fóruns com poucas informações importantes quando estamos tratando de problema de alto consumo de CPU e está que podemos coletar com o RESMON, de fato, facilitará muito mais a compreensão do problema.

Bem, espero que tenham gostado do conteúdo e que o mesmo seja de excelente uso no momento de solucionar alguns problemas diários que possuimos.

Muito obrigado pela leitura caro leitor e até o próximo post.

%d blogueiros gostam disto: