Foros del Web » Programación para mayores de 30 ;) » .NET »

Capturar errores en un mismo archivo .log

Estas en el tema de Capturar errores en un mismo archivo .log en el foro de .NET en Foros del Web. Buenas tardes, tengo un programa en fase alpha del cual estamos empezando la fase de test. He puesto en todas las instrucciones Catch {... } ...
  #1 (permalink)  
Antiguo 27/03/2013, 07:55
 
Fecha de Ingreso: marzo-2009
Mensajes: 76
Antigüedad: 15 años, 1 mes
Puntos: 0
Capturar errores en un mismo archivo .log

Buenas tardes,

tengo un programa en fase alpha del cual estamos empezando la fase de test. He puesto en todas las instrucciones Catch {... } lo siguiente:

Código:
                    Dim objStreamWriter As StreamWriter
                    objStreamWriter = New StreamWriter("C:\Testfile.txt", True)
                    objStreamWriter.WriteLine("Maquina " & Now & " " & ex.Message)
                    objStreamWriter.Close()
De forma que cada vez que se produzca una excepción, me escribirá el log en ese archivo.

El problema que tengo es que tengo dos timers principales en la aplicación y que cuando apago la base de datos (por nombrar un caso conocido en que fallan los dos), cada vez que da timeout escribe al archivo. Cuando esto ocurre, da error en el Catch{...} porque dos procesos están usando el mismo archivo al mismo tiempo y causa el cuelgue de la aplicación.

¿Como podría solucionar esto?

Muchas gracias.
Saludos.
  #2 (permalink)  
Antiguo 27/03/2013, 09:15
Avatar de Malenko
Moderador
 
Fecha de Ingreso: enero-2008
Mensajes: 5.323
Antigüedad: 16 años, 3 meses
Puntos: 606
Respuesta: Capturar errores en un mismo archivo .log

Yo te recomiendo que pongas el codigo de logeo en una funcion o mejor aún, en una clase.

Mi segunda recomendación es que ese código también vaya entre un try/catch porque lo que comentas es dificil de evitar. Así almenos no se colgará la aplicación.

Otra opción es usar la libreria de Microsft:

http://msdn.microsoft.com/en-us/libr...ndp.50%29.aspx

Aquí tienes un tutorial sobre como usarla:

http://www.codeproject.com/Articles/...rprise-Library
__________________
Aviso: No se resuelven dudas por MP!
  #3 (permalink)  
Antiguo 27/03/2013, 09:15
Avatar de Malenko
Moderador
 
Fecha de Ingreso: enero-2008
Mensajes: 5.323
Antigüedad: 16 años, 3 meses
Puntos: 606
Respuesta: Capturar errores en un mismo archivo .log

Yo te recomiendo que pongas el codigo de logeo en una funcion o mejor aún, en una clase.

Mi segunda recomendación es que ese código también vaya entre un try/catch porque lo que comentas es dificil de evitar. Así almenos no se colgará la aplicación.

Otra opción es usar la libreria de Microsft:

http://msdn.microsoft.com/en-us/libr...ndp.50%29.aspx

Aquí tienes un tutorial sobre como usarla:

http://www.codeproject.com/Articles/...rprise-Library
__________________
Aviso: No se resuelven dudas por MP!
  #4 (permalink)  
Antiguo 27/03/2013, 10:59
 
Fecha de Ingreso: marzo-2009
Mensajes: 76
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: Capturar errores en un mismo archivo .log

A veces la solución más sencilla es la que vale...

He creado una función pública como decías, y he puesto las instrucciones entre try-catch, de este modo si falla en algún momento no se colgará el programa. Y como el problema me viene cuando falla todo... Por mucho que se pierda un log no pasa nada.

Muchas gracias por tu ayuda.
Saludos.

Etiquetas: errores, log
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:08.