我使用的是log4javascript版本1.4.3 在我的应用程序中,它适用于所有日志级别 除了跟踪 。为了简化问题并确保问题不在我的应用程序中,我使用作者示例代码作为示例并添加了setThreshold(log4javascript.TRACE),然后添加了一行来生成跟踪条目(我也删除了他的例子中只与ajaxAppender相关的行只留下了popUpAppender。)
当我运行代码时,错误和 debug 消息出现在log4javascript popUp窗口中,但没有 trace 消息。
显然,我没有正确理解跟踪级别的使用或跟踪消息的配置。如果有人可以指出我的方式错误,那么我可以修复我的应用程序日志记录。
下面失败的示例代码。
<?xml version="1.0"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<title>log4javascript example from manual</title>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
<meta name="author" content="Tim Down - tim@log4javascript.org" />
<meta name="description" content="log4javascript, a logging framework for JavaScript based on log4j" />
<meta name="robots" content="all" />
<script type="text/javascript" src="/tracker/libraries/log4javascript.js"></script>
<script type="text/javascript">
//<![CDATA[
var log = log4javascript.getLogger();
var popUpAppender = new log4javascript.PopUpAppender();
var popUpLayout = new log4javascript.PatternLayout("%d{HH:mm:ss} %-5p - %m%n");
popUpAppender.setLayout(popUpLayout);
// new line below
popUpAppender.setThreshold(log4javascript.Level.TRACE);
log.addAppender(popUpAppender);
log.debug("Debugging message (appears in pop-up)");
log.error("Error message (appears in pop-up and in server log)");
// new line below
log.trace("Trace message");
//]]>
</script>
</head>
<body>
<h1>log4javascript example from manual</h1>
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
var pageTracker = _gat._getTracker("UA-448786-3");
pageTracker._initData();
pageTracker._trackPageview();
</script>
</body>
</html>
答案 0 :(得分:6)
问题是记录器也有一个阈值级别,默认设置为DEBUG
。在致电log.trace()
之前添加以下行:
log.setLevel(log4javascript.Level.TRACE);