国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

log4net和SQL Server 2000

瀏覽:118日期:2023-10-31 09:50:06

log4net是在項目中很常用的一個日志工具,用來記錄系統的各種信息和一些異常情況. log4net可以把信息以各種方式輸出.關于log4net的介紹和使用,官方網站上有詳細的說明.

今天在使用log4net的時候遇到幾個問題,想和大家討論一下. 以log4net官網上的那個例子為例:配置文件如下:

1<appender name='AdoNetAppender' type='log4net.Appender.AdoNetAppender'>2;<bufferSize value='100' />3;<connectionType value='System.Data.SqlClient.SqlConnection, System.Data, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' />4;<connectionString value='data source=[database server];initial catalog=[database name];integrated security=false;persist security info=True;User ID=[user];Password=[password]' />5;<commandText value='INSERT INTO Log ([Date],[Thread],[Level],[Logger],[Message],[Exception]) VALUES (@log_date, @thread, @log_level, @logger, @message, @exception)' />6;<parameter>7;;;;;<parameterName value='@log_date' />8;;;;;<dbType value='DateTime' />9;;;;;<layout type='log4net.Layout.RawTimeStampLayout' />10;</parameter>11;<parameter>12;;;;;<parameterName value='@thread' />13;;;;;<dbType value='String' />14;;;;;<size value='255' />15;;;;;<layout type='log4net.Layout.PatternLayout'>16;<conversionPattern value='%thread' />17;;;;;</layout>18;</parameter>19;<parameter>20;;;;;<parameterName value='@log_level' />21;;;;;<dbType value='String' />22;;;;;<size value='50' />23;;;;;<layout type='log4net.Layout.PatternLayout'>24;<conversionPattern value='%level' />25;;;;;</layout>26;</parameter>27;<parameter>28;;;;;<parameterName value='@logger' />29;;;;;<dbType value='String' />30;;;;;<size value='255' />31;;;;;<layout type='log4net.Layout.PatternLayout'>32;<conversionPattern value='%logger' />33;;;;;</layout>34;</parameter>35;<parameter>36;;;;;<parameterName value='@message' />37;;;;;<dbType value='String' />38;;;;;<size value='4000' />39;;;;;<layout type='log4net.Layout.PatternLayout'>40;<conversionPattern value='%message' />41;;;;;</layout>42;</parameter>43;<parameter>44;;;;;<parameterName value='@exception' />45;;;;;<dbType value='String' />46;;;;;<size value='2000' />47;;;;;<layout type='log4net.Layout.ExceptionLayout' />48;</parameter>49</appender>50對于其中的<buffersize value=100>是指當log信息達到100條時, log信息就會被寫到數據庫中,但是當我設置value=2時,我發現當有兩條log信息時,信息并沒有被寫到數據庫中,要到第三條log信息產生時,前兩條log信息才被寫到數據中,繼續有新的log信息生成時也是同樣的情況。那我就覺得log4net實現buffersize的機制是當有一條新的log信息產生時,系統會檢查已存在的信息是否達到buffersize了,如果到了,那就把已經存在的Log信息寫到數據中,而最新的那條log信息并沒有被寫到數據庫中。

log4net通常也被用來記錄系統的各種異常信息,也非常方便。但是不知道log4net本生有異常時,似乎并沒有任何異常信息被記錄下來(也可能是我不知道)。以上面的配置信息為例,“@message'的長度被設置為4000,但是如果數據庫中字段的長度沒有4000,比如250。這種設置情況很少,但是確實是一個問題。而這個時候,buffersize value值不是0,而是比如100。那么當第101條log信息產生時,系統就會開始把log信息寫到數據中。而其中第一條的message信息的長度超過250,這個時候就會發生異常,從這個時候開始,所有的log信息就都不會被寫到數據中了。也不會有任何異常信息拋出來。不知道是我的認識不夠深入呢,還是這個真的是個問題。

http://www.cnblogs.com/jun1st/archive/2006/09/14/503700.html

標簽: Sql Server 數據庫
主站蜘蛛池模板: 国产亚洲欧美一区二区 | 久久国产免费 | 91精品国产色综合久久不 | 精品热99 | 久久国产首页 | 国产成人精品曰本亚洲 | 国产午夜永久福利视频在线观看 | 九九久久九九久久 | 欧美视频一区二区专区 | 成年女人免费视频播放成年m | 成人禁在线观看午夜亚洲 | 国产精品一区二区久久精品涩爱 | 色一伦一情一区二区三区 | 欧美一级aⅴ毛片 | 国产精品久久久久久久久久久不卡 | 亚洲欧美日本在线观看 | 亚洲视频网站在线观看 | 国产欧美日韩精品高清二区综合区 | a级国产乱理伦片在线 | 国产乱码一区二区三区四川人 | 黄色激情在线 | 综合久色 | 中文字幕一区二区三区久久网站 | 免费观看久久 | 国产成人免费手机在线观看视频 | 99久久成人国产精品免费 | 成人毛片免费视频播放 | 国产午夜精品久久久久小说 | 国产成人精品综合久久久 | 欧美成人极品怡红院tv | 九九99视频在线观看视频观看 | 国产精品三区四区 | 亚洲精品在线网站 | 欧美精品videos| 国产午夜人做人视频羞羞 | 美女张开腿让男人桶爽免费网站 | 日韩精品一区二区三区高清 | 看性过程三级视频在线观看 | 98国内自拍在线视频 | 成人午夜大片免费看爽爽爽 | 日本理论片免费高清影视在线观看 |