Tenho o PRTG monitorando meus servidores e rede. Alguns dos meus servidores são baseados em Windows e eu gostaria que o PRTG reiniciasse automaticamente os serviços caso eles fossem interrompidos.
Isso pode ser feito usando o sensor WMI Service, mas tenho um desafio com isso. Exige que eu selecione manualmente quais serviços monitorar. Isso é complicado e não escalável.
Gostaria de descobrir automaticamente serviços que satisfaçam uma condição. Por exemplo, que o tipo de inicialização do serviço esteja definido como "Automático". Dessa forma, eu poderia definir o serviço como “Manual” caso quisesse substituir temporariamente a reinicialização automática.
Isso é possível de alguma forma?
Responder1
Trabalho com PRTG há alguns anos e não acho que isso seja possível fora da GUI do PRTG.
Existem 3 possibilidades que você tem.
1)Se desejar adicionar o novo WMI Service Sensore, você poderá usar o campo Pesquisar para definir uma condição. Mas você só pode filtrar Nome, Descrição ou Estado. Então isso realmente não vai te ajudar, eu acho. (Ver foto)
2)Se você tiver alguns serviços semelhantes que deseja monitorar em sistemas diferentes, você pode usar o modelo ou a função clone. Mas acho que você vai fazer isso agora e não vai te ajudar muito. O que realmente me ajudou muitas vezes é o último:
3)use a API PRTG. Com a API você pode criar novos sensores via HTTP-Call. Usei essa opção algumas vezes e ajudou muito. Com a API você pode fazer muitas coisas que faltam na interface web. Então, se eu fosse você, verificaria os servidores via Powershell. ( Get-Service | Select * | ? Name -eq Spooler
- apenas exemplo) Assim poderá definir todo o tipo de condições e selecionar os serviços que pretende. Se você os tiver em uma matriz, por exemplo, poderá facilmente fazer uma solicitação HTTP-API. Exemplo:
$wclient = New-Object System.Net.WebClient
$wclient.DownloadString('https://PRTGURL/api/duplicateobject.htm?id=12345&name=NAME&targetid=23456&username=USER&passhash=PASSWORD')
Este é um exemplo de duplicação de um sensor existente. Você precisa de um sensor WMI existente para serviços e pode clonar e modificar o novo ... já fiz isso com sensores SNMP. Clonei-os e depois mudei o UID para obter um novo sensor que agora monitora as coisas que eu quero...
Você encontrará informações sobre a API PRTG em "configuração" -> "API PRTG". Ou abaixohttps://SEU-PRTG-URL/api.htm?tabid=6
EDITAR: Você precisa de duas chamadas de API: uma para clonagem e outra para manipular/alterar o nome do serviço que deseja monitorar.
Quando você deseja selecionar os serviços de vários servidores você pode usar PS-Remoting ou também selecioná-los via WMI.