问题描述
vs2010.配置两个category:Maincategory,Dbcategory。defaultCategory是"Maincategory"分别对应2个listener:MainListener,DbListener,又分别对应两个TextFormatter。记录Dbcategory时,Maincategory也被记录了。如何只记Dbcategory代码在下层楼.
解决方案
本帖最后由 lee0623 于 2011-05-18 14:22:33 编辑
解决方案二:
代码:LogEntrylogEntry=newLogEntry();logEntry.Message="abcde";logEntry.Severity=System.Diagnostics.TraceEventType.Warning;logEntry.Categories.Clear();logEntry.Categories.Add("Dbcategory");intx=logEntry.Categories.Count;//x=1Logger.Write(logEntry);//同时记了Maincategory与Dbcategory
解决方案三:
沉的叫一个深,帮帮我
解决方案四:
解决方案五:
顶.........
解决方案六:
贴配置文件:<?xmlversion="1.0"?><configuration><configSections><sectionname="loggingConfiguration"type="Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.LoggingSettings,Microsoft.Practices.EnterpriseLibrary.Logging,Version=5.0.414.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35"requirePermission="true"/></configSections><loggingConfigurationname=""tracingEnabled="true"defaultCategory="Maincategory"logWarningsWhenNoCategoriesMatch="true"><listeners><addname="MainListener"type="Microsoft.Practices.EnterpriseLibrary.Logging.TraceListeners.RollingFlatFileTraceListener,Microsoft.Practices.EnterpriseLibrary.Logging,Version=5.0.414.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35"listenerDataType="Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.RollingFlatFileTraceListenerData,Microsoft.Practices.EnterpriseLibrary.Logging,Version=5.0.414.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35"fileName="Log\main.log"footer=""formatter="TextFormatter4Main"header=""rollInterval="Midnight"timeStampPattern="yyyy-MM-dd"/><addname="DbListener"type="Microsoft.Practices.EnterpriseLibrary.Logging.TraceListeners.RollingFlatFileTraceListener,Microsoft.Practices.EnterpriseLibrary.Logging,Version=5.0.414.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35"listenerDataType="Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.RollingFlatFileTraceListenerData,Microsoft.Practices.EnterpriseLibrary.Logging,Version=5.0.414.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35"fileName="Log\db.log"footer=""formatter="TextFormatter4Db"header=""rollInterval="Midnight"/></listeners><formatters><addtype="Microsoft.Practices.EnterpriseLibrary.Logging.Formatters.TextFormatter,Microsoft.Practices.EnterpriseLibrary.Logging,Version=5.0.414.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35"template="{timestamp(local:HH:mm:ss)}|{severity}|{message}"name="TextFormatter4Main"/><addtype="Microsoft.Practices.EnterpriseLibrary.Logging.Formatters.TextFormatter,Microsoft.Practices.EnterpriseLibrary.Logging,Version=5.0.414.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35"template="{timestamp(local:HH:mm:ss)}|{severity}|{message}"name="TextFormatter4Db"/></formatters><categorySources><addswitchValue="All"autoFlush="true"name="Maincategory"><listeners><addname="MainListener"/></listeners></add><addswitchValue="All"name="Dbcategory"><listeners><addname="DbListener"/></listeners></add></categorySources><specialSources><allEventsswitchValue="All"autoFlush="true"name="AllEvents"><listeners><addname="MainListener"/></listeners></allEvents><notProcessedswitchValue="All"name="UnprocessedCategory"><listeners><addname="MainListener"/></listeners></notProcessed><errorsswitchValue="All"name="LoggingErrors&Warnings"><listeners><addname="MainListener"/></listeners></errors></specialSources></loggingConfiguration><startup><supportedRuntimeversion="v4.0"sku=".NETFramework,Version=v4.0"/></startup><system.web><membershipdefaultProvider="ClientAuthenticationMembershipProvider"><providers><addname="ClientAuthenticationMembershipProvider"type="System.Web.ClientServices.Providers.ClientFormsAuthenticationMembershipProvider,System.Web.Extensions,Version=4.0.0.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35"serviceUri=""/></providers></membership><roleManagerdefaultProvider="ClientRoleProvider"enabled="true"><providers><addname="ClientRoleProvider"type="System.Web.ClientServices.Providers.ClientRoleProvider,System.Web.Extensions,Version=4.0.0.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35"serviceUri=""cacheTimeout="86400"/></providers></roleManager></system.web></configuration>
解决方案七:
引用3楼wxr0323(子夜)的回复:
参考
看你配置,只有一个categorySources,name是"General"我配了两个,一个是Maincategory,默认的;另一个Dbcategory现在记录至Dbcategory时,Maincategory被同时记录了,why?
解决方案八:
顶起..
解决方案九:
logEntry.Categories.Clear();是否在你Clear之前就已经被记录了?
解决方案十:
引用8楼kingdom_0的回复:
logEntry.Categories.Clear();是否在你Clear之前就已经被记录了?
Logger.Write(logEntry)才记录的.