我在单独的EC2上运行许多进程,我想将所有日志发送到在我们办公室中运行的集中式服务器。 (我正在使用路由追加程序将其写入单独的日志)当前接受的通过Socket追加程序发送日志并使用TcpSocketServer接收日志的方式是什么?
当前,我正在使用2.8.2发行版中的TcpSocketServer,而我正在EC2上使用2.13。 EC2客户端的配置如下
<Socket name="socket" host="IP.GOES.HERE" port="7777" connectTimeoutMillis="3000" reconnectionDelayMillis="3000">
<SerializedLayout />
</Socket>
它有效,但是我有几个担忧:
答案 0 :(得分:0)
TcpSocketServer应该是一个示例应用程序。我不建议在生产中直接使用它。如果您不阻止任意连接和/或使用SerializedLayout,还会带来安全风险。杰森将是一个更好的选择。
SocketAppender将重新连接。最好的使用方式是通过为主机配置DNS名称,使主机返回多个IP地址。如果连接断开,套接字追加程序将重新连接到其中任何一个。
您可能希望查看Logging in the Cloud以获得其他建议。