日韩在线一区二区三区,日本午夜一区二区三区,国产伦精品一区二区三区四区视频,欧美日韩在线观看视频一区二区三区 ,一区二区视频在线,国产精品18久久久久久首页狼,日本天堂在线观看视频,综合av一区

[發(fā)明專利]一種檢測未判斷日志輸出級別而直接輸出日志的方法有效

專利信息
申請?zhí)枺?/td> 201110362084.X 申請日: 2011-11-16
公開(公告)號: CN102508778A 公開(公告)日: 2012-06-20
發(fā)明(設計)人: 夏雪;闞寶麗 申請(專利權)人: 山東浪潮齊魯軟件產業(yè)股份有限公司
主分類號: G06F11/36 分類號: G06F11/36
代理公司: 暫無信息 代理人: 暫無信息
地址: 250001 山東*** 國省代碼: 山東;37
權利要求書: 查看更多 說明書: 查看更多
摘要:
搜索關鍵詞: 一種 檢測 判斷 日志 輸出 級別 直接 方法
【說明書】:

?

技術領域

發(fā)明涉及計算機技術,具體地說是一種檢測未判斷日志輸出級別而直接輸出日志的方法,用于檢測在j2ee軟件應用中使用了Log4j的日志輸出功能卻未判斷日志輸出級別的問題。

背景技術

Log4j是廣泛應用于j2ee應用的開源框架,用來輸出j2ee應用運行過程中產生的日志,如果使用不當將對系統(tǒng)性能造成影響,并發(fā)量高、大數量時甚至會導致宕機的情況。具體應用錯誤的情況如下:輸出日志時未先判斷日志輸出級別是否被允許輸出,當該級別不允許輸出時,在運行時,仍然會先構建傳入方法內的作為輸出內容的參數字符串,這個過程占用的CPU和內存資源是沒有價值的。

現有技術中,僅能通過在運行環(huán)境中實際執(zhí)行操作,然后再分析JVM內存的方式去發(fā)現使用Log4j框架時未判斷日志輸出級別而直接輸出日志的問題,這種方式由于需要部署運行環(huán)境并要實際執(zhí)行操作,所以會消耗更多的成本和更多的時間。而且,對于操作未執(zhí)行到的語句無法找出它的問題,對于內存消耗不明顯的語句也無法找出它的問題。

發(fā)明內容

本發(fā)明的技術任務是針對上述現有技術的不足,提供一種檢測周期短、成本低的檢測未判斷日志輸出級別而直接輸出日志的方法。

本發(fā)明的技術任務是按以下方式實現的:一種檢測未判斷日志輸出級別而直接輸出日志的方法,包括以下步驟:

A、分析JAVA代碼的類文件,遍歷所有的命令代碼,找出使用了Log4j日志輸出級別判斷的命令;

B、分析JAVA代碼的類文件,遍歷所有的命令代碼,找出使用了Log4j框架輸出日志功能的命令,并判斷在調用前是否已經判斷了日志輸出級別。

進一步的,該方法包括以下步驟:

A、分析JAVA代碼的類文件,遍歷所有的命令代碼,找出使用了Log4j日志輸出級別判斷的命令:

打開JAVA代碼的類文件,逐條命令進行解析,找出Log4j日志輸出級別判斷的判定語句的語句塊范圍,

a1、若命令的操作碼為IFEQ,說明該命令是一個判定語句,取得該命令的范圍,該范圍標明了判定語句開始執(zhí)行的位置和結束的位置;

a2、若命令的操作碼為INVOKEVIRTUAL,且執(zhí)行的方法名為isDebugEnabled或isInfoEnabled或isEnabledFor,說明該命令調用了Log4j的日志輸出級別判斷的功能,取得該命令所處的位置,判斷該命令是否處于判定語句塊內,如果判斷日志輸出級別的語句處于判定語句塊中,就記錄下判定語句塊的開始位置和結束位置;

a3、重復a1和a2的過程,將該類文件中所有已經調用了Log4j的日志輸出級別判斷的功能的判定語句塊找出并記錄語句塊的開始位置和結束位置;

B、分析JAVA代碼的類文件,遍歷所有的命令代碼,找出使用了Log4j框架輸出日志功能的命令,并判斷在調用前是否已經判斷了日志輸出級別:

打開JAVA代碼的類文件,逐條命令進行解析,若符合以下所有條件,判定該命令使用了Log4j輸出日志的功能:

該命令的操作碼為INVOKEVIRTUAL;

操作類的類名為org.apache.Log4j.Logger;

執(zhí)行的方法名為debug或info或error或fatal或warn;

如果判定結果為該命令使用了Log4j輸出日志的功能,且該命令的位置大于A中記錄的判定語句塊的開始位置小于結束位置,則可認為它位于判定語句塊內,可判定該處的日志輸出已經提前進行了日志級別是否允許輸出的判定,否則,可判定此處存在使用Log4j框架時未判斷日志輸出級別而直接輸出日志的錯誤用法。

