下面列出了怎么用org.apache.logging.log4j.core.util.UuidUtil的API类实例代码及写法,或者点击链接到github查看源代码。
public static String getRequestId() {
String uuidStr = ThreadContext.get(REQUEST_ID);
if (uuidStr == null) {
ThreadContext.put(REQUEST_ID, UuidUtil.getTimeBasedUuid().toString());
uuidStr = ThreadContext.get(REQUEST_ID);
}
return uuidStr;
}
@Test
public void testRequestContext() {
RequestContext.getRequestId();
String sessionId = UuidUtil.getTimeBasedUuid().toString();
RequestContext.setSessionId(sessionId);
String loginId = "testuser";
RequestContext.setLoginId(loginId);
assertEquals("Incorrect loginId", loginId, RequestContext.getLoginId());
String hostName = "myhost";
RequestContext.setHostName(hostName);
assertEquals("Incorrect host name", hostName, RequestContext.getHostName());
String ipAddress = "127.0.0.1";
RequestContext.setIpAddress(ipAddress);
assertEquals("Incorrect LoginId", ipAddress, RequestContext.getIpAddress());
RequestContext requestContext = RequestContext.save();
RequestContext.clear();
assertNull(RequestContext.getSessionId());
assertNull(RequestContext.getLoginId());
assertNull(RequestContext.getHostName());
assertNull(RequestContext.getIpAddress());
requestContext.restore();
assertEquals(sessionId, RequestContext.getSessionId());
assertEquals(loginId, RequestContext.getLoginId());
assertEquals(hostName, RequestContext.getHostName());
assertEquals(ipAddress, RequestContext.getIpAddress());
}
public static String getRequestId() {
String uuidStr = ThreadContext.get(REQUEST_ID);
UUID uuid;
if (uuidStr == null) {
uuid = UuidUtil.getTimeBasedUuid();
ThreadContext.put(REQUEST_ID, uuid.toString());
}
return uuidStr;
}
@Benchmark
public UUID timeBasedUUID() {
return UuidUtil.getTimeBasedUuid();
}
public static void initialize() {
ThreadContext.clearMap();
ThreadContext.put(REQUEST_ID, UuidUtil.getTimeBasedUuid().toString());
}
/**
* {@inheritDoc}
*/
@Override
public void format(final LogEvent event, final StringBuilder toAppendTo) {
final UUID uuid = isRandom ? UUID.randomUUID() : UuidUtil.getTimeBasedUuid();
toAppendTo.append(uuid.toString());
}