Waterfall/BungeeCord-Patches/0020-Optional-server-list-ping-logging.patch
2018-09-30 19:17:21 +01:00

134 lines
5.7 KiB
Diff

From acc40b9ef7853831675e73f4aee176ea7e856bda Mon Sep 17 00:00:00 2001
From: Janmm14 <computerjanimaus@yahoo.de>
Date: Sat, 12 Dec 2015 23:43:30 +0100
Subject: [PATCH] Optional server list ping logging.
Add IPs to the log where user names are shown.
This avoids spamming the logs with connection notices.
Server list pings are only logged if the log_server_list_pings config.yml option is true, defaults to false
diff --git a/api/src/main/java/net/md_5/bungee/api/ProxyConfig.java b/api/src/main/java/net/md_5/bungee/api/ProxyConfig.java
index 3750dc59..7fd5c8e5 100644
--- a/api/src/main/java/net/md_5/bungee/api/ProxyConfig.java
+++ b/api/src/main/java/net/md_5/bungee/api/ProxyConfig.java
@@ -84,6 +84,11 @@ public interface ProxyConfig
// Waterfall Options
//
+ /**
+ * Whether we log server list pings
+ */
+ boolean isLogServerListPing();
+
// Throttling options
/**
diff --git a/proxy/src/main/java/io/github/waterfallmc/waterfall/conf/WaterfallConfiguration.java b/proxy/src/main/java/io/github/waterfallmc/waterfall/conf/WaterfallConfiguration.java
index 0abb4075..93f47511 100644
--- a/proxy/src/main/java/io/github/waterfallmc/waterfall/conf/WaterfallConfiguration.java
+++ b/proxy/src/main/java/io/github/waterfallmc/waterfall/conf/WaterfallConfiguration.java
@@ -7,6 +7,13 @@ import java.io.File;
public class WaterfallConfiguration extends Configuration {
+ /**
+ * Whether we log server list pings
+ * <p>
+ * Default is false (don't log)
+ */
+ private boolean logServerListPing = false;
+
/*
* Throttling options
* Helps prevent players from overloading the servers behind us
@@ -25,10 +32,16 @@ public class WaterfallConfiguration extends Configuration {
super.load();
YamlConfig config = new YamlConfig(new File("waterfall.yml"));
config.load(false); // Load, but no permissions
+ logServerListPing = config.getBoolean( "log_server_list_ping", logServerListPing );
// Throttling options
tabThrottle = config.getInt("throttling.tab_complete", tabThrottle);
}
+ @Override
+ public boolean isLogServerListPing() {
+ return logServerListPing;
+ }
+
@Override
public int getTabThrottle() {
return tabThrottle;
diff --git a/proxy/src/main/java/net/md_5/bungee/ServerConnector.java b/proxy/src/main/java/net/md_5/bungee/ServerConnector.java
index 44821171..47904de1 100644
--- a/proxy/src/main/java/net/md_5/bungee/ServerConnector.java
+++ b/proxy/src/main/java/net/md_5/bungee/ServerConnector.java
@@ -405,6 +405,6 @@ public class ServerConnector extends PacketHandler
@Override
public String toString()
{
- return "[" + user.getName() + "] <-> ServerConnector [" + target.getName() + "]";
+ return "[" + user.getName() + "|" + user.getAddress() + "] <-> ServerConnector [" + target.getName() + "]";
}
}
diff --git a/proxy/src/main/java/net/md_5/bungee/connection/DownstreamBridge.java b/proxy/src/main/java/net/md_5/bungee/connection/DownstreamBridge.java
index 30f8a7df..ce8da75d 100644
--- a/proxy/src/main/java/net/md_5/bungee/connection/DownstreamBridge.java
+++ b/proxy/src/main/java/net/md_5/bungee/connection/DownstreamBridge.java
@@ -529,6 +529,6 @@ public class DownstreamBridge extends PacketHandler
@Override
public String toString()
{
- return "[" + con.getName() + "] <-> DownstreamBridge <-> [" + server.getInfo().getName() + "]";
+ return "[" + con.getAddress() + "|" + con.getName() + "] <-> DownstreamBridge <-> [" + server.getInfo().getName() + "]";
}
}
diff --git a/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java b/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
index 0e8041f8..cd240460 100644
--- a/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
+++ b/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
@@ -293,16 +293,15 @@ public class InitialHandler extends PacketHandler implements PendingConnection
}
this.virtualHost = InetSocketAddress.createUnresolved( handshake.getHost(), handshake.getPort() );
- if ( bungee.getConfig().isLogPings() )
- {
- bungee.getLogger().log( Level.INFO, "{0} has connected", this );
- }
bungee.getPluginManager().callEvent( new PlayerHandshakeEvent( InitialHandler.this, handshake ) );
switch ( handshake.getRequestedProtocol() )
{
case 1:
+ if (bungee.getConfig().isLogPings() || BungeeCord.getInstance().getConfig().isLogServerListPing()) {
+ bungee.getLogger().log( Level.INFO, "{0} is pinging", this );
+ }
// Ping
thisState = State.STATUS;
ch.setProtocol( Protocol.STATUS );
@@ -631,7 +630,7 @@ public class InitialHandler extends PacketHandler implements PendingConnection
@Override
public String toString()
{
- return "[" + ( ( getName() != null ) ? getName() : getAddress() ) + "] <-> InitialHandler";
+ return "[" + getAddress() + ( getName() != null ? "|" + getName() : "" ) + "] <-> InitialHandler";
}
@Override
diff --git a/proxy/src/main/java/net/md_5/bungee/connection/UpstreamBridge.java b/proxy/src/main/java/net/md_5/bungee/connection/UpstreamBridge.java
index f08f464a..20b3975a 100644
--- a/proxy/src/main/java/net/md_5/bungee/connection/UpstreamBridge.java
+++ b/proxy/src/main/java/net/md_5/bungee/connection/UpstreamBridge.java
@@ -246,6 +246,6 @@ public class UpstreamBridge extends PacketHandler
@Override
public String toString()
{
- return "[" + con.getName() + "] -> UpstreamBridge";
+ return "[" + con.getAddress() + "|" + con.getName() + "] -> UpstreamBridge";
}
}
--
2.19.0