我将标记用于入站和出站数据包。所有数据包都以int id为前缀。有时为了调试purpopses我还需要通过id过滤数据包。我怎么能记录前缀为3的数据包?
private static final Marker packets = MarkerManager.getMarker("Packets");
logger.debug(packets, "[IN:" + packetState + ":" + packet.getId() + "] " + packet.toString());
答案 0 :(得分:0)
您可以使用RegexFilter执行此操作:http://logging.apache.org/log4j/2.x/manual/filters.html#RegexFilter
答案 1 :(得分:0)
你可以使用apache ThreadContext将id放在那里,然后通过约定ID在你的日志中检索地图:[%X {id}]其中id是你放在ThreadContext Map中的id ..