I want to append a custom field to the log record and used the LogEventPatternConverter for this. Referred the documentation <https://logging.apache.org/log4j/2.x/manual/extending.html#PatternConverters> and wrote the below code. Now the options happen to be a zero length array. The documentation says "String array are the values that are specified within the curly braces that can follow the converter key". Isn't this the {"p","pId"} in my code?
@Plugin(name = "PIdConverter", category = "Converter") @ConverterKeys({"p","pId"}) public class PIdConverter extends LogEventPatternConverter { public PIdConverter(String[] options) { super(options[0], options[0]); } public static PIdConverter newInstance(String[] options) { return new PIdConverter(options); } @Override public void format(LogEvent event, StringBuilder toAppendTo) { toAppendTo.append(getpID()); } public String getpID() { String pId = "123"; if (pId == null) { pId = "[]"; } return pId; } }