当前位置: 首页 > 知识库问答 >
问题:

日志记录异常的问题

拓拔嘉运
2023-03-14

在将big project移植到log4j2之后,我注意到异常日志不起作用。这样的代码

logger.error("Error occurred", e);
21/07/2013 15:51:34 ERROR [MyTask-1] [MyManager] Error occurred
<?xml version="1.0" encoding="UTF-8"?>
<configuration name="server" monitorInterval="30">
<appenders>
    <!-- ################# All Appender ############################### -->
    <RollingFile name="AllAppender" fileName="${sys:workspace}/logs/all.log" filePattern="${sys:workspace}/archive/logs/all_%d{yyyy-MM-dd_HH}.log">
        <PatternLayout>
            <pattern>%d{dd/MM/yyyy HH:mm:ss} %-5p [%t] [%c{1}] %m%n</pattern>
        </PatternLayout>
        <Policies>
            <OnStartupTriggeringPolicy />
            <TimeBasedTriggeringPolicy interval="1" modulate="true"/>
            <SizeBasedTriggeringPolicy size="10 MB"/>
        </Policies>
        <DefaultRolloverStrategy max="50"/>
    </RollingFile>

</appenders>

<loggers>
    <!-- #################################################################################################### -->
    <!-- ################################### Loggers definitions ############################################ -->
    <!-- #################################################################################################### -->

    <logger name="com" level="debug">
        <appender-ref ref="AllAppender" />
    </logger>

    <root level="debug">
        <appender-ref ref="AllAppender"/>
    </root>

</loggers>

共有1个答案

子车安和
2023-03-14

您使用的是什么版本的log4j2?我记得这是一个问题在旧的beta,但它是在beta5左右修复的...如果你使用的是最近的测试版,你能提交一份bug报告吗?

作为解决办法,可以将模式末尾的%m%n替换为%m%ex%n

 类似资料:
  • 问题内容: 下面的编码方法是好的做法吗? 而且,我应该 仅使用记录器? 只抛出异常? 两者都做吗? 我知道可以在调用堆栈的另一部分捕获异常,但是也许其他日志记录有一些隐藏的好处,并且也很有用。 问题答案: 在某些情况下,我会同时使用日志记录和引发异常。特别是,它在API中很有用。通过抛出异常,我们允许调用者对其进行处理,并通过记录日志,我们可以自行确定其根本原因。 而且,如果调用者在同一系统中,则

  • 但在我的代码中,我记录了大部分信息 用户名错误发生,计时,整个异常,错误,方法,行号,文件路径,服务网址,所有这些东西,但我仍然面临这个问题,请帮助我解决这个问题。我使用的是ASP.NET核心web API。

  • 我想在我的应用程序中使用SLF4J+logback用于两个目的--日志和审计。 14:41:57.978[main]信息AUDIT_LOGGER-110欢迎使用main 如何确保审核消息在审核记录器下只出现一次?

  • 问题内容: 我正在考虑将Redis用于Web应用程序日志记录目的。我用谷歌搜索,有人将日志转储到Redis队列/列表中,然后将计划的工作人员转储到磁盘中。 http://nosql.mypopescu.com/post/8652869828/another-redis-use-case- centralized-logging 我希望寻求理解,为什么不直接使用Redis持久化到磁盘?如果我分配了一

  • logging 模块自 2.3 版以来一直是 Python 标准库的一部分。在 PEP 282 中有对它的简洁描述。除了 基础日志教程 之外,这些文档是非常难以阅读的。 日志记录一般有两个目的: 诊断日志 记录与应用程序操作相关的日志。例如,当用户遇到程序报错时, 可通过搜索诊断日志以获得上下文信息。 审计日志 为商业分析而记录的日志。从审计日志中,可提取用户的交易信息, 并结合其他用户资料构成用

  • 问题内容: 我想检查特定背景文件中的错误,但是标准错误流由前台程序控制,并且问题中文件中的错误未显示。不过,我可以使用该模块并将输出写入文件。我想知道如何使用它来记录所有异常,错误及其回溯。 问题答案: 记录程序中引发的 任何 异常可能是一个坏主意,因为Python还将异常用于正常控制流。 因此,您应该只记录 未捕获的 异常。一旦有了异常对象,就可以使用记录器的方法轻松地执行此操作。 要处理所有未