Dica do Dia – Monitorar Aplicações Web, Desempenho, Disponibilidade e Executar Ações de Recuperação com o SCOM

Introdução

Nesse artigo, irei demonstrar que além de você poder utilizar o System Center Operation Manager para monitoramento de seu ambiente de TI, você também pode usar para monitorar aplicações Web, enviar alertas para seu time de Testes em tempo real, realizar ações automáticas como ativar um Debug, executar um reinicio de serviço, ou algo similar.

Destaco itens como:

– Monitorar a aplicação usando links diferentes com servidores diferentes para identificar o comportamento em links mais rápidos (+100 Kbps), mais lentos (-100 Kbps);

– Monitorar em cidades ou paises diferentes, na ausência de servidores nessas localidades, você pode usar o serviço System Center Global Services Monitor da Microsoft;

– Enviar alertas SMS ou e-mail em tempo real para sua equipe. Você pode colocar um aplicativo Web em um cliente externo e monitorar o aplicativo em tempo real e identificar se apresenta falhas, realizando um trabalho de solução de forma rápida e eficaz!;

– Monitorar desempenho, timeout, erros genéricos, falhas de Web Services, entre outros filtros disponíveis;

– Executar ações automáticas como, reinicios de serviços, ativação de debugs, entre outras execuções via PowerShell, Scripts VBS, Executáveis, etc.;

Passos

1 – Definir o Site da Aplicação

Defina o site que será monitorado. No exemplo, usei um simples site HTML, mas é possivel monitorar aplicações Web, Web Services, etc.

image

image

2 – Criar o Alerta

Em seguida, crie o alerta usando o painel do SCOM.

image

 

image

image

Aqui você definirá qual será o Agente do SCOM que irá realizar o teste. Pode-se definir um ou vários, caso você tenha outros servidores sendo monitorados. Nesse caso, por exemplo, você poderia realizar testes com servidores em outras cidades ou países, ou até saídas de links diferentes (cada servidor saindo por um link), e você poderia validar a qualidade de acesso, disponibilidade em outras localidades, etc. Também pode-se usar o Global Service Monitor que é um serviço da Microsoft.

image

image

Aqui você poderá selecionar as regras de monitoramento, como tempo de intervalo, tipo de status a ser monitorado, tempo de timeout, alertas de “Warning” se a transação levar mais de tantos segundos.

image

image

Resumo Final:

image

Em seguida crie um Grupo para inserir o monitoramento em questão.

image

image

3 – Criar o Monitoramento e Tipo de Evento

Aqui estaremos criando a assinatura para o envio do alerta para E-mail e SMS.

E-mail

Você precisa ter configurado um servidor de e-mail no seu SCOM para enviar o e-mail, conforme a tela abaixo.

image

SMS

Para envio SMS, você precisa usar um MODEM de uma operadora de telefonia com um CHIP de celular e com um plano qualquer, se você enviar muitos SMS, dê preferência por planos com pacotes de SMS. Insira o MODEM USB no seu Servidor SCOM, instale ele e depois configure nos canais do SCOM.

image

image

Com os canais definidos, iremos agora adicionar os alertas.

image

image

Defina os critérios do teste. No caso irei definir o grupo que contém o monitoramento e o tipo de alerta “Critical” onde o site está indisponível. Você também pode monitorar “Warning” onde o site demonstra demora excessiva de acesso, ou algo similar.

image

Adicione o Grupo de Alerta “Specific” e a Severidade “Specific”.

image

image

image

Aqui você poderá criar ou adicionar um contato.

image

image

Adicione os canais de envio:

image

Valide o resumo:

image

E pronto.

4. Teste do Alerta

Vamos testar o alerta, tornando a aplicação indisponível. Para isso, vá no Internet Information Services e pare o Site Web.

image

image

Abra o painel do SCOM e veja que o alerta foi gerado:

image

Observe que recebi o alerta via e-mail também:

image

Então você pode adicionar diversos alertas, ficando a seu critério e planejamento quais, pois nas opções do SCOM há várias possibilidades a serem inseridas com os itens que destaquei.

5. Configurar disparo de execução

Nesse item, você pode definir para que o SCOM execute uma atividade para você, por exemplo:

– Ativar um serviço que ficou em estado de parado;

– Ativar um debug ou trace de aplicação;

– Executar scripts Powershell, VBS, comandos de lote .BAT, executáveis;

Também de forma programada, ou seja, aguardar alguns minutos e caso o alerta não se resolva, tomar as medidas necessárias.

Vamos ativar uma ação de recuperação do Internet Information Services nesse caso.

Primeiramente, devemos definir o que nossa recuperação irá fazer. No caso, iremos executar um comando simples de iniciar o Site Web específico. Então vamos testar esse comando:

Vá no Internet Information Services e pare novamente o site que você está monitorando.

image

image

Confira se o site está indisponível.

image

Agora, essa parte depende muito do que você deseja fazer. Como queremos apenas iniciar o Web Site, pesquisei no KB da Microsoft qual linha de comando devo usar para esse fim, e no caso é o APPCMD. Depende do que você deseja fazer, você deverá pesquisar e montar o script de ação para que funcione corretamente, até montando scripts ou arquivos de lote com diversas execuções, em passos e tempos determinados, etc.

Nesse caso, será um simples START do Web Site em questão, então vamos testar. O comando para iniciar um Web Site específico é o abaixo, onde defino a ação e o Web Site em questão.

image

Depois do comando executado, volto no IIS para validar se o Web Site voltou a funcionar.

image

image

Eureca!

image

Então vamos hospedar esse script para que meu agente do Operation Manager consiga executar o procedimento para mim.

Como sugestão, crie um arquivo de LOTE como por exemplo arquivo .BAT e hospede esse Script dentro do seu servidor. Será muito util, por exemplo, você criar um diretório padrão de Scripts e criar esses scripts dentro desse diretório e distribuir nos servidores que deseja que as ações sejam executadas.

Por exemplo, crie um diretório chamado ScriptsSCOM no servidor.

image

Crie um arquivo de LOTE (BAT) e salve dentro desse diretório. No caso iremos criar um arquivo de LOTE chamado iniciaiis.bat com o comando dentro dele %windir%\system32\inetsrv\appcmd start site “Site de Teste de Operação”

image

image

Vá em Authoring – Web Application Availability Monitoring, procure seu monitoramento e vá em Monitors.

image

image

image

image

image

image

Selecione em qual estado que o monitor deve estar para executar o comando, se deve-se recalcular sozinho para fechar, etc.

image

Selecione o comando, como o exemplo abaixo.

image

Pronto! Realize um teste e verifique se está OK.

Algumas dicas:

– Verifique se a conta que executa o agente no servidor de destino, possui as devidas permissões para executar os comandos;

– Use de preferência, sempre Scripts ou arquivos de Lote em vez de comandos diretos no SCOM;

– Cuidado com acentos, nomes de serviços com caracteres especiais, comandos com caracteres especiais;

– Teste sempre o comando ou script primeiro, e veja se funciona, para depois colocar no alerta!

É isso, até a próxima!

Alan Carlos

  • Felipe

    Cara, parabéns pelo post!

    Tenho uma duvida, eu consigo configurar para além de enviar SMS e E-mail, fazer com que ele faça ligações?!

    Obrigado!