VS 2012의 WCF 응용 프로그램에서이 코드를 사용하고 있으며 SQL Express는 2008 R2입니다.log4net은 데이터베이스에 삽입되지 않지만 파일은 정상적으로 작동합니다.
FileAppendor 및 Database Appendor를 포함 시켰습니다. File Appender는 제대로 작동하지만 데이터를 데이터베이스에 삽입하지 않습니다.
동일한 연결 문자열이 잘 작동하는지 확인하고 레코드를 테이블에 삽입했습니다.
또한 나는 1 버퍼 값, 여전히 행운을 설정 한<bufferSize value="1" />
이 내 config 파일
<?xml version="1.0"?>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
</configSections>
<log4net>
<appender name="AdoNetAppender" type="log4net.Appender.AdoNetAppender">
<bufferSize value="1" />
<connectionType value="System.Data.SqlClient.SqlConnection, System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<connectionString value="server=(local)\\SQLEXPRESS;database=Log_DB;Integrated Security=SSPI;Connection Timeout=360;" />
<connectionString value="data source=[(local)\\SQLEXPRESS];initial catalog=[Log_DB];integrated security=SSPI" />
<commandText value="INSERT INTO [Error_Log] ([Date_time]) VALUES (@Date_time)" />
<parameter>
<parameterName value="@Date_time" />
<dbType value="DateTime" />
<!--<layout type="log4net.Layout.RawTimeStampLayout" />-->
<layout type="log4net.Layout.PatternLayout" value="%date{yyyy'-'MM'-'dd HH':'mm':'ss'.'fff}" />
</parameter>
</appender>
<appender name="LogFileAppender" type="log4net.Appender.FileAppender">
<file value="log-file.txt"/>
<appendToFile value="true"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger [%ndc] ID=%property{EventID} - %message%newline" />
</layout>
</appender>
<!-- Setup the root category, add the appenders and set the default level -->
<root>
<level value="ALL" />
<appender-ref ref="LogFileAppender" />
<appender-ref ref="AdoNetAppender" />
</root>
</log4net>
<appSettings>
<add key="aspnet:UseTaskFriendlySynchronizationContext" value="true" />
<add key="log4net.Internal.Debug" value="true"/>
</appSettings>
...
</configuration>
내가 다른 물건을 놓치고 마입니까?
또한 Internal.Debug를 true로 설정하여 정보를 얻지 못하고 있습니다. log4net의 내부 디버그 정보를 얻는 방법은 무엇입니까?