Você está aqui: Início > Produtos > Network Monitor (Pro) > Manual > Verificações de monitoramento > Monitoramento do resultado de Visual Basic Script (VBScript)

Monitoramento do resultado de Visual Basic Script (VBScript)

O programa monitora o resultado de uma função Visual Basic Script (VBScript).

No mesmo espírito da verificação "Aplicativo externo", as verificações "VBScript" e "Java-script" deixam o usuário criar testes específicos nessas linguagens. Nas configurações, escreva o código-fonte do script de teste e indique qual função é a principal (executável). Para o resultado positivo, o script precisa sempre devolver a cadeia "OK" . Se devolver outro valor, a verificação é considerada com falha e o programa alerta. Teste os scripts com os meios padrão do sistema operacional antes de configurar as verificações.

As verificações “VBScript” e “Java-Script” ampliam bastante a capacidade de monitoramento da rede e do hardware de rede.

Monitoramento do resultado de Visual Basic Script (VBScript)

 

Exemplos úteis de VBScript para monitoramento

1. Obter o tamanho da pasta, inclusive das subpastas

2. Verificar as datas dos arquivos de uma pasta (útil para monitorar gravações de CFTV em um servidor de arquivos)

3. Obter o uso de RAM em porcentagem

4. Obter o uso médio de todos os discos rígidos em porcentagem

5. Executar uma requisição GET ou POST (por HTTP)

6. Enviar uma mensagem ao Slack

 

1. Obter o tamanho da pasta, inclusive das subpastas

function Main

'Informe o caminho da pasta aqui:
Main = GetFolderSize("C:\\Logs\\")
'Use \\ em vez de \ no caminho

end function

Function GetFolderSize(Path)
Dim fso, fsize
Dim ctFolder, cFile, cFolder
Set fso=CreateObject("Scripting.FileSystemObject")
fsize = 0
Set ctFolder = fso.GetFolder(Path)
On Error Resume Next
For Each cFile In ctFolder.Files
fsize = fsize + cFile.Size
Next
For Each cFolder In ctFolder.SubFolders
fsize = fsize + GetFolderSize(cFolder.Path)
Next
GetFolderSize = fsize
End Function

 

2. Verificar as datas dos arquivos de uma pasta. Se todos os arquivos tiverem a data de hoje, o retorno é 1; caso contrário, 0. No lugar de um caminho local, informe uma pasta de rede.

function Main
Dim fso, fsize
Dim ctFolder, cFile, AR, sdate, sdate2, sdate3
Set fso = CreateObject("Scripting.FileSystemObject")

'Informe o caminho da pasta aqui:
Set ctFolder = fso.GetFolder("C:\\Logs\\")
'Use \\ em vez de \ no caminho

AR = 1
sdate = CStr(Day(Date) & "." & Month(Date) & "." & Year(Date))
For Each cFile In ctFolder.Files
sdate2 = CStr(cFile.datelastmodified)
sdate3 = CStr(Day(sdate2) & "." & Month(sdate2) & "." & Year(sdate2))
If sdate <> sdate3 Then AR = 0
Next
Main=AR
End Function

 

3. Obter o uso de RAM em porcentagem. No lugar da chave %A, o programa coloca automaticamente o endereço do host, a partir dos parâmetros da verificação. O script usa uma consulta WMI — outras consultas podem seguir este exemplo.

function Main

strHostAddr = "%A"
strLogin = ""
strPassword = ""
Set objSWbemLocator = CreateObject("WbemScripting.SWbemLocator")
Set objWMIService = objSWbemLocator.ConnectServer(strHostAddr, "root\cimv2", strLogin, strPassword)
Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_OperatingSystem",,48)
For Each objItem in colItems
Main = Int((int(objItem.TotalVisibleMemorySize) - int(objItem.FreePhysicalMemory))/int(objItem.TotalVisibleMemorySize)*100)
Next
end function

 

4. Obter o uso médio de todos os discos rígidos em porcentagem

function Main

strHostAddr = "%A"
strLogin = ""
strPassword = ""
Set objSWbemLocator = CreateObject("WbemScripting.SWbemLocator")
Set objWMIService = objSWbemLocator.ConnectServer(strHostAddr, "root\cimv2", strLogin, strPassword)
Set colItems = objWMIService.ExecQuery("SELECT PercentIdleTime FROM Win32_PerfFormattedData_PerfDisk_PhysicalDisk where Name='_Total'",,48)
For Each objItem in colItems
Main = 100 - (int(objItem.PercentIdleTime))
Next
end function

 

5. Executar uma requisição GET ou POST (por HTTP). Serve como ação em resposta a um alerta de falha.

function Main
Dim o
Set o = CreateObject("MSXML2.XMLHTTP")
o.open "GET", "https://send.cpsms.dk/sendsms?to:79991234567?from:79991234567?msg:test", False
o.send
Main = ""
end function

6. Enviar uma mensagem ao Slack por URL de webhook (a partir do exemplo de requisição POST)

function Main
Dim request
Set request = CreateObject("MSXML2.XMLHTTP")
request.open "POST", "https://hooks.slack.com/services/AJHGK45J4/FTS5NFG73/UDz30ftMMzinOgFxhTx2zBBB", false
request.send "{""text"": ""It is a test! ""}"
Main = ""
end function

 

Para incluir esta verificação, selecione um host, clique em "Add check" e encontre o nome da verificação na janela do assistente.

Assistente — monitoramento do resultado de Visual Basic Script

Configure os parâmetros da verificação na janela que abrir. Depois, altere-os pelo item de menu "Edit Check...". Saiba como configurar os alertas da verificação e as outras opções.

 

Requisitos: Windows XP/Vista/7/8.1/10/11, Server 2003/2008/2012/2016/2019/2022.

 

Todos os produtos
programa de inventário de rede
Network Inventory Explorer
Inventário de hardware e software dos computadores da rede
programa de monitoramento de rede
Network Monitor
Monitore servidores, serviços, switches gerenciáveis e outros equipamentos
mapa visual e monitoramento de rede
LANState
Monitore e administre hosts em um mapa visual e crie diagramas de rede
programa de monitoramento de banda
Bandwidth Monitor
Acompanhe a banda e o consumo de tráfego de Internet
programa de diagramas de rede
Network Diagram
Crie diagramas de rede e descubra a topologia
busca de arquivos em compartilhamentos de rede e FTP
Network File Search
Pesquise arquivos em compartilhamentos de rede e servidores FTP
auditoria de acesso a compartilhamentos
Connection Monitor
Audite o acesso remoto de usuários a compartilhamentos (pastas e arquivos)
scanner de portas gratuito
Network Scanner (GRÁTIS)
Programa gratuito para varrer redes, hosts e portas TCP