Plug-in customizado não sendo detectado no EAR com a API log4j2

Estou migrando um aplicativo EAR delog4j paralog4j2. Eu tive aulas estendendo apêndices, filtros, layouts em diferentes frascos de EAR e agora, eu os converti em plugins. Isso significa que eu tenho plugins personalizados em mais de um jar (assuma 3 jarros).

Eu não estou usandopackages atributo emlog4j2.xml e estou inicializando o sistema de log usandoDlog4j.configurationFile Argumento da JVM apontando paralog4j2.xml localização emMETA-INF de EAR.

A adição do plug-in abaixo em todos os três projetos jar não funcionou.

<plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <executions>
                <execution>
                    <id>log4j-plugin-processor</id>
                    <goals>
                        <goal>compile</goal>
                    </goals>
                    <phase>process-classes</phase>
                    <configuration>
                        <proc>only</proc>
                        <annotationProcessors>
                            <annotationProcessor>org.apache.logging.log4j.core.config.plugins.processor.PluginProcessor</annotationProcessor>
                        </annotationProcessors>
                    </configuration>
                </execution>
            </executions>
        </plugin>

Layout do padrão: No layout de padrão abaixo,e é o padrão personalizado no qual um plug-in conversor de padrão personalizado é gravado para converter essa sequência.

<Pattern>%d %-5p [%c{1}] [EventId: %e] [%t] %m%n</Pattern>

Plugin de conversor personalizado para o layout de padrão acima (no jar1):

jar1 temLog4J2Plugins.dat arquivo emMETA-INF noorg.apache.. pasta.

@Plugin(name = "EventPatternConverter", category = "Converter")
@ConverterKeys({"e"})

public class EventPatternConverter extends LogEventPatternConverter {

protected EventPatternConverter(String name, String style) {
    super(name, style);
}

public static EventPatternConverter newInstance(String[] options) {
  return new EventPatternConverter("e", "e");
}

@Override
public void format(LogEvent event, StringBuilder toAppendTo) {      
    String eventId= "";
    // Append empty string (OR) value        
    toAppendTo.append(eventId);
  }
}

Mas, estou recebendo o erro abaixo

ERROR Unrecognized format specifier [e]

Mesmo assim, nenhum dos plug-ins personalizados é identificado como eu estou recebendoinvalid element para os demais plugins personalizados, disponíveis em jar2, jar3 e todos elesLog4J2Plugins.dat Arquivo.

ERROR File contains an invalid element or attribute "TestFilter"

estou usandolog4j-api-2.4.jar, log4j-core-2.4.jar, log4j-jcl-2.4.jar, log4j-web-2.4.1.jar, commons-logging-1.1.1.jar frascos na orelha.

Eu defini um plug-in de conversor de padrão personalizado e espero que esse conversor seja aplicado a todo o layout de padrão, incluindo o layout padrão definido usando<patternlayout>. Isto está certo ?

Se sim, por favor, ajude se alguém tiver enfrentado esse problema e me guie se eu estiver errado em definir o plug-in personalizado, pois todos eles não estão sendo detectados em frascos no EAR.

questionAnswers(1)

yourAnswerToTheQuestion