Skip to content

Commit 54a5fad

Browse files
Kirill Temnenkovjoschi
authored andcommitted
Allow specifying maximum message size for UDP syslog server (#14)
1 parent 3c5a920 commit 54a5fad

File tree

2 files changed

+25
-1
lines changed

2 files changed

+25
-1
lines changed

src/main/java/org/graylog2/syslog4j/server/impl/net/udp/UDPNetSyslogServer.java

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ public void run() {
6969
return;
7070
}
7171

72-
byte[] receiveData = new byte[SyslogConstants.SYSLOG_BUFFER_SIZE];
72+
byte[] receiveData = new byte[syslogBufferSize()];
7373

7474
handleInitialize(this);
7575

@@ -99,4 +99,11 @@ public void run() {
9999

100100
handleDestroy(this);
101101
}
102+
103+
private int syslogBufferSize(){
104+
if (getConfig() instanceof UDPNetSyslogServerConfig){
105+
return ((UDPNetSyslogServerConfig) getConfig()).getMaxMessageSize();
106+
}
107+
return SyslogConstants.SYSLOG_BUFFER_SIZE;
108+
}
102109
}

src/main/java/org/graylog2/syslog4j/server/impl/net/udp/UDPNetSyslogServerConfig.java

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package org.graylog2.syslog4j.server.impl.net.udp;
22

3+
import org.graylog2.syslog4j.SyslogConstants;
34
import org.graylog2.syslog4j.server.impl.net.AbstractNetSyslogServerConfig;
45

56
/**
@@ -15,6 +16,8 @@
1516
public class UDPNetSyslogServerConfig extends AbstractNetSyslogServerConfig {
1617
private static final long serialVersionUID = -2005919161187055486L;
1718

19+
private int maxMessageSize = SyslogConstants.SYSLOG_BUFFER_SIZE;
20+
1821
public UDPNetSyslogServerConfig() {
1922
//
2023
}
@@ -32,6 +35,20 @@ public UDPNetSyslogServerConfig(String host, int port) {
3235
this.port = port;
3336
}
3437

38+
public UDPNetSyslogServerConfig(String host, int port, int maxMessageSize) {
39+
this.host = host;
40+
this.port = port;
41+
this.maxMessageSize = maxMessageSize;
42+
}
43+
44+
public int getMaxMessageSize() {
45+
return maxMessageSize;
46+
}
47+
48+
public void setMaxMessageSize(int maxMessageSize) {
49+
this.maxMessageSize = maxMessageSize;
50+
}
51+
3552
public Class getSyslogServerClass() {
3653
return UDPNetSyslogServer.class;
3754
}

0 commit comments

Comments
 (0)