Относительный путь для хранения файлов журнала с Essential.Diagnostics - PullRequest
3 голосов
/ 17 октября 2011

Я использую System.Diagnostics + Essential.Diagnostics для моего регистратора в моем приложении ASP.NET MVC 3.Вот мой web.config:

<system.diagnostics>
    <trace autoflush="true" />
    <sources>
        <source name="requests" switchValue="All">
            <listeners>
                <remove name="default" />
                <add name="rollingxml" />
            </listeners>
        </source>
    </sources>
    <sharedListeners>
        <add name="rollingxml"
            type="Essential.Diagnostics.RollingXmlTraceListener, Essential.Diagnostics"
            initializeData="e:\myapi\v2\App_Data\Logfiles\{ApplicationName}-{LocalDateTime:yyyy-MM-dd}.svclog"
        />
    </sharedListeners>
</system.diagnostics>

Как видите, путь к папке для хранения файлов журнала жестко задан как e:\myapi\v2\App_Data\Logfiles\.

Я хочу поместить файлы журнала впапка app_data моего приложения, но поскольку приложение размещено в разных местах на моем компьютере разработчика, промежуточном сервере и главном сервере, мне нужно указать относительный путь в initializeData.Что-то вроде .\App_Data\Logfiles\.

Я пробовал .\App_Data\Logfiles\, но он перешел на c:\windows\system32\inetsrv\App_Data\Logfiles\.

Можно ли указать папку моего приложения, используя относительный путь с Essential.Diagnostics?

1 Ответ

2 голосов
/ 06 августа 2014

Используйте этот токен: {AppData}

<sharedListener>

<add name="rollingfile" 
             type="Essential.Diagnostics.RollingFileTraceListener, Essential.Diagnostics" 
             initializeData="{AppData}\{ApplicationName}-{DateTime:yyyy-MM-dd}.log" 
             convertWriteToEvent="true"></add>
<sharedListener>

ref: https://essentialdiagnostics.codeplex.com/wikipage?title=RollingFileTraceListener&referringTitle=Documentation

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...