que pasa como comando carpeta borro abrir nlog

pasa - usando la ubicación de AppData en NLog



como abrir appdata en windows 10 (4)

$ {specialfolder: ApplicationData} también funciona

Mis objetivos NLog es así:

<targets> <target xsi:type="Console" name="console" layout="${longdate}|${level}|${message}" /> <target xsi:type="File" name="ErrorLog" fileName="${basedir}/error.txt" layout="${longdate} Trace: ${stacktrace} ${message}" /> <target xsi:type="File" name="AccessLog" fileName="${basedir}/access.txt" layout="${shortdate} | ${message}" /> </targets>

Pero esto causa problemas si el usuario no es un administrador en su máquina, porque no tendrán acceso de escritura a "Archivos de programa". ¿Cómo puedo obtener algo como %AppData% para NLog en lugar de BaseDir?



La respuesta de Oren debería ser la respuesta correcta. Sin embargo, durante toda mi vida no pude hacer que funcionara con mi sitio web .NET 4.0 usando nLog 2.0.0.0. Terminé usando simplemente

fileName="${basedir}app_data/logs/${shortdate}.log"


Las respuestas anteriores ayudaron a resolver el problema que estaba teniendo, pero un par de años más tarde y la solución ahora es algo diferente en v4.3. El directorio y el nombre del archivo se combinan con la ruta.

El enlace de @ theGecko sigue vigente para la sintaxis, pero la página carece de un ejemplo:

https://github.com/nlog/NLog/wiki/Special-Folder-Layout-Renderer

El siguiente ejemplo escribiría el archivo myLog.log en el directorio de itinerancia de datos de la aplicación actual de los usuarios C:/USers/current.user/AppData/Roaming/My/Path/Somewhere :

fileName="${specialfolder:dir=My/Path/Somewhere/:file=myFile.log:folder=ApplicationData}"