Parece que eltraza vs Depurar en .NET BCL
son en gran parte del mismo, con la notable excepción de que el uso de depuración se compila a cabo en una configuración de lanzamiento.
¿Cuándo utilizarías una y no la otra? La única respuesta a esto que he desenterrado hasta ahora es solo que utilizas la clase Debug para generar resultados que solo ves en la configuración de depuración, y Trace se mantendrá en una configuración de lanzamiento, pero eso realmente no responde la pregunta en mi cabeza
Si vas para instrumentar el código, ¿por qué se ha consumido alguna vez depuración, ya traza se puede desactivar sin recompilación?
Estoy totalmente en desacuerdo con esta respuesta. El seguimiento es un nivel inferior al de depuración y nunca debe utilizarse en producción. En mi experiencia, el rastreo se usa al inicio de los métodos o "rastreo" de una obra a medida que pasa por un flujo de trabajo y, de alguna manera, muestra la pila de llamadas. Todo lo anterior e incluyendo Info debe ser los únicos niveles utilizados en la producción. Eso es información, advertencia, error, fatal. –
Creo que otra diferencia es que puede configurar [Trace Listeners] (http://msdn.microsoft.com/en-us/library/4y5y10s7 (v = vs.110) .aspx) en su aplicación y enrutar la salida de la huella en consecuencia. El escucha de seguimiento predeterminado en Visual Studio dirigirá los mensajes de seguimiento a la secuencia de salida de depuración. – orad
El rastreo es algo que ** debe ** usarse en producción. Es tan importante que ** cada ** subsistema de Windows contenga código de rastreo. Cada búsqueda de disco duro, cada asignación de memoria, cada interrupción, cambio de contexto de CPU, cada programación de subprocesos tiene un código de rastreo integrado. La plataforma Event Tracing for Windows (ETW) es un sistema de rastreo extraordinariamente liviano que cualquier persona puede habilitar en cualquier momento en cualquier PC con Windows. El [System.Diagnostics.Tracing.EventSource] (https://msdn.microsoft.com/en-us/library/system.diagnostics.tracing.eventsource.aspx) es la forma administrada de enviar eventos de seguimiento a ETW. –