|
@@ -4,6 +4,7 @@ import java.lang.annotation.Annotation;
|
|
|
import java.lang.reflect.Method;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
+import java.util.UUID;
|
|
|
|
|
|
import javax.websocket.OnClose;
|
|
|
import javax.websocket.OnError;
|
|
@@ -42,6 +43,8 @@ public class WebSocketServerEndpoint {
|
|
|
|
|
|
private static RedisClient redisClient;
|
|
|
|
|
|
+ private String sessionId;
|
|
|
+
|
|
|
private static RedisClient getRedisClient() {
|
|
|
if (null != redisClient) {
|
|
|
return redisClient;
|
|
@@ -52,8 +55,9 @@ public class WebSocketServerEndpoint {
|
|
|
|
|
|
@OnOpen
|
|
|
public void onOpen(Session session, @PathParam("path") String path) {
|
|
|
- String sessionId = session.toString().substring(session.getClass().getName().length() + 1)
|
|
|
- .toUpperCase();
|
|
|
+
|
|
|
+ sessionId = UUID.randomUUID().toString().replace("-", "");
|
|
|
+
|
|
|
ThreadContext.put("TRACE_ID", sessionId);
|
|
|
|
|
|
if (WS_LOG.isDebugEnabled()) {
|
|
@@ -159,8 +163,7 @@ public class WebSocketServerEndpoint {
|
|
|
|
|
|
@OnClose
|
|
|
public void onClose(Session session, @PathParam("path") String path) {
|
|
|
- String sessionId = session.toString().substring(session.getClass().getName().length() + 1)
|
|
|
- .toUpperCase();
|
|
|
+
|
|
|
ThreadContext.put("TRACE_ID", sessionId);
|
|
|
|
|
|
WS_LOG.debug("[onClose]. path=" + path);
|
|
@@ -169,8 +172,7 @@ public class WebSocketServerEndpoint {
|
|
|
|
|
|
@OnMessage
|
|
|
public void onMessage(Session session, @PathParam("path") String path, String message) {
|
|
|
- String sessionId = session.toString().substring(session.getClass().getName().length() + 1)
|
|
|
- .toUpperCase();
|
|
|
+
|
|
|
ThreadContext.put("TRACE_ID", sessionId);
|
|
|
|
|
|
WS_LOG.debug("[onMessage]. path=" + path + ". message=" + message);
|
|
@@ -258,8 +260,7 @@ public class WebSocketServerEndpoint {
|
|
|
|
|
|
@OnError
|
|
|
public void onError(Session session, @PathParam("path") String path, Throwable t) {
|
|
|
- String sessionId = session.toString().substring(session.getClass().getName().length() + 1)
|
|
|
- .toUpperCase();
|
|
|
+
|
|
|
ThreadContext.put("TRACE_ID", sessionId);
|
|
|
|
|
|
WS_LOG.error("[onError]. path=" + path, t);
|