Podemos classificar o EventLog do Windows com precisão de milissegundos?

0

Quando mais de um log de eventos do Windows é criado no mesmo segundo, a ordem de classificação / exibição pode ser diferente da ordem em que foram gravados. O índice parece ser a ordem inversa em que foram escritos: LIFO, não FIFO.

Eu escrevi código para ler as entradas do log de eventos e tanto o TimeGenerated quanto o TimeWritten são arredondados para o segundo mais próximo. Eles não têm resolução de milissegundos.

Portanto, existe alguma maneira de obter uma resolução melhor nos objetos do Log de Eventos do Windows, para escrever ou ler? Talvez com uma chave de registro ou código?

Uma solução para isso seria não usar o log de eventos do Windows para dados como esse, e ter eventos de nível mais alto apontam para logs de arquivos com mais detalhes. Outra solução de código seria usar o campo de dados binários para armazenar um registro de data e hora em ticks. Então eu posso usar um programa personalizado para ler / classificar o log e usar esses dados para uma melhor resolução quando estiver disponível. Mas eu prefiro evitar esse hack que só se aplica a entradas personalizadas de qualquer maneira.

Eu estou supondo que uma pergunta será feita sobre "por que você se importa" ou "não é como o log deve ser usado". Vamos pular de frente para respostas técnicas específicas. Obrigado.

    
por TonyG 05.11.2017 / 02:24

2 respostas

0

Negue o REGISTRO DE REGISTRO DE EVENTOS somente grava para uma segunda precisão

    
por 05.11.2017 / 04:47
1

Depois de pesquisar e como indicado na minha pergunta, sim, é uma maneira de fazer isso usando o fluxo rawData byte []: basta converter um timestamp (long ou DateTime) em um array de bytes e salve isso.

Não, não podemos usar o visualizador de log de eventos padrão para filtrar, classificar ou visualizar isso. E não, não podemos classificar por ms em entradas de log que não criamos, o que estava implícito na primeira parte da minha pergunta, então estou concedendo a resposta correta para @spacenonymous.

Mas a questão é se podemos classificar o log, como nos dados, não se podemos usar o visualizador padrão - como eu disse no OP:

Another code solution would be to use the binary data field to store a timestamp in ticks. Then I can use a custom program to read/sort the log and use that data for finer resolution when it's available.

Assim, uma resposta mais correta / refinada é "sim, para as entradas que criamos, essa é a maneira de fazer uma classificação / filtro, mas, caso contrário, não".

    
por 14.11.2017 / 22:14

Tags