Programar el visor de sucesos

10/05/2006 - 09:34 por Markus | Informe spam
Hola a todos

Pretendo, una vez al mes, guardar una copia del contenido del visor de
sucesos (aplicacion, seguridad y sistema) en archivos evt y que
automaticamente quede limpio el visor de sucesos. En definitiva, tener un
historico de los eventos por meses.

Ahora lo estoy haciendo de manera manual y me gustaria saber si existe
alguna forma (mediante WSH o parecido) de hacerlo automaticamente.

Saludos

Preguntas similare

Leer las respuestas

#1 Markus
11/05/2006 - 11:00 | Informe spam
Por si a alguien le interesa, publico la solución:

Lo he conseguido mediante la creación de un script con extensión .vbs, el
archivo será llamado desde el comando cscript.

¿Que hace este script?

1.- Genera tantos archivos .evt como categorias haya en el visor de sucesos
(aplicacion, seguridad, etc...) con el contenido actual de eventos.

2.- Los archivos .evt son nombrados en funcion de la categoria, año y mes en
curso.

3.- Limpia los eventos en todas sus categorias.

En mi caso particular lo he efectuado de esta manera porque desde el
programador de tareas llamaré a este script el dia 1 de cada mes. De este
modo conseguiré tener un archivo de cada categoria por mes y año.

El contenido del script es el siguiente:


strComputer = "."

Set objWMIService = GetObject("winmgmts:" &
"{impersonationLevel=impersonate, (Backup, Security)}!\\" & strComputer &
"oot\cimv2")

Set colItems = objWMIService.ExecQuery("Select * from Win32_LocalTime")

For Each objItem in colItems
strAnio = objItem.Year
Mes = objItem.Month
Next

If Mes = 1 Then
strMes = "12"
strAnio = StrAnio - 1
ElseIf Mes = 2 Then
strMes = "01"
ElseIf Mes = 3 Then
strMes = "02"
ElseIf Mes = 4 Then
strMes = "03"
ElseIf Mes = 5 Then
strMes = "04"
ElseIf Mes = 6 Then
strMes = "05"
ElseIf Mes = 7 Then
strMes = "06"
ElseIf Mes = 8 Then
strMes = "07"
ElseIf Mes = 9 Then
strMes = "08"
ElseIf Mes = 10 Then
strMes = "09"
ElseIf Mes = 11 Then
strMes = "10"
ElseIf Mes = 12 Then
strMes = "11"
End If

