Inquiridor
Salvar log com data e hora atual

Pergunta
-
Boa noite, estou precisando de um script que monitores processos, e quando estes não estiverem rodando, envie um log por e-mail. Porém para manter um monitoramento melhor dos logs gerado a cada 5 minutos, preciso que os logs sejam salvo com a data e hora atual, para nao sobrescrever o log anterior, o script de monitoramento e envio do email consegui encontrar dentre os diversos auxilio de log administratvos desta comunidade.
No seguinte momento do log, escolhe a unidade e o nome do arquivo para salvar o log, gostaia que ao inves de log, criasse um arquivo .txt com data e hora, como por exemplo:
strShare = "c:\"
strLogFile = "log.txt "
gostaia que ao inves de log, criasse um arquivo .txt com data e hora, como por exemplo:
0605200920:30.txt
Algo parecido com isto
Desde já ,Obrigado
Todas as Respostas
-
Oi Raphael,
Estou passando abaixo um exemplo que utilizo em um script meu para salvar o arquivo com o nome Impressoes_<Nome da maquina>_<dominio>_<aaaammdd>_horahminutom.txt
'Pega data e hora do computador local
datahj = Date
horario = Time
'Verificacao para deixar o mes com 2 digitos
If Month(datahj) < 10 Then
mes = "0" & Month(datahj)
Else
mes = Month(datahj)
End If
'Verificacao para deixar a hora com 2 digitos
If Hour(horario) < 10 Then
acertahora = "0" & Hour(horario)
Else
acertahora = Hour(horario)
End If
'Verificacao para deixar os minutos com 2 digitos
If Minute(horario) < 10 Then
acertamin = "0" & Minute(horario)
Else
acertamin = Minute(horario)
End If
nomearquivo = "Impressoes_"&WshNetwork.ComputerName &"_" &WshNetwork.UserDomain &"_" &Year(datahj) &mes &Day(datahj) &"_" &acertahora &"h" &acertamin &"m"
'&WshNetwork.ComputerName & "_" & WshNetwork.UserDomain & "_"& Year(datahj) & mes & Day(datahj) &"_"& acertahora &"h" & acertamin &"m"
Você precisará fazer algumas adaptações.
Boa Sorte,
Luana. -
Olá,
Segue abaixo um script que monitora um processo e se o mesmo não estiver executando, envia um email:
Set objNetwork = CreateObject("Wscript.Network")
strComputer = objNetwork.ComputerName
strUserName = objNetwork.UserName
lRunning = False
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
''' Processo que será verificado no exemplo está o notepad.exe '''''''
Set FechaProcess = objWMIService.ExecQuery _
("Select * from Win32_Process Where Name = 'notepad.exe'")
''' Verificando os processos definidos '''
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
For Each objProcess in FechaProcess
Return = objProcess.GetOwner(strNameOfUser)
if Return = 0 Then
if TRIM(strNameofUser) = TRIM(strUsername) Then
lRunning = True
End if
End If
Next
if lRunning = False Then
Envia_Alerta
End if
Sub Envia_Alerta
Set objEmail = CreateObject("CDO.Message")
'COLOQUE AQUI OS ENDEREÇOS DE EMAIL
objEmail.From = "servidor@contoso.msft"
objEmail.To = "jesiel@nwtraders.msft"
objEmail.Subject = "ALERTA DE PROCESSO PARADO"
objEmail.TextBody = "Computador: " & strComputer & " DATA: " & now
objEmail.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
'COLOQUE AQUI O IP DO SERVIDOR DE EMAIL
objEmail.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "10.0.0.1" '<-informe seu servidor smtp
objEmail.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
objEmail.Configuration.Fields.Update
objEmail.Send
end sub
Faça os testes e nos retorne.
Até mais,
Jesiel
Obs.: Se útil, classifique