Desculpe pela parede do texto abaixo.
No meu local de trabalho, temos alguns servidores do Exchange e suporte aos controladores de domínio, todos atualmente sendo monitorados pelo SCOM. Eu configurei certos elementos de monitoramento em cima do que o SCOM pode fazer em um site ASP.net, apoiado por um banco de dados SQL.
Estou interessado em monitorar os servidores mais de perto para que possamos:
Baseline the servers better for historical comparison
If a problem occurs we can pull out more raw data.
Para isso, quero extrair mais dados dos contadores de desempenho. Eu sei que o SCOM pode extrair alguns dados do Perfmon, mas a implementação do SCOM é bem grande, e os que gerenciam isso não querem que eu aumente a frequência dos contadores para que seja útil o suficiente para ser útil às vezes.
Também consultar o SCOM DB para dados significa que realmente não posso alterar os índices, controlar os tempos de corte dos dados de que preciso ou realmente controlar o que posso precisar.
Minha pergunta aqui é realmente mais uma de como eu deveria abordar isso, não como eu realmente puxo os dados e os insiro, já que eu já tenho scripts que podem puxar dados e inseri-los em SQL.
Sem necessidade, temos as divisões do servidor da seguinte forma:
Exchange 2007 in Domain1.com
Exchange 2010 in Domain2.com
Os servidores são divididos logicamente da seguinte maneira para o Exchange 2007/2010:
Mailbox Servers
Client Access Servers
Hub Transport Servers
Domain Controllers
Eu gostaria de pegar contadores para o básico de todos os servidores acima e depois aprofundar em tipos específicos de servidor, por exemplo, extrair latência média de RPC dos servidores de caixa de correio, número de conexões dos servidores CAS, mensagens enviadas / s para servidores HT, etc.
Então, o que eu quero fazer é criar quatro tipos de script, um para cada classe de servidor, e depois executá-los de cada servidor em um agendamento para registrar alguns dados, conectar-se ao meu banco de dados SQL e inserir os registros em tabelas .
Para minhas tabelas SQL, devo criar uma por classe de servidor ou apenas jogar todos os registros em uma única tabela?
é uma péssima ideia executar um script local em cada servidor que lança todos os dados na tabela SQL? Eu considerei coletar os dados remotamente, mas se eu quiser apenas capturar um pouco de dados a cada poucos minutos, encontrei momentos muito diferentes causados pela latência da rede ou por outros fatores que eliminaram o tempo.
Eu também gostaria de ouvir sobre possíveis soluções de arquivamento, como manter registros mais frequentes nos últimos dias (talvez a cada 5 minutos para todos os contadores por 5 dias), mas manter registros menos frequentes voltando no tempo. / p>