Skip to content

Commit 619ccb3

Browse files
committed
add toggle for tracking otel per ip
1 parent 0aded8e commit 619ccb3

2 files changed

Lines changed: 11 additions & 5 deletions

File tree

OpenFlow/src/Config.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -209,7 +209,8 @@ export class Config {
209209

210210
Config.otel_trace_pingclients = Config.parseBoolean(Config.getEnv("otel_trace_pingclients", "false"));
211211
Config.otel_trace_dashboardauth = Config.parseBoolean(Config.getEnv("otel_trace_dashboardauth", "false"));
212-
Config.otel_trace_include_query = Config.parseBoolean(Config.getEnv("otel_trace_include_query", "true"));
212+
Config.otel_trace_include_query = Config.parseBoolean(Config.getEnv("otel_trace_include_query", "false"));
213+
Config.otel_trace_connection_ips = Config.parseBoolean(Config.getEnv("otel_trace_connection_ips", "false"));
213214

214215
Config.validate_user_form = Config.getEnv("validate_user_form", "");
215216
}
@@ -407,6 +408,7 @@ export class Config {
407408
public static otel_trace_pingclients: boolean = Config.parseBoolean(Config.getEnv("otel_trace_pingclients", "false"));
408409
public static otel_trace_dashboardauth: boolean = Config.parseBoolean(Config.getEnv("otel_trace_dashboardauth", "false"));
409410
public static otel_trace_include_query: boolean = Config.parseBoolean(Config.getEnv("otel_trace_include_query", "false"));
411+
public static otel_trace_connection_ips: boolean = Config.parseBoolean(Config.getEnv("otel_trace_connection_ips", "false"));
410412

411413

412414
public static validate_user_form: string = Config.getEnv("validate_user_form", "");

OpenFlow/src/WebSocketServer.ts

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -61,8 +61,11 @@ export class WebSocketServer {
6161
this._socketserver = new WebSocket.Server({ server: server });
6262
this._socketserver.on("connection", (socketObject: WebSocket, req: any): void => {
6363
let remoteip: string = "unknown";
64-
if (!NoderedUtil.IsNullUndefinded(req)) {
65-
remoteip = WebSocketServerClient.remoteip(req);
64+
if (Config.otel_trace_connection_ips) {
65+
if (!NoderedUtil.IsNullUndefinded(req)) {
66+
remoteip = WebSocketServerClient.remoteip(req);
67+
}
68+
remoteip = remoteip.split(":").join("-");
6669
}
6770
if (!this.total_connections_count[remoteip]) this.total_connections_count[remoteip] = 0;
6871
this.total_connections_count[remoteip]++;
@@ -225,9 +228,10 @@ export class WebSocketServer {
225228
});
226229
}
227230
if (!NoderedUtil.IsNullUndefinded(WebSocketServer.websocket_connections_count)) {
228-
WebSocketServer.p_all.clear();
229-
const keys = Object.keys(p_all);
231+
WebSocketServer.websocket_connections_count.clear();
232+
const keys = Object.keys(WebSocketServer.websocket_connections_count);
230233
keys.forEach(key => {
234+
key = key.split(":").join("-");
231235
WebSocketServer.websocket_connections_count.bind({ ...Logger.otel.defaultlabels, remoteip: key }).update(this.total_connections_count[key]);
232236
});
233237
}

0 commit comments

Comments
 (0)