tagger tag windows logging

windows - tagger - tag folders



Dónde almacenar un archivo de registro de la aplicación en Windows (6)

1.El directorio del programa <- no es bueno. Lo ideal es que solo tenga permisos RX en esta carpeta.

2. El escritorio del usuario <- técnicamente se puede hacer, pero no me gusta esta idea. Contaminación en el escritorio ... A mí, como usuario, no me gusta.

3. El directorio de datos de aplicación local del usuario. <- mejor

Mi preferencia es un subdirectorio en el directorio del programa (con un nombre claro como "DebugLog" o algo similar). Los permisos en ese subdirectorio deberían permitir crear y escribir archivos ("Cambiar" estará bien)

¿Dónde sería el mejor lugar "estándar" para colocar el archivo de registro de depuración de una aplicación en un entorno de usuario de Windows?

En este caso particular, es una aplicación que se ejecuta una vez y podría salir mal. Será ejecutado por los tipos de administrador del sistema que pueden necesitar inspeccionar el registro después de ejecutar la aplicación. Cada vez que se ejecuta la aplicación, se crea un nuevo archivo de registro.

Las opciones que se han publicado hasta el momento incluyen:

  1. El directorio del programa
  2. El escritorio del usuario
  3. El directorio de datos de aplicación local del usuario.

Tengo mi favorito, pero me pregunté qué era el consenso SO.

Nota: esto es similar a esta pregunta , pero estamos tratando con una aplicación que solo es probable que un usuario la ejecute una vez.


Carpeta Temp de Windows


El directorio de datos de la aplicación parece ser el lugar perfecto, pero es un área que es casi invisible. Debe brindarle a sus usuarios una forma fácil de acceder a él.

Haga que su script de instalación cree una carpeta de Log en el área de Datos de la Aplicación para su programa, e incluya un enlace a la carpeta en su menú de Inicio.


El lugar "estándar" para el registro sería el directorio AppData. Sin embargo, realmente depende de usted dónde desea almacenarlos. Como son administradores (usuarios avanzados), no debería haber problemas al almacenar los registros en el mismo directorio que la aplicación que se está ejecutando. Incluso en MyDocuments del usuario sería un buen grito.


En la organización para la que trabajo usamos el directorio (% TEMP% o% TMP%) / CompanyOrProductName / Logs Usar% APPDATA% puede ser problemático con los perfiles móviles si los registros son numerosos o enormes: ralentiza su proceso de inicio de sesión ...


Si ESPERA que algo salga mal, colóquelo en el directorio de datos de aplicación local del usuario.

Si no lo hace y solo quiere iniciar sesión de todos modos, podría pensar en usar realmente el directorio temporal. El razonamiento para esto es simple. Si la aplicación solo se ejecuta una vez, dejará basura en el directorio de datos de la aplicación o, de lo contrario, nadie volverá a necesitarla. En la temperatura, al menos tienes la OPORTUNIDAD de que se limpiará más tarde.

Por cierto: en mi humilde opinión, lo mejor sería no crear el registro como un archivo en absoluto (iniciar sesión en la memoria) hasta que algo salga mal. Entonces todavía puede ofrecer un diálogo donde el usuario selecciona dónde guardar el registro.