Ответ 1
Документация прямо:
файл: полный или относительный путь к файлу журнала.
Итак, все, что вам нужно - это полный путь, например C:\physicalpath\LOG\Log.log
или релятивный, это нужно начинать с точки char .
, как .\App_Data\Log4Net.Logs
вы также можете использовать имя папки в атрибуте file
, тогда вы должны использовать атрибут datePattern
для указания имени файла, например:
<appender name="FileAppender" type="log4net.Appender.RollingFileAppender">
<file value=".\\App_Data\\Log4Net.Logs\\backend"/>
<datePattern value=".yyyy-MM-dd'.log'"/>
<appendToFile value="true"/>
<maximumFileSize value="256KB"/>
<maxSizeRollBackups value="2"/>
<rollingStyle value="Date"/>
<staticLogFileName value="false"/>
<lockingModel type="log4net.Appender.FileAppender+MinimalLock"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%level %thread %logger - %message%newline"/>
</layout>
</appender>
Также помните, чтобы добавить
<lockingModel type="log4net.Appender.FileAppender+MinimalLock"/>
Таким образом, вы можете избежать блокировки файла log4net
, и вы не можете использовать его для добавления своих сообщений.
Если вы не используете log4net
, не забудьте добавить <root>
node, это тот, который позволяет log4net
знать, что вы хотите использовать, а не <appender>
например, вы можете иметь 10 <appender>
узлов и использовать только один, <root>
node тогда настроен только на тот, который вы хотите использовать...
здесь полная конфигурация с 2 Mongo Appenders и 1 File Appender, <root>
указывает, что используется только файл-приложение:
<log4net>
<appender name="MongoAppender" type="log4net.Appender.MongoDBAppender, log4mongo-net">
<!-- MongoDB 1 connection options -->
<host value="staff.mongohq.com"/>
<port value="10077"/>
<databaseName value="myApp_2011"/>
<collectionName value="logs_net"/>
<userName value="myself"/>
<password value="123456"/>
</appender>
<appender name="MongoAppenderAppHarbor" type="log4net.Appender.MongoDBAppender, log4mongo-net">
<!-- MongoDB 2 connection options -->
<host value="staff.mongohq.com"/>
<port value="10048"/>
<databaseName value="d1741d63-46b1-4a44-9c49-8c28cecae36b"/>
<collectionName value="logs_net"/>
<userName value="myself"/>
<password value="123456"/>
</appender>
<appender name="FileAppender" type="log4net.Appender.RollingFileAppender">
<!-- Local file options -->
<file value=".\\App_Data\\Log4Net.Logs\\backend"/>
<datePattern value=".yyyy-MM-dd'.log'"/>
<appendToFile value="true"/>
<maximumFileSize value="256KB"/>
<maxSizeRollBackups value="2"/>
<rollingStyle value="Date"/>
<staticLogFileName value="false"/>
<lockingModel type="log4net.Appender.FileAppender+MinimalLock"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%level %thread %logger - %message%newline"/>
</layout>
</appender>
<root>
<!--
<level value="DEBUG" />
<appender-ref ref="MongoAppender" />
<appender-ref ref="MongoAppenderAppHarbor" />
-->
<appender-ref ref="FileAppender"/>
</root>
</log4net>