<?xml version="1.0" encoding="utf-8"?>
<configuration>
  
	<!-- Register the section handler for the log4net section -->
	<configSections>
		<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
	</configSections>

  <!--
	<system.net>
		<settings>
			<servicePointManager expect100Continue="false" />
			<ipv6 enabled="false" />
		</settings>
	</system.net>
  -->

	<!-- This section contains the log4net configuration settings -->
	<log4net debug="false">

		<!-- Define some output appenders -->
		<appender name="FormAppender" type="AweSync.FireEventAppender,AweSync">
			<layout type="log4net.Layout.PatternLayout,log4net">
				<param name="ConversionPattern" value="%date{HH:mm:ss} - %message%newline" />
			</layout>

      <filter type="log4net.Filter.LevelMatchFilter">
        <levelToMatch value="ERROR" />
        <AcceptOnMatch value="true" />
      </filter>
			<filter type="log4net.Filter.LevelMatchFilter">
        <levelToMatch value="INFO" />
        <AcceptOnMatch value="true" />
      </filter>
      <filter type="log4net.Filter.LevelMatchFilter">
        <levelToMatch value="DEBUG" />
        <AcceptOnMatch value="false" />
      </filter>
      <filter type="log4net.Filter.LevelMatchFilter">
        <levelToMatch value="WARN" />
        <AcceptOnMatch value="false" />
      </filter>
      <!--filter type="log4net.Filter.DenyAllFilter" /-->
		</appender>
		
		<appender name="RollingFileAppender" type="AweSync.AwesyncRollingFileAppender,AweSync">
			<param name="File" value="Log\log.txt" />
      <param name="DatePattern" value=".yyyy-MM-dd.\l\o\g" />			
      <param name="AppendToFile" value="true" />
			<param name="lockingModel" type="log4net.Appender.FileAppender+MinimalLock" />
			<param name="maximumFileSize" value="10MB" />
			<param name="maxSizeRollBackups" value="2" />
      <param name="encoding" value="utf-8" />
			<layout type="log4net.Layout.PatternLayout,log4net">
				<param name="ConversionPattern" value="%date [%thread] %-5level - %message%newline" />
			</layout>
		</appender>
    <appender name="StatFileAppender" type="AweSync.AwesyncRollingFileAppender,AweSync">
      <param name="File" value="Stat\stat.txt" />
      <param name="DatePattern" value=".yyyy-MM-dd.\l\o\g" />
      <param name="AppendToFile" value="true" />
      <param name="lockingModel" type="log4net.Appender.FileAppender+MinimalLock" />
      <param name="maximumFileSize" value="10MB" />
      <param name="maxSizeRollBackups" value="2" />
      <param name="encoding" value="utf-8" />
      <layout type="log4net.Layout.PatternLayout,log4net">
        <param name="ConversionPattern" value="%date - %message%newline" />
      </layout>
    </appender>
    <appender name="StatFileContactsAppender" type="AweSync.AwesyncRollingFileAppender,AweSync">
      <param name="File" value="StatContacts\stat.txt" />
      <param name="DatePattern" value=".yyyy-MM-dd.\l\o\g" />
      <param name="AppendToFile" value="true" />
      <param name="lockingModel" type="log4net.Appender.FileAppender+MinimalLock" />
      <param name="maximumFileSize" value="10MB" />
      <param name="maxSizeRollBackups" value="2" />
      <param name="encoding" value="utf-8" />
      <layout type="log4net.Layout.PatternLayout,log4net">
        <param name="ConversionPattern" value="%date - %message%newline" />
      </layout>
    </appender>
    <appender name="StatFileTasksAppender" type="AweSync.AwesyncRollingFileAppender,AweSync">
      <param name="File" value="StatTasks\stat.txt" />
      <param name="DatePattern" value=".yyyy-MM-dd.\l\o\g" />
      <param name="AppendToFile" value="true" />
      <param name="lockingModel" type="log4net.Appender.FileAppender+MinimalLock" />
      <param name="maximumFileSize" value="10MB" />
      <param name="maxSizeRollBackups" value="2" />
      <param name="encoding" value="utf-8" />
      <layout type="log4net.Layout.PatternLayout,log4net">
        <param name="ConversionPattern" value="%date - %message%newline" />
      </layout>
    </appender>
    <appender name="StatFileDocsAppender" type="AweSync.AwesyncRollingFileAppender,AweSync">
      <param name="File" value="StatDocs\stat.txt" />
      <param name="DatePattern" value=".yyyy-MM-dd.\l\o\g" />
      <param name="AppendToFile" value="true" />
      <param name="lockingModel" type="log4net.Appender.FileAppender+MinimalLock" />
      <param name="maximumFileSize" value="10MB" />
      <param name="maxSizeRollBackups" value="2" />
      <param name="encoding" value="utf-8" />
      <layout type="log4net.Layout.PatternLayout,log4net">
        <param name="ConversionPattern" value="%date - %message%newline" />
      </layout>
    </appender>

    <!-- Setup the root category, add the appenders and set the default priority -->

		<root>
      <!-- <level value="ALL" /> -->
      <appender-ref ref="FormAppender" />
			<appender-ref ref="RollingFileAppender" />
		</root>
    <logger name="EventsStat" additivity="false">
      <!-- <levelToMatch value="INFO" /> -->
      <appender-ref ref="StatFileAppender" />
    </logger>
    <logger name="ContactsStat" additivity="false">
      <!-- <levelToMatch value="INFO" /> -->
      <appender-ref ref="StatFileContactsAppender" />
    </logger>
    <logger name="TasksStat" additivity="false">
      <!-- <levelToMatch value="INFO" /> -->
      <appender-ref ref="StatFileTasksAppender" />
    </logger>
    <logger name="NotebookStat" additivity="false">
      <!-- <levelToMatch value="INFO" /> -->
      <appender-ref ref="StatFileDocsAppender" />
    </logger>
  </log4net>
       
  <!-- -> <system.diagnostics>
    <trace autoflush="true" />
    <sources>
      <source name="System.Net" maxdatasize="1024">
        <listeners>
          <add name="MyTraceFile"/>
        </listeners>
      </source>
    </sources>
    <sharedListeners>
      <add name="MyTraceFile" type="System.Diagnostics.TextWriterTraceListener" initializeData="System.Net.trace.log" />
    </sharedListeners>
    <switches>
      <add name="System.Net" value="Verbose" />
    </switches>
  </system.diagnostics> <!- -->
  
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0" /></startup>
  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="System.Runtime" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-2.6.10.0" newVersion="2.6.10.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Threading.Tasks" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-2.6.10.0" newVersion="2.6.10.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-2.2.29.0" newVersion="2.2.29.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Net.Http.Primitives" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-2.2.29.0" newVersion="2.2.29.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-8.0.0.0" newVersion="8.0.0.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="log4net" publicKeyToken="669e0ddf0bb1aa2a" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-2.0.8.0" newVersion="2.0.8.0" />
      </dependentAssembly>
    </assemblyBinding>
    <enforceFIPSPolicy enabled="false" /> 
  </runtime>
</configuration>
