c# - Log4net buffer size not working -
im trying enter every 100 records database.if specify buffer size 100.it stills enters each record database.is there way can specify flush interval , buffer size.so comes first takes that. config.
<log4net> <appender name="adonetappender" type="log4net.appender.adonetappender"> <buffersize value="10" /> <connectiontype value="system.data.sqlclient.sqlconnection, system.data, version=4.0.0.0, culture=neutral, publickeytoken=b77a5c561934e089" /> <connectionstring value="data source=;user id=;password=" /> <commandtext value="insert errorlog ([clientname],[username],[administration],[selectedentity],[project],[date],[thread],[level],[logger], [message],[exception],[browser],[ipaddress],[url],[errormessage]) values (@clientname,@username,@administration,@selectedentity,@project,@log_date, @thread, @log_level, @logger, @message, @exception,@browser,@ipaddress,@url,@errormessage)"/> <parameter> <parametername value="@clientname" /> <dbtype value="string" /> <size value="50" /> <layout type="log4net.layout.patternlayout"> <conversionpattern value="%property{clientname}" /> </layout> </parameter> <parameter> <parametername value="@username" /> <dbtype value="string" /> <size value="100" /> <layout type="log4net.layout.patternlayout"> <conversionpattern value="%property{username}" /> </layout> </parameter> <parameter> <parametername value="@administration" /> <dbtype value="string" /> <size value="100" /> <layout type="log4net.layout.patternlayout"> <conversionpattern value="%property{administration}" /> </layout> </parameter> <parameter> <parametername value="@selectedentity" /> <dbtype value="string" /> <size value="100" /> <layout type="log4net.layout.patternlayout"> <conversionpattern value="%property{selectedentity}" /> </layout> </parameter> <parameter> <parametername value="@project" /> <dbtype value="string" /> <size value="100" /> <layout type="log4net.layout.patternlayout"> <conversionpattern value="%property{project}" /> </layout> </parameter> <parameter> <parametername value="@log_date" /> <dbtype value="datetime" /> <layout type="log4net.layout.rawtimestamplayout" /> </parameter> <parameter> <parametername value="@thread" /> <dbtype value="string" /> <size value="255" /> <layout type="log4net.layout.patternlayout"> <conversionpattern value="%thread" /> </layout> </parameter> <parameter> <parametername value="@log_level" /> <dbtype value="string" /> <size value="50" /> <layout type="log4net.layout.patternlayout"> <conversionpattern value="%level" /> </layout> </parameter> <parameter> <parametername value="@logger" /> <dbtype value="string" /> <size value="255" /> <layout type="log4net.layout.patternlayout"> <conversionpattern value="%logger" /> </layout> </parameter> <parameter> <parametername value="@message" /> <dbtype value="string" /> <size value="4000" /> <layout type="log4net.layout.patternlayout"> <conversionpattern value="%message" /> </layout> </parameter> <parameter> <parametername value="@exception" /> <dbtype value="string" /> <size value="2000" /> <layout type="log4net.layout.exceptionlayout" /> </parameter> <parameter> <parametername value="@browser" /> <dbtype value="string" /> <size value="100" /> <layout type="log4net.layout.patternlayout"> <conversionpattern value="%property{browser}" /> </layout> </parameter> <parameter> <parametername value="@ipaddress" /> <dbtype value="string" /> <size value="100" /> <layout type="log4net.layout.patternlayout"> <conversionpattern value="%property{ipaddress}" /> </layout> </parameter> <parameter> <parametername value="@url" /> <dbtype value="string" /> <size value="255" /> <layout type="log4net.layout.patternlayout"> <conversionpattern value="%property{url}" /> </layout> </parameter> <parameter> <parametername value="@errormessage" /> <dbtype value="string" /> <size value="255" /> <layout type="log4net.layout.patternlayout"> <conversionpattern value="%property{errormessage}" /> </layout> </parameter> </appender> <root> <appender-ref ref="adonetappender"/> </root> </log4net>
buffersize specifies how many items shall kept in ram before committing them. not define lossyness of logger.
to define lossy logger, need state explicitly , define can lost:
<lossy value="true"/> <evaluator type="log4net.core.levelevaluator"> <threshold value="error" /> </evaluator>
Comments
Post a Comment