none
Ajuda para entender um script RRS feed

  • Pergunta

  • pessoal,

    estou com um pequeno problema. Tenho um script que verifica um eventcode no EventVwr. O event code é o 500, relacionado à geração de Mirror.

    O script é o seguinte:

    strComputer = "."

    Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate, (Security)}!\\" & strComputer & "\root\cimv2")
    Set colMonitoredEvents = objWMIService.ExecNotificationQuery ("Select * from __instancecreationevent where " & "TargetInstance isa 'Win32_NTLogEvent' " & "and TargetInstance.EventCode = '500' ")
    counter = 0

    Do Until counter = 2
        Set objLatestEvent = colMonitoredEvents.NextEvent
        strAlertToSend = objLatestEvent.TargetInstance.User
        Wscript.Echo objLatestEvent.TargetInstance.Message
    counter = counter + 1
    Loop


    Pelo que eu entendi, ele guarda na variável colMonitoredEvents, todos os eventos com o EventCode=500.
    A segunda parte é que eu não entendi muito bem, vocês poderiam me ajudar nela?

    O meu pepino é o seguinte:
    Gero vários HDs de servidores através do ADS e uma das etapas é a geração do Mirror das 2 partições do HD. Este Script é para verificar se o sincronismo do Mirror terminou, porém, algumas vezes ele entra em LOOP e não finaliza. Quando isso acontece, parece que ele encontra apenas o log da segunda partição e não vai pra frente.

    Aguardo a ajuda de vocês.
    sexta-feira, 18 de abril de 2008 19:42

Respostas

  • Leandro, tive que simular esse script com outro evento para te explicar esse scritp, o que acontece, ele fica aguardando até que o evento o qual foi especificado no caso o 500, aconteça quando ele acontece, ele gera a mensagem que aparece no eventviewer, depois ele incrementa a variavel counter em 1 e espera que um novo evento 500 aconteça e gera a mensagem denovo ai o script é encerrado se quiser simular esse script muda o eventcode para 7035 e pare o serviço de agendador de tarefas e depois inicie-o de novo Wink

    sexta-feira, 18 de abril de 2008 22:07

Todas as Respostas

  • Leandro, tive que simular esse script com outro evento para te explicar esse scritp, o que acontece, ele fica aguardando até que o evento o qual foi especificado no caso o 500, aconteça quando ele acontece, ele gera a mensagem que aparece no eventviewer, depois ele incrementa a variavel counter em 1 e espera que um novo evento 500 aconteça e gera a mensagem denovo ai o script é encerrado se quiser simular esse script muda o eventcode para 7035 e pare o serviço de agendador de tarefas e depois inicie-o de novo Wink

    sexta-feira, 18 de abril de 2008 22:07
  • Laerte,

    valeu pela ajuda cara, eu é que estava entendendo errado o script, é isso mesmo que você falou, ele não "guarda" todos os eventos 500 e sim "aguarda" o evento ser gerado. Fiz o teste que vc falou, aí fui verificar nos logs e descobri que quando ele dá pau, o mirror da partição C é concluído antes do script ser rodado, por isso o counter nunca chegava a 2 e ele ficava rodando para sempre.

    Valeu mesmo, brigadão!!!!
    terça-feira, 22 de abril de 2008 13:24