Encontrar o Uptime de um servidor por meio de programação
-
13-09-2019 - |
Pergunta
Alguém sabe de uma maneira de encontrar programaticamente o uptime de um servidor com o Windows 2000? Temos um serviço em execução na máquina escritos em VB.NET, que os relatórios de volta ao nosso servidor através de um webservice.
Solução
Outra maneira é usar os contadores de desempenho do .NET por exemplo.
Dim pc As PerformanceCounter = New PerformanceCounter("System", "System Up Time")
pc.NextValue() ' This returns zero for a reason I don't know
' This call to NextValue gets the correct value
Dim ts As TimeSpan = TimeSpan.FromSeconds(pc.NextValue())
Então, basicamente, a classe PerformanceCounter irá retornar o número de segundos que o sistema foi instalado e de lá você pode fazer o que quiser.
Outras dicas
Se você tem SNMP habilitado, você pode consultar o seguinte OID: 1.3.6.1.2.1.1.3.0. Isto lhe dará o tempo de atividade do sistema. É definido como "O tempo (em centésimos de segundo) desde a parte do sistema de gerenciamento de rede foi o último re-inicializado."