本發(fā)明的檢測未判斷日志輸出級別而直接輸出日志的方法與現有技術相比具有以下突出的有益效果:

(一)???????????????????該方法采用的是全新的靜態(tài)分析的方法,只需要源代碼編譯后的類文件,不需要運行環(huán)境,極大地降低了檢測成本;

(二)???????????????????開發(fā)人員編寫完代碼就可以檢查他的代碼是否存在使用Log4j框架時未判斷日志輸出級別而直接輸出日志的問題,不需要發(fā)布到運行環(huán)境,也不需要人工去執(zhí)行它,所以極大地降低了檢測周期;

(三)???????????????????可對所有的java類文件進行檢測,檢測時遍歷了程序的所有命令,所以可以找出所有使用Log4j框架時未判斷日志輸出級別而直接輸出日志的問題;

下載完整專利技術內容需要扣除積分,VIP會員可以免費下載。

該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于山東浪潮齊魯軟件產業(yè)股份有限公司,未經山東浪潮齊魯軟件產業(yè)股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯系【客服

本文鏈接:http://www.szxzyx.cn/pat/books/201110362084.X/2.html,轉載請聲明來源鉆瓜專利網。

×

專利文獻下載

說明:

1、專利原文基于中國國家知識產權局專利說明書;

2、支持發(fā)明專利 、實用新型專利、外觀設計專利(升級中);

3、專利數據每周兩次同步更新,支持Adobe PDF格式;

4、內容包括專利技術的結構示意圖流程工藝圖技術構造圖

5、已全新升級為極速版,下載速度顯著提升!歡迎使用!

請您登陸后,進行下載,點擊【登陸】 【注冊】

關于我們 尋求報道 投稿須知 廣告合作 版權聲明 網站地圖 友情鏈接 企業(yè)標識 聯系我們

鉆瓜專利網在線咨詢

周一至周五 9:00-18:00

咨詢在線客服咨詢在線客服
tel code back_top
主站蜘蛛池模板: 久久综合伊人77777麻豆最新章节| 天干天干天啪啪夜爽爽99| 日韩久久精品一区二区| 97人人澡人人爽91综合色| 在线视频不卡一区| 欧美日韩国产精品一区二区亚洲| 色婷婷综合久久久中文一区二区| 91麻豆国产自产在线观看hd | 李采潭无删减版大尺度| 国产在线干| 国产一区中文字幕在线观看| 欧美国产精品久久| 天干天干天啪啪夜爽爽99| 99久久精品国| 91麻豆精品国产91久久久更新时间| 久久国产中文字幕| 国产91丝袜在线熟| 国产精品免费观看国产网曝瓜| 国产男女乱淫真高清视频免费| 午夜激情电影在线播放| 亚日韩精品| 91偷自产一区二区三区精品| 四虎国产精品永久在线国在线| 欧美一区二区久久| 国产二区免费| 欧美精品六区| 欧美日韩一二三四区| 亚洲精品一品区二品区三品区 | 国产精品无码专区在线观看| 国产九九九精品视频| 99国产精品久久久久老师| 91超碰caoporm国产香蕉| 国产精品一区二区久久乐夜夜嗨 | 久久九九亚洲| 欧美一区二区三区激情在线视频| 久久久精品久久日韩一区综合| 大bbw大bbw巨大bbb| 国产精品久久久久久久久久嫩草| 性色av香蕉一区二区| 国产伦精品一区二区三区四区| 国产69精品久久久久999天美| 国产精品麻豆99久久久久久| 91精品国产高清一二三四区| 国产精品一区二区中文字幕| 免费看片一区二区三区| 国产1区2区视频| 黄毛片在线观看| 99国产精品久久久久老师| 国产足控福利视频一区| 性生交大片免费看潘金莲| 国产69精品久久久久999小说| 午夜一区二区视频| 国产日韩欧美精品一区二区| 狠狠色噜噜狠狠狠狠2021免费 | 少妇bbwbbwbbw高潮| 天堂av一区二区三区| 91久久国产露脸精品国产| 在线国产一区二区| 色婷婷精品久久二区二区6| 久久99视频免费| 国产精品无码专区在线观看| 少妇高潮大叫喷水| 正在播放国产一区二区| 国产一区二区综合| 亚洲乱亚洲乱妇28p| 青苹果av| 国产精品女同一区二区免费站| 亚洲欧美国产精品一区二区| 色就是色欧美亚洲| 国产国产精品久久久久| 日韩欧美国产高清91| 国产91精品一区二区麻豆亚洲| 亚洲国产日韩综合久久精品 | 亚洲国产一区二区久久久777| 日本精品在线一区| 午夜剧场伦理| 精品日韩久久久| 狠狠色狠狠色综合系列| 一级女性全黄久久生活片免费| 欧洲在线一区二区| 理论片高清免费理伦片| 国产精品久久久久久久久久久新郎|