[英]log4js ConsoleAppender initialization
我想知道是否有人碰巧有使用Log4js的經驗? 在將其添加到記錄器對象后,似乎它的常規ConsoleAppender並不總是可以立即使用...如果我在文檔中有兩個順序腳本標簽,例如:
//Initialize logger
<script type="text/javascript">
var logger = new Log4js.getLogger("JSLOG");
logger.addAppender(new Log4js.ConsoleAppender(logger, false));
logger.setLevel(Log4js.Level.INFO);
</script>
//Use logger
<script type="text/javascript">
logger.info('Test test');
</script>
...這會導致控制台彈出窗口(彈出窗口)在頁面加載時出現錯誤消息:
12:58:23 PM WARN Log4js - Could not run the listener function () {
return fn.apply(object, arguments);
}.
TypeError: this.outputElement is null
控制台仍在初始化,之后就在那里,但是對於第一個記錄器調用,它似乎還沒有完全存在。 如果我第一個記錄器調用setTimeout(“ logger.info('test test')”,1000),則沒有錯誤。 這就好像還沒有立即准備好。 有人以前看到過此消息,或者知道什么是解決方法?
干杯
我可以建議改用log4javascript嗎? 它具有非常相似的API和高級控制台,並且正在積極開發中。 log4javascript中的等效項為:
<script type="text/javascript" src="log4javascript.js"></script>
<script type="text/javascript">
//Initialize logger
var logger = log4javascript.getDefaultLogger();
logger.setLevel(log4javascript.Level.INFO);
</script>
<script type="text/javascript">
//Use logger
logger.info('Test test');
</script>
我應該指出,我是log4javascript的作者。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.