summaryrefslogtreecommitdiff
path: root/packages/backend/src/server/api/stream/Connection.ts
diff options
context:
space:
mode:
authorJulia Johannesen <julia@insertdomain.name>2024-08-17 14:27:43 -0400
committerJulia Johannesen <julia@insertdomain.name>2024-08-17 14:27:43 -0400
commit3dd993a76a5e5d87a0b31e1eff5093958f239021 (patch)
treea8996e497c9ab6fcad45478c650a1170eec9445e /packages/backend/src/server/api/stream/Connection.ts
parentCome up with better limits (diff)
downloadsharkey-3dd993a76a5e5d87a0b31e1eff5093958f239021.tar.gz
sharkey-3dd993a76a5e5d87a0b31e1eff5093958f239021.tar.bz2
sharkey-3dd993a76a5e5d87a0b31e1eff5093958f239021.zip
Add IP and user ID to connection close message
Diffstat (limited to 'packages/backend/src/server/api/stream/Connection.ts')
-rw-r--r--packages/backend/src/server/api/stream/Connection.ts6
1 files changed, 5 insertions, 1 deletions
diff --git a/packages/backend/src/server/api/stream/Connection.ts b/packages/backend/src/server/api/stream/Connection.ts
index 0914cdbb22..b71a99b89e 100644
--- a/packages/backend/src/server/api/stream/Connection.ts
+++ b/packages/backend/src/server/api/stream/Connection.ts
@@ -57,6 +57,7 @@ export default class Connection {
user: MiUser | null | undefined,
token: MiAccessToken | null | undefined,
+ private ip: string,
rateLimiter: () => Promise<boolean>,
) {
if (user) this.user = user;
@@ -127,7 +128,10 @@ export default class Connection {
if (shouldRateLimit) return;
if (this.closingConnection) return;
} else {
- this.logger.warn('Closing a connection due to an excessive influx of messages.');
+ let connectionInfo = `IP ${this.ip}`;
+ if (this.user) connectionInfo += `, user ID ${this.user.id}`;
+
+ this.logger.warn(`Closing a connection (${connectionInfo}) due to an excessive influx of messages.`);
this.closingConnection = true;
this.wsConnection.close(1008, 'Please stop spamming the streaming API.');
return;