Set colLogFiles = objWMIService.ExecQuery ("Select * from
Win32_NTEventLogFile")

For Each objLogfile in colLogFiles
strBackupLog = objLogFile.BackupEventLog _
("c:\backup_evt\" & objLogFile.LogFileName & strAnio & strMes & ".evt")
If strBackupLog <> 0 Then
Wscript.Echo "El registro de sucesos no puede ser copiado."
Else
objLogFile.ClearEventLog()
End If
Next


Espero que os sirva




"Markus" escribió:

Hola a todos

Pretendo, una vez al mes, guardar una copia del contenido del visor de
sucesos (aplicacion, seguridad y sistema) en archivos evt y que
automaticamente quede limpio el visor de sucesos. En definitiva, tener un
historico de los eventos por meses.

Ahora lo estoy haciendo de manera manual y me gustaria saber si existe
alguna forma (mediante WSH o parecido) de hacerlo automaticamente.

Saludos
Respuesta Responder a este mensaje
#2 Javier Inglés [MS MVP]
11/05/2006 - 11:27 | Informe spam
gracias socio por dejarlo posteado!!!

Salu2!!
Javier Inglés
https://mvp.support.microsoft.com/p...B5567431B0
MS MVP, Windows Server-Directory Services




"Markus" escribió en el mensaje
news:
Por si a alguien le interesa, publico la solución:

Lo he conseguido mediante la creación de un script con extensión .vbs, el
archivo será llamado desde el comando cscript.

¿Que hace este script?

1.- Genera tantos archivos .evt como categorias haya en el visor de
sucesos
(aplicacion, seguridad, etc...) con el contenido actual de eventos.

2.- Los archivos .evt son nombrados en funcion de la categoria, año y mes
en
curso.

3.- Limpia los eventos en todas sus categorias.

En mi caso particular lo he efectuado de esta manera porque desde el
programador de tareas llamaré a este script el dia 1 de cada mes. De este
modo conseguiré tener un archivo de cada categoria por mes y año.

El contenido del script es el siguiente:


strComputer = "."

Set objWMIService = GetObject("winmgmts:" &
"{impersonationLevel=impersonate, (Backup, Security)}!\\" & strComputer &
"oot\cimv2")

Set colItems = objWMIService.ExecQuery("Select * from Win32_LocalTime")

For Each objItem in colItems
strAnio = objItem.Year
Mes = objItem.Month
Next

If Mes = 1 Then
strMes = "12"
strAnio = StrAnio - 1
ElseIf Mes = 2 Then
strMes = "01"
ElseIf Mes = 3 Then
strMes = "02"
ElseIf Mes = 4 Then
strMes = "03"
ElseIf Mes = 5 Then
strMes = "04"
ElseIf Mes = 6 Then
strMes = "05"
ElseIf Mes = 7 Then
strMes = "06"
ElseIf Mes = 8 Then
strMes = "07"
ElseIf Mes = 9 Then
strMes = "08"
ElseIf Mes = 10 Then
strMes = "09"
ElseIf Mes = 11 Then
strMes = "10"
ElseIf Mes = 12 Then
strMes = "11"
End If

Set colLogFiles = objWMIService.ExecQuery ("Select * from
Win32_NTEventLogFile")

For Each objLogfile in colLogFiles
strBackupLog = objLogFile.BackupEventLog _
("c:\backup_evt\" & objLogFile.LogFileName & strAnio & strMes & ".evt")
If strBackupLog <> 0 Then
Wscript.Echo "El registro de sucesos no puede ser copiado."
Else
objLogFile.ClearEventLog()
End If
Next


Espero que os sirva




"Markus" escribió:

Hola a todos

Pretendo, una vez al mes, guardar una copia del contenido del visor de
sucesos (aplicacion, seguridad y sistema) en archivos evt y que
automaticamente quede limpio el visor de sucesos. En definitiva, tener un
historico de los eventos por meses.

Ahora lo estoy haciendo de manera manual y me gustaria saber si existe
alguna forma (mediante WSH o parecido) de hacerlo automaticamente.

Saludos
Respuesta Responder a este mensaje
#3 Markus
12/05/2006 - 09:52 | Informe spam
de nada

"Javier Inglés [MS MVP]" escribió:

gracias socio por dejarlo posteado!!!

Salu2!!
Javier Inglés
https://mvp.support.microsoft.com/p...B5567431B0
MS MVP, Windows Server-Directory Services




"Markus" escribió en el mensaje
news:
> Por si a alguien le interesa, publico la solución:
>
> Lo he conseguido mediante la creación de un script con extensión .vbs, el
> archivo será llamado desde el comando cscript.
>
> ¿Que hace este script?
>
> 1.- Genera tantos archivos .evt como categorias haya en el visor de
> sucesos
> (aplicacion, seguridad, etc...) con el contenido actual de eventos.
>
> 2.- Los archivos .evt son nombrados en funcion de la categoria, año y mes
> en
> curso.
>
> 3.- Limpia los eventos en todas sus categorias.
>
> En mi caso particular lo he efectuado de esta manera porque desde el
> programador de tareas llamaré a este script el dia 1 de cada mes. De este
> modo conseguiré tener un archivo de cada categoria por mes y año.
>
> El contenido del script es el siguiente:
>
>
> strComputer = "."
>
> Set objWMIService = GetObject("winmgmts:" &
> "{impersonationLevel=impersonate, (Backup, Security)}!\\" & strComputer &
> "oot\cimv2")
>
> Set colItems = objWMIService.ExecQuery("Select * from Win32_LocalTime")
>
> For Each objItem in colItems
> strAnio = objItem.Year
> Mes = objItem.Month
> Next
>
> If Mes = 1 Then
> strMes = "12"
> strAnio = StrAnio - 1
> ElseIf Mes = 2 Then
> strMes = "01"
> ElseIf Mes = 3 Then
> strMes = "02"
> ElseIf Mes = 4 Then
> strMes = "03"
> ElseIf Mes = 5 Then
> strMes = "04"
> ElseIf Mes = 6 Then
> strMes = "05"
> ElseIf Mes = 7 Then
> strMes = "06"
> ElseIf Mes = 8 Then
> strMes = "07"
> ElseIf Mes = 9 Then
> strMes = "08"
> ElseIf Mes = 10 Then
> strMes = "09"
> ElseIf Mes = 11 Then
> strMes = "10"
> ElseIf Mes = 12 Then
> strMes = "11"
> End If
>
> Set colLogFiles = objWMIService.ExecQuery ("Select * from
> Win32_NTEventLogFile")
>
> For Each objLogfile in colLogFiles
> strBackupLog = objLogFile.BackupEventLog _
> ("c:\backup_evt\" & objLogFile.LogFileName & strAnio & strMes & ".evt")
> If strBackupLog <> 0 Then
> Wscript.Echo "El registro de sucesos no puede ser copiado."
> Else
> objLogFile.ClearEventLog()
> End If
> Next
>
>
> Espero que os sirva
>
>
>
>
> "Markus" escribió:
>
>> Hola a todos
>>
>> Pretendo, una vez al mes, guardar una copia del contenido del visor de
>> sucesos (aplicacion, seguridad y sistema) en archivos evt y que
>> automaticamente quede limpio el visor de sucesos. En definitiva, tener un
>> historico de los eventos por meses.
>>
>> Ahora lo estoy haciendo de manera manual y me gustaria saber si existe
>> alguna forma (mediante WSH o parecido) de hacerlo automaticamente.
>>
>> Saludos



email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida