Pregunta

Hay un rango específico de Identificadores de Sucesos en Windows reservados para los desarrolladores de aplicaciones?

Estoy trabajando en una .Neto de la aplicación que va a escribir errores en el registro de eventos de windows.Esta aplicación en realidad los objetivos de los servidores, y se ejecuta como una tarea programada paranoico sys administradores que se desea bloquear hacia abajo tanto como sea posible (como correr con un reducido privilegio de mantenimiento de la cuenta).La aplicación no será formalmente instalado — de hecho, ni siquiera estoy construyendo un instalador para este;sólo un archivo zip con el .exe y aplicación.archivo de configuración.

Aquí está el truco:en Windows, se necesitan privilegios de administrador para crear una fuente en el registro de sucesos de Aplicación.Ya no puedo contar sobre esto y no quiero hacer exceso de trabajo sys administradores necesitan para crear uno, estoy usando el "Error de Aplicación" (utilizado por MS Office) como una reserva.(Cogiendo una mejor alternativa es en mi lista de cosas, puesto que la oficina no es tan a menudo se instalan en los servidores).

El problema es que todavía me quieren mis eventos sobresalir un poco, en lugar de pasar por la Oficina.De esta manera, mi sys administradores pueden filtrar fácilmente a solo aquellos eventos en el Visor de Sucesos en el registro o agregador de su elección.La mejor solución soy consciente de que ahora mismo es el uso de la ID de Evento, pero me preocupa el conflicto interno de los Eventos de Windows, sobre todo teniendo en cuenta mi público objetivo.

He mirado, pero no puedo encontrar ninguna documentación sobre este.Así, hay un rango específico de los Identificadores de Sucesos que debo usar, voy a estar bien utilizando cualquiera que sea, o debo buscar en una completamente diferente opción aquí?

¿Fue útil?

Solución

Realmente no. At the top level you have an Event Source. Each Event Source has its own Event Categories. Each Event Message is "owned" by an Event Source and falls into one of its Event Categories. If you're going to be logging your events under someone else's Event Source, you're breaking this convention and could quite possibly have Event ID collisions.

Por otra parte, IDS de eventos son estructuralmente similares a HRESULTS y hay un bit de cliente que podría establecer. También hay un campo de código de instalación, pero Microsoft solo proporciona una instalación para terceros (el resto están reservados). Incluso si te metes con estos bits, todavía estás a merced del propietario de la fuente del evento; Si Microsoft alguna vez escribiera algo en la fuente del evento que está utilizando y estableciera el bit del cliente o el código de la instalación (por ejemplo, quizás componentes no de Windows, como Office o algo así), volvería en el mismo peligro de colisiones. O si algún otro desarrollador decide hacer lo mismo que está haciendo. Realmente la forma más segura es definir su propia fuente de eventos.

Otros consejos

Parece que este es el quid del problema

No creo que tenga que preocuparse porque las ID del evento corresponden a una fuente de evento específica, por lo que, a menos que use exactamente la misma fuente, no hará que los administradores se enojen. Por ejemplo, MS a veces lo hace Utiliza la misma identificación con diferentes fuentes.

Si desea obtener información sobre los editores registrados e ID de eventos que puede usar Wevtutil

wevtutil ep

wevtutil gp Microsoft-Windows-EventLog /ge /gm:true

Si eres bueno en PowerShell, estoy seguro de que podrías encontrar un script para obtener todas las identificaciones de eventos que están registradas

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top