日志記錄組件:log4web.js

lope 11年前發布 | 36K 次閱讀 日志處理 log4web.js

簡介

基于瀏覽器端的console的日志記錄組件。支持如下特性:

  1. 日志級別設置;

  2. 異常提交到服務器;

  3. 提交環境信息;

  4. 日志Tag過濾器;

如何使用

瀏覽器下的引用

<script src="log4web.js"></script><script>
    log4web.log("houyhea");
    log4web.error(new Error("houyhea"));</script>

requirejs下的引用

require.config({
    paths: {        "log4web": "path/to/log4web",
    }
});
define(["log4web"], function (log4web) {
    log4ewb.log("houyhea");
    log4web.error(new Error("houyhea"));
});

API說明

config(config)

對日志組件進行配置。如果不傳參數,則返回當前日志組件的配置信息。配置項主要有:

debug

是否開啟調試模式。如果開啟調試模式,則可以在console中輸入window.log4web進行調試.默認值:0.

level

日志級別,error(4)、warn(3)、info(2)、log(1)、debug(0),級別越高,輸出的日志越少。比如:當前級別如果是warn,則只輸出error、warn的日志.默認值:debug; 代碼示例

var Level = {        "error": 4,        "warn": 3,        "info": 2,        "log": 1,        "debug": 0
    };

tagFilter

日志tag篩選,正則表達式字符串.使用者可以通過在console控制臺通過log4web.config({tagFilter:"usersmodule"})配置值輸出"usersmodule"tag的日志。默認值:"".

log4web.config({tagFilter:"usersmodule"});

post

當發生異常是是否post到服務器。此處只有當msg參數是Error對象時,才判斷是否有提交到服務器.默認值:0.

postContextInfo

是否提交環境數據.默認值:1

postUrl

異常信息提交的服務器地址.默認值:"/api/exception"。代碼示例:

log4web.config({
            debug: 0,
            level: "debug",
            tagFilter: "",
            post: 0,
            postContextInfo: 1,
            postUrl: "/api/exception"
        });

這里單獨說一下postData,主要包含如下信息:

  1. browser.瀏覽器描述信息。返回字符串,格式:" Chrome,39.0.2171.95",逗號前表示瀏覽器類型,逗號后表示瀏覽器版號.

  2. os.操作系統字符串。

  3. flash.返回字符串,格式:"1,15",逗號分隔,第一個表示是否安裝flash,1:是,0:否。15:表示flash版本.

  4. referrer.document.referrer信息.

  5. url.當前頁面的url.

  6. resolution.屏幕分辨率信息.返回格式:"1920*1080",(window.screen對象獲取).

  7. name.異常名稱。

  8. message.異常message。

  9. stack.異常調用堆棧字符串。

log(msg,tag)

msg

日志消息。可以是字符串或Error對象。

tag

用于過濾器,可為空。調用示例:

log4web.log("log info.","usersmodule");
log4web.log("log info.");

info(msg,tag)

msg

日志消息。可以是字符串或Error對象。

tag

用于過濾器,可為空。

debug(msg,tag)

msg

日志消息。可以是字符串或Error對象。

tag

用于過濾器,可為空。

warn(msg,tag)

msg

日志消息。可以是字符串或Error對象。

tag

用于過濾器,可為空。

error(msg,tag)

msg

日志消息。可以是字符串或Error對象。

tag

用于過濾器,可為空。

測試用例

參見

瀏覽器兼容性

兼容IE8+,chrome,firefox。

依賴

需要依賴jquery庫,post數據用到了jquery.post方法。如果不想依賴jquery,可自行修改相關代碼。

項目主頁:http://www.baiduhome.net/lib/view/home/1419943969328

 本文由用戶 lope 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!