Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Logging log4j:如何避免日志文件中的前缀值?_Logging_Log4j - Fatal编程技术网

Logging log4j:如何避免日志文件中的前缀值?

Logging log4j:如何避免日志文件中的前缀值?,logging,log4j,Logging,Log4j,我在应用程序中使用log4j将客户活动记录到日志文件中, 在日志文件中,我得到的前缀值为“INFO-”,如何在日志文件中避免此前缀值 我的日志文件 我的log4jconf.xml是 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> <log4j:configuration xmlns:log4j="http://jakarta.apache

我在应用程序中使用log4j将客户活动记录到日志文件中, 在日志文件中,我得到的前缀值为“INFO-”,如何在日志文件中避免此前缀值 我的日志文件

我的log4jconf.xml是

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false">
<appender name="consoleAppender" class="org.apache.log4j.ConsoleAppender">
    <param name="Threshold" value="INFO"/>
    <layout class="org.apache.log4j.PatternLayout">
        <param name="ConversionPattern" value="%d
         %-5p  [%c{1}] %m %n"/>
    </layout>
</appender>
<appender name="fileAppender" class="org.apache.log4j.RollingFileAppender">
    <param name="Threshold" value="INFO"/>
    <param name="File" value="sample.log"/>
    <layout class="org.apache.log4j.PatternLayout">
        <param name="ConversionPattern" value="%d
            %-5p  [%c{1}] %m %n"/>
    </layout>
</appender>
<logger name="CPI810_RCM_LOGGER" additivity="false">
    <level value="INFO"/>
    <appender-ref ref="consoleAppender"/>       
</logger>
  </log4j:configuration>
代码:

cat = Category.getInstance(catname);       
    PatternLayout layout = null;
    FileAppender appender =  null;
    try {
        cat = Category.getInstance(catname);            
        layout = new PatternLayout("%m %n");

        appender = new FileAppender(layout,fileAppender,true);
        cat.addAppender(appender); 

    } catch (Exception e) {
        // TODO: handle exception
    }
这是由于appender布局的“ConversionPattern”参数导致的:
%-5p
标记指示log4j将日志级别(在您的情况下为信息)rpint至少5个字符,并用空格填充。因此,如果从转换模式中删除
%-5p
,则不会在日志条目中看到信息


话虽如此,我看不出
-
(破折号)是从哪里来的。您确定您显示的日志条目确实是日志文件中的条目吗?例如,模式的
[%c{1}]
部分应该导致log4j在方括号之间打印类名,但我在这里看不到。

您确定这里给出的日志示例是由这个log4j配置生成的吗?您正在查看正确的配置文件和/或日志文件吗?根据您的配置文件,日志应该类似于
INFO[emitter]Log message
I am adding appender at run time运行时此appender使用哪种布局?配置文件的布局之一?您动态创建的
PatternLayout
吗?我正在使用PatternLayout
cat = Category.getInstance(catname);       
    PatternLayout layout = null;
    FileAppender appender =  null;
    try {
        cat = Category.getInstance(catname);            
        layout = new PatternLayout("%m %n");

        appender = new FileAppender(layout,fileAppender,true);
        cat.addAppender(appender); 

    } catch (Exception e) {
        // TODO: handle exception
    }