System.Diagnostics.Debug namespace vs Otras soluciones de registro (log4net, MS Enterprise Library, etc.)

Actualmente estoy investigando varias posibilidades de registro para proyectos .net y no puedo decidir entre las características System.Diagnostics.Debug / Trace y bibliotecas de terceros como log4net, MS Enterprise Library, NLog, etc.
Por el momento he descubierto esto:

System.Diagnostics es bastante difícil de configurar y usar, ya que necesita configurar explícitamente todos los oyentes, filtros, fuentes, etc. Parece que también carece de la inserción masiva en el DB (piense en escribir 100'000 entradas de registro cada una con su propio inserto, horrible, ¿no?). Pero para algunas personas se considera 'genial' no usar libs adicionales para algo tan "rudimentario" como el registro (por supuesto, en algún momento, tiene sentido reducir la cantidad de bibliotecas de terceros en las que se basa su proyecto, pero no esta vez, supongo)Los terceros son mucho más poderosos, a menudo más rápidos, mucho más fáciles de usar, pero la configuración a veces también puede ser dolorosa y, a menudo, estas bibliotecas son menos confiables (como la misteriosa detención repentina del registro por parte de EntLib, etc.)¿Qué pasa con Common.Logging? ¿Vale la pena intentarlo (ya que, como he escuchado, ofrece varios marcos de conexión de conexión y actúa como una interfaz entre la aplicación y la lib deseada)?


¡Estaría realmente agradecido si alguien pudiera señalarme en la dirección correcta o corregir (o agregar algo) a mi comparación dada anteriormente! Tal vez si me animas a usar terceros, podrías aconsejar a alguien en particular (teniendo en cuenta que nuestras aplicaciones probablemente no necesitarán nada sofisticado como UDP, archivos rodantes, etc.), solo archivos simples, correo electrónico, base de datos y registro de eventos)?
¡Gracias por adelantado!

Respuestas a la pregunta(4)

Su respuesta a la pregunta