log4javascript - 不显示跟踪消息

时间:2012-10-02 14:16:21

标签: javascript log4javascript

我使用的是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>

1 个答案:

答案 0 :(得分:6)

问题是记录器也有一个阈值级别,默认设置为DEBUG。在致电log.trace()之前添加以下行:

log.setLevel(log4javascript.Level.TRACE);