開啟log4j的記錄原始碼行號的配置,會對系統性能產生影響!
一般,我們用log4j寫log的時候,很習慣於如下面記錄:
2005-01-11 09:57:57,816 DEBUG (BizProc.java:275) Begin to get connection... 2005-01-11 09:57:57,816 DEBUG (BizProc.java:275) Obtain connection [email protected] 2005-01-11 09:57:57,816 DEBUG (BizProc.java:275) Begin transaction [TX_2015_RECV] processing... 2005-01-11 09:57:57,925 DEBUG (BizProc.java:328) All of the values were: |
這裡會把Java Source Code中的行號帶出來,查詢錯誤很方便...
但,這也是問題之所在...文章中介紹,Log4j之所以可以得到行號,是用了JVM的一個特性,不知道大家有沒有注意到,如果我們的Java程式在執行時出現錯誤,會出現下面的資訊:
javax.naming.NamingException: Cannot create resource instance at org.apache.naming.factory.ResourceFactory.getObjectInstance(ResourceFactory.java:189) at javax.naming.spi.NamingManager.getObjectInstance(NamingManager.java:301 at org.apache.naming.NamingContext.lookup(NamingContext.java:834) at org.apache.naming.NamingContext.lookup(NamingContext.java:181) at org.apache.naming.NamingContext.lookup(NamingContext.java:822) at org.apache.naming.NamingContext.lookup(NamingContext.java:181) at org.apache.naming.NamingContext.lookup(NamingContext.java:822) at org.apache.naming.NamingContext.lookup(NamingContext.java:181) at org.apache.naming.NamingContext.lookup(NamingContext.java:822) at org.apache.naming.NamingContext.lookup(NamingContext.java:194) at org.apache.naming.SelectorContext.lookup(SelectorContext.java:183) at javax.naming.InitialContext.lookup(InitialContext.java:347) |
看到黑體字沒有,原來JVM已經內嵌支援Debug出行號資訊了!可是,這裡是出錯的時候,JVM丟擲的,那為什麼用 log4j.info() 的時候,也可以看到行號呢?
下面就是重點,Log4j中記錄行號的過程...
(1) 呼叫了 log4j.info() 或是log4j.debug()方法... |
但是,請注意,建立執行時的堆疊跟蹤,對JVM來說,是一項非常大的開銷!
所以,我們在配置log4j的PatternLayout的時候,如果是要上線到正式環境,一定要記者把引數關掉,
一般來說,用 “%d %-5p %m%n" 就可以滿足了!
原文請參考這裡:Sneaky, sneaky Log4J
===========================================================================
補遺篇~~~~~!
log4j.rootLogger=info, Console
log4j.logger.net.csdn.blog.xport=debug, RollingFile
log4j.additivity.net.csdn.blog.xport=false
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern=%d %-5p [%t] %C{1} - %m%n
log4j.appender.RollingFile=org.apache.log4j.RollingFileAppender
log4j.appender.RollingFile.File=SystemLog.log
log4j.appender.RollingFile.Append=true
log4j.appender.RollingFile.MaxFileSize=2MB
log4j.appender.RollingFile.layout=org.apache.log4j.PatternLayout
log4j.appender.RollingFile.layout.ConversionPattern=%d %-5p [%t] %C{1} - %m%n
相關推薦
開啟log4j的記錄原始碼行號的配置,會對系統性能產生影響!
今天看到一篇文章,談Log4j對系統的效能的影響...整理如下:一般,我們用log4j寫log的時候,很習慣於如下面記錄:2005-01-11 09:57:57,816 DEBUG (BizProc.java:275) Begin to get connection...2
jqGrid行編輯配置,方法,事件
<html><head><script type="text/javascript"> jQuery(document).ready(function(){ var lastsel2 jQuery("#rowed5").jqGrid({ d
Python全棧教程下載學習實戰+筆記+原始碼+作業視訊教程,字串和編碼如何使用操作!
字元編碼,我們已經講過了,字串也是一種資料型別,但是,字串比較特殊的是還有一個編碼問題。 如果你覺得看這些理論知識乏味不夠形象,可以進他們的Python技術扣扣裙【278136312】 裙公告裡面 有講的非常詳細的完整版Python入門到實戰+筆記+原始碼+作業視訊教程免費下載,生動的講解可以讓你思 路
全能APP時代:一對一直播視訊聊原始碼+一對多+商城,會掀起怎樣的“腥風血雨”
從直播pk 到一對一視訊聊,娛樂互動性原創性和個性化相輔相成 從2016年起直播市場風起雲湧,伴隨著一輪輪的市場競爭和淘汰。直播市場正經歷大洗牌,有人不禁要問直播真的迎來寒冬了嗎? 對此作為直播平臺程式開發的小編來說,直播市場越來越多元化;短視訊開始風靡市場更符合當下年輕時尚元素,一對一直播視訊聊也是市場
從Webpack原始碼探究打包流程,萌新也能看懂~
簡介 上一篇講述瞭如何理解tapable這個鉤子機制,因為這個是webpack程式的靈魂。雖然鉤子機制很靈活,而然卻變成了我們讀懂webpack道路上的阻礙。每當webpack執行起來的時候,我的心態都是佛繫心態,祈禱中間不要出問題,不然找問題都要找半天,還不如不打包。尤其是loader和plugin的執行
重磅!Notes Domino v10.0.1本月18號釋出,還有免費社群版來襲!
大家好,才是真好的。今天的內容會很豐滿,因為Domino相關的各個領域的動作實在是太快,讓人眼花繚亂,所以我用了一個驚歎詞“重磅”。今天的內容將分為四個部分: 一、Notes Domino V10.0.1本月18號釋出 如果你有IBM客戶ID號,在今天早上起來的時候,登入一下IBM
javascript+HTMl5遊戲下載,開發一個都能月薪上萬!舅服你
lock itl 五子棋 opera sta 你是 http store 進階學習 HTML5時代已經到來許久了,你是否已經掌握了那麽一點呢?今天小編給大家講講h5的折疊多設備、跨平臺特性, 即用HTML5制作遊戲。相比flash,HTML5更加靈活方便,隨著瀏覽器技術的
架構師提升篇:分布式系統中,如何提升系統性能?
架構師在分布式系統中,平衡業務計算的壓力分布,減少網絡上的數據流動,是一種提升性能的手段,請看下面的例子。1)案例背景某“機械設計研究所”歷史上在管理模式上采用傳統的層次化垂直結構。但是近年來,隨著用戶對產品更新換代的要求越來越快、質量要求越來越高,在競爭日益劇烈、外部壓力日益增大的形勢下,該所在管理模型上重
金立的資金鏈危機,會對中國手機產業造成什麽影響?
金立 金立這一段時間真的是流年不利,去年12月就有消息稱因自身原因,導致對歐菲科技形成數億元壞賬。而在今年1月中旬,金立手機董事長劉立榮所持41.4%的公司股權被法院凍結,凍結期2年。隨後在1月底,金立又曝出資金鏈問題,引發供應鏈企業以及金融機構等債權方擠兌,多家上遊供應鏈公司受到影響。劉立榮甚至還忙於尋求×
7月報告!Python坐穩編程榜首,要對Java說拜拜了!
進入 思維 支持 年度報告 java 教育 tail 有用 microsoft PYPL 發布7月編程語言指數榜PYPL 發布7月編程語言指數榜啦。Python 在今年5月以 22.8% 的份額,首次超越 Java 拿下榜首位置後。時隔2個月月份,7月Python保持持續上
一文看懂用word製作電子公章,2分鐘就能搞定!
現在很多公司的檔案和合同都是必須要加蓋公章才是有效的,有些公司發行檔案上就有公章,其實他們使用word做出來的,如果我們也還學會了,以後製作公章就簡單了!下面將逐一介紹如何製作公章,快來動動你的小手指吧! 步驟一:首先【插入】--【形狀】,選擇橢圓形,然後拖動至合適大小。
session與cookie的區別是什麼?如果客戶端禁用了cookie功能,將會對session有什麼影響?
cookie 和session 的區別: a、cookie資料存放在客戶的瀏覽器上,session資料放在伺服器上。 b、cookie不是很安全,別人可以分析存放在本地的COOKIE並進行COOKIE欺騙 考慮到安全應當使用session。 c、session會在一定時間內儲存在伺服
【FRM考試】我國金融風險管理人才緊缺,守住系統性風險是底線!
近日,全球金融市場出現較大幅度波動,我國股票市場同樣未能倖免,上證指數一度跌至2500點以下,關於大盤觸底的猜測甚囂塵上。 對此,中國銀保監會主席郭樹清接受媒體採訪並作出迴應,他表示,當前我國經濟執行穩中向好的趨勢沒有改變,系統性金融風險完全可控。 他解釋道,近
趁“未老”,再認真一次,我覺得你能更好!
每一年的年尾,我都會問自己:這一年,我收穫了什麼? 你呢?  
如何理解“跳出率”,它對SEO有什麼影響?
跳出率是搜尋引擎優化專家,多年以來熱衷討論的話題,特別是在衡量企業網站相關產品轉化率的時候,有著重要的參考價值,但在以往的資料分析中,卻又是經常被SEO人員所忽略的指標。 因此,正確的認知“跳出率”對網站優化顯得格外重要。 那麼,如何理解“跳出率”,它對SEO有什麼影響? 根據
使用jvisualvm監控JAVA程式,注意對程式效能的影響
最近在使用阿里的Dubbo【http://code.alibabatech.com/wiki/display/dubbo/Home-zh】做一個實時分析功能,為了提高效能,對程式進行了很多的優化工作,在此過程中JDK中的jvisualvm的確功勞不小,但是也有讓
據說這份高考卷,只有程式設計師能得滿分!
程式猿(ID:imkuqin) 綜合自網路參考:51CTO(id:weixin51cto)、樂
與不同的人在一起,會有不一樣的人生!
在現實生活中,和誰在一起的確很重要 能改變一個人的成長軌跡 甚至決定個人的人生成敗 和什麼樣的人在一起,就會有什麼樣的人生 和勤奮的人在一起,自己不會懶惰 和積極的人在一起,自己不會消沉 與智者同行,會不同凡響 與高人為伍,能登上巔峰 人是惟一能接受暗示的動物
程式設計師,這樣面試,你的成功率能達到 90%!
點選上方“CSDN”,選擇“置頂公眾號” 關鍵時刻,第一時間送達! 一、概述 面試,難還是不難?取決於面試者的底蘊(氣場+技能)、心態和認知及溝通技巧。面試其實可以理解為一場聊天和談判,在這過程中有心理、思想上的碰撞和博弈。其實你只需要搞清楚一個邏輯:“面試官為什麼會這樣問?他希望聽到什麼答案
C# pdb類型文件的作用之一:記錄具體異常的關鍵信息,如文件路徑和行號
== pro 問題 height quantity 最新 當前 文件的 anti pdb 是 Program Debug Database 的簡稱; 背景 我負責的一個Services(服務)出問題了,原因是一個 dll 內部邏輯出問題了; 在本地修改源碼後,重新生