[英]Log4j filter marker data
I use marker for inbound and outbound packets. 我将标记用于入站和出站数据包。 All packets prefixed by int id.
所有以int id为前缀的数据包。 Sometimes for debug purpopses i need also filter packets by id.
有时,对于调试目的,我还需要按ID过滤数据包。 How i can for example log packets prefixed with 3?
例如,我如何才能记录以3为前缀的数据包?
private static final Marker packets = MarkerManager.getMarker("Packets");
logger.debug(packets, "[IN:" + packetState + ":" + packet.getId() + "] " + packet.toString());
您可以使用RegexFilter执行此操作: http ://logging.apache.org/log4j/2.x/manual/filters.html#RegexFilter
您可以使用apache ThreadContext将id放在此处,然后通过约定Id:[%X {id}]在日志中检索映射,其中id是您在ThreadContext Map中放置的id。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.