Регистратор ESAPI не может распечатать имя метода

Я использую регистратор, предоставленный регистратором ESAPI, и файл log4j.xml для настройки. Я успешно могу распечатать сообщение журнала (просто плоская Java-программа с основным методом). Ниже мой код

import org.owasp.esapi.ESAPI;
import org.owasp.esapi.Logger;

public class App {

    static private final Logger logger = ESAPI.getLogger(App.class.getName());

    public static void main(String[] args) {
        logger.error(Logger.SECURITY_FAILURE, "This is error in case of security failure");
    }
}

Мой файл log4j.xml приведен ниже

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration threshold="null"
    xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false">
    <appender name="FILE_APPENDER" class="org.apache.log4j.RollingFileAppender">
        <param name="File" value="logs/sample.log" />
        <param name="Append" value="true" />
        <param name="Threshold" value="DEBUG" />
        <param name="MaxFileSize" value="5MB" />
        <param name="MaxBackupIndex" value="10" />
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%d,%-5p, %M, %m%n" />
        </layout>
    </appender>
    <root>
        <priority value="DEBUG" />
        <appender-ref ref="FILE_APPENDER" />
    </root>
</log4j:configuration>

Я использую эти ESAPI.properties и validation.properties

Проблема в том, что% M (используется в макете шаблона) не печатает имя метода, который пишет сообщение журнала. % M всегда печатает "журнал" (метод присутствует в org.owasp.esapi.Logger). Как я могу напечатать здесь имя метода (в данном случае main). Я пробовал писать журнал из другого метода, но он печатает «журнал», а не имя метода.


person Amit    schedule 03.09.2014    source источник


Ответы (1)


Это известная ошибка в ESAPI, о которой я ранее сообщал как о проблеме № 268. Одно из исправлений - изменить исходный код ESAPI.

См. https://code.google.com/p/owasp-esapi-java/issues/detail?id=268.

person Brad Schoening    schedule 11.09.2014