This is an automated email from the ASF dual-hosted git repository. rgoers pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/logging-log4j-server.git
commit 5aa5f6b93aaa9f7e85de65309cc5a668e38c8887 Author: Mikael Ståldal <[email protected]> AuthorDate: Wed Jun 28 18:42:12 2017 +0200 LOG4J2-1958 Read JSON log event by default in TCP and UDP servers --- .../logging/log4j/server/TcpSocketServer.java | 76 ++++++++++++++++++---- .../logging/log4j/server/UdpSocketServer.java | 4 +- 2 files changed, 67 insertions(+), 13 deletions(-) diff --git a/log4j-server/src/main/java/org/apache/logging/log4j/server/TcpSocketServer.java b/log4j-server/src/main/java/org/apache/logging/log4j/server/TcpSocketServer.java index 9a5521c..fb9d53b 100644 --- a/log4j-server/src/main/java/org/apache/logging/log4j/server/TcpSocketServer.java +++ b/log4j-server/src/main/java/org/apache/logging/log4j/server/TcpSocketServer.java @@ -112,7 +112,7 @@ public class TcpSocketServer<T extends InputStream> extends AbstractSocketServer * Creates a socket server that reads JSON log events. * * @param port - * the port to listen + * The server socket port. * @return a new a socket server * @throws IOException * if an I/O error occurs when opening the socket. @@ -123,11 +123,33 @@ public class TcpSocketServer<T extends InputStream> extends AbstractSocketServer return LOGGER.exit(socketServer); } + /** + * Creates a socket server that reads JSON log events. + * + * @param port + * The server socket port. + * @param backlog + * The server socket backlog. + * @param localBindAddress + * The local InetAddress the server will bind to + * @return a new a socket server + * @throws IOException + * if an I/O error occurs when opening the socket. + * @since 2.9 + */ + public static TcpSocketServer<InputStream> createJsonSocketServer(final int port, final int backlog, + final InetAddress localBindAddress) throws IOException { + LOGGER.entry("createJsonSocketServer", port, backlog, localBindAddress); + final TcpSocketServer<InputStream> socketServer = new TcpSocketServer<>(port, backlog, localBindAddress, + new JsonInputStreamLogEventBridge()); + return LOGGER.exit(socketServer); + } + /** * Creates a socket server that reads serialized log events. * * @param port - * the port to listen + * The server socket port. * @return a new a socket server * @throws IOException * if an I/O error occurs when opening the socket. @@ -141,8 +163,12 @@ public class TcpSocketServer<T extends InputStream> extends AbstractSocketServer /** * Creates a socket server that reads serialized log events. * - * @param port the port to listen - * @param localBindAddress The server socket's local bin address + * @param port + * The server socket port. + * @param backlog + * The server socket backlog. + * @param localBindAddress + * The local InetAddress the server will bind to * @return a new a socket server * @throws IOException * if an I/O error occurs when opening the socket. @@ -156,8 +182,12 @@ public class TcpSocketServer<T extends InputStream> extends AbstractSocketServer /** * Creates a socket server that reads serialized log events. * - * @param port the port to listen - * @param localBindAddress The server socket's local bin address + * @param port + * The server socket port. + * @param backlog + * The server socket backlog. + * @param localBindAddress + * The local InetAddress the server will bind to * @param allowedClasses additional class names to allow for deserialization * @return a new a socket server * @throws IOException @@ -177,7 +207,7 @@ public class TcpSocketServer<T extends InputStream> extends AbstractSocketServer * Creates a socket server that reads XML log events. * * @param port - * the port to listen + * The server socket port. * @return a new a socket server * @throws IOException * if an I/O error occurs when opening the socket. @@ -188,6 +218,29 @@ public class TcpSocketServer<T extends InputStream> extends AbstractSocketServer return LOGGER.exit(socketServer); } + /** + * Creates a socket server that reads XML log events. + * + * @param port + * The server socket port. + * @param backlog + * The server socket backlog. + * @param localBindAddress + * The local InetAddress the server will bind to + * @return a new a socket server + * @throws IOException + * if an I/O error occurs when opening the socket. + * @since 2.9 + */ + public static TcpSocketServer<InputStream> createXmlSocketServer(final int port, + final int backlog, final InetAddress localBindAddress + ) throws IOException { + LOGGER.entry(port); + final TcpSocketServer<InputStream> socketServer = new TcpSocketServer<>(port, backlog, localBindAddress, + new XmlInputStreamLogEventBridge()); + return LOGGER.exit(socketServer); + } + /** * Main startup for the server. Run with "--help" for to print command line help on the console. * @@ -204,8 +257,8 @@ public class TcpSocketServer<T extends InputStream> extends AbstractSocketServer if (cla.getConfigLocation() != null) { ConfigurationFactory.setConfigurationFactory(new ServerConfigurationFactory(cla.getConfigLocation())); } - final TcpSocketServer<ObjectInputStream> socketServer = TcpSocketServer.createSerializedSocketServer( - cla.getPort(), cla.getBacklog(), cla.getLocalBindAddress(), cla.getAllowedClasses()); + final TcpSocketServer<InputStream> socketServer = TcpSocketServer.createJsonSocketServer( + cla.getPort(), cla.getBacklog(), cla.getLocalBindAddress()); final Thread serverThread = socketServer.startNewThread(); if (cla.isInteractive()) { socketServer.awaitTermination(serverThread); @@ -223,7 +276,8 @@ public class TcpSocketServer<T extends InputStream> extends AbstractSocketServer * The server socket port. * @param backlog * The server socket backlog. - * @param localBindAddress TODO + * @param localBindAddress + * The local InetAddress the server will bind to * @param logEventInput * the log even input * @throws IOException @@ -239,7 +293,7 @@ public class TcpSocketServer<T extends InputStream> extends AbstractSocketServer * Constructor. * * @param port - * to listen. + * The server socket port * @param logEventInput * the log even input * @throws IOException diff --git a/log4j-server/src/main/java/org/apache/logging/log4j/server/UdpSocketServer.java b/log4j-server/src/main/java/org/apache/logging/log4j/server/UdpSocketServer.java index 12a8450..8259427 100644 --- a/log4j-server/src/main/java/org/apache/logging/log4j/server/UdpSocketServer.java +++ b/log4j-server/src/main/java/org/apache/logging/log4j/server/UdpSocketServer.java @@ -108,8 +108,8 @@ public class UdpSocketServer<T extends InputStream> extends AbstractSocketServer if (cla.getConfigLocation() != null) { ConfigurationFactory.setConfigurationFactory(new ServerConfigurationFactory(cla.getConfigLocation())); } - final UdpSocketServer<ObjectInputStream> socketServer = UdpSocketServer - .createSerializedSocketServer(cla.getPort(), cla.getAllowedClasses()); + final UdpSocketServer<InputStream> socketServer = UdpSocketServer + .createJsonSocketServer(cla.getPort()); final Thread serverThread = socketServer.startNewThread(); if (cla.isInteractive()) { socketServer.awaitTermination(serverThread);
