`

log4j的SocketAppender显示ip完美解决

    博客分类:
  • java
 
阅读更多

log4j的远程socket输出请看:log4j集群日志收集

 

但之前的配置中提到的ip显示,不是非常好用,于是下面这个是改造后的log4j包,替换之前的包后,不用再增加设置ip的那一段,而只要在服务端的appender中加[%X{ip}]就可以显示了,因为我在改造的包里加了该参数。

 

改造后的包:log4j-1.2.16.jar

 

改造的细节:仅仅是在org.apache.log4j.net.SimpleSocketServer中加了下面这句

	//增加远程机器ip输出,appender要输出ip只需增加 [%X{ip}]即可
	MDC.put("ip", socket.getInetAddress().toString().substring(1));

 

至此,log4j的远程输出,ip显示问题完美解决,最主要的是原来的应用除了增加一个appender,不用修改任何地方。Prefect!

分享到:
评论

相关推荐

    log4j-socketappender:自定义 Log4J 的 SocketAppender,在日志服务器和调用事件的各种客户端之间进行通信

    log4j-socketappender 自定义 Log4J 的 SocketAppender,在日志服务器和调用事件的各种客户端之间进行通信。 如何使用:AsynchListener - 通知程序 - 当日志服务器在特定端口和机器上准备就绪时,通知日志客户端...

    Log4J_全能配置文件.pdf

    - `log4j.appender.SOCKET=org.apache.log4j.SocketAppender`:指定了名为`SOCKET`的appender用于通过socket进行远程日志传输。 - `log4j.appender.SOCKET.RemoteHost=localhost`:设置远程主机地址为`localhost`。 ...

    Log4J完整说明和配置

    log4j.appender.SOCKET=org.apache.log4j.SocketAppender log4j.appender.SOCKET.RemoteHost=localhost log4j.appender.SOCKET.Port=5001 log4j.appender.SOCKET.LocationInfo=true log4j.appender.SOCKET.layout=...

    log4j简述(架构、用法等)

    Log4j 支持多种类型的 Appender,例如 ConsoleAppender(控制台)、FileAppender(文件)、SocketAppender(网络套接字)等。每个 Logger 可以配置一个或多个 Appender,从而实现多样化的日志记录需求。 3. **...

    log4j详解.pdf

    ### Log4j详解 #### 1. Log4j简介 Log4j是Apache下的一个开源项目,用于实现灵活的日志管理。它可以帮助开发者控制日志信息的输出目的地、格式以及生成过程,这一切都可以通过简单的配置文件来实现,而无需修改...

    log4j全套功能--绝对正点

    - `log4j.appender.SOCKET=org.apache.log4j.net.SocketAppender`: 指定Socket输出的具体实现类为`SocketAppender`。 - `log4j.appender.SOCKET.RemoteHost=localhost`: 远程主机地址为localhost。 - `log4j....

    log4j中文手册

    Log4j提供了多种Appender,比如ConsoleAppender用于将日志输出到控制台,FileAppender用于将日志输出到文件,DailyRollingFileAppender用于每天自动滚动写入到日志文件,以及SocketAppender用于将日志通过网络发送到...

    一个比较全的的log4j配置文件

    根据提供的标题、描述、标签及部分内容,我们可以详细探讨关于log4j配置文件的相关知识点,特别是如何通过各种Appender实现日志记录的不同需求。 ### 一、log4j配置文件概述 log4j是一款非常强大的日志框架,它...

    Spring版本Log4J的Demo

    配置Log4J时,我们需要定义Appender,这是日志信息的输出目标,例如控制台(ConsoleAppender)、文件(FileAppender)或远程服务器(SocketAppender)。例如,以下是一个基本的控制台输出配置: ```xml ...

    LOG4J配置全接触

    log4j.appender.SOCKET=org.apache.log4j.net.SocketAppender log4j.appender.SOCKET.RemoteHost=localhost log4j.appender.SOCKET.Port=5001 log4j.appender.SOCKET.LocationInfo=true log4j.appender.SOCKET....

    关于Log4j比较全面的配置

    而`log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout`则定义了日志的格式布局,如`ConversionPattern`属性用于设置日志信息的显示格式。例如`[framework]%d-%c-%-4r[%t]%-5p%c%x-%m%n`表示日志将包括...

    log4j 入门

    Log4j提供了多种Appender,如ConsoleAppender(控制台输出)、FileAppender(文件输出)和SocketAppender(网络输出)等。 3. **Layout**:Layout定义了日志信息的输出格式。常见的Layout类型有PatternLayout,可以...

    log4j配置大全-java

    log4j.appender.SOCKET=org.apache.log4j.net.SocketAppender log4j.appender.SOCKET.RemoteHost=localhost log4j.appender.SOCKET.Port=5001 log4j.appender.SOCKET.LocationInfo=true log4j.appender.SOCKET....

    log4j

    log4j.appender.LF5_APPENDER=org.apache.log4j.SocketAppender log4j.appender.LF5_APPENDER.RemoteHost=localhost log4j.appender.LF5_APPENDER.Port=5001 log4j.appender.LF5_APPENDER.LocationInfo=true log4j....

    log4j 学习笔记

    log4j 的日志输出地(Appender)包括 ConsoleAppender、DailyRollingFileAppender、FileAppender、RollingFileAppender、WriterAppender、SMTPAppender、SocketAppender 等。这些 Appender 可以根据需要选择以输出...

    ctp-log-log4j.zip

    Log4j可以与其他系统集成,如通过SocketAppender将日志发送到中央日志服务器,或者通过JMSAppender发布到消息队列。此外,还有许多第三方库如Logback、Log4j2等提供更高级的功能和性能。 8. **最佳实践** - 为每...

    log4j 全面资料

    Log4j是Apache的一个开源项目,由Ceki Gülcü创建,它为Java应用提供了一个灵活的日志记录解决方案。日志记录在软件开发中扮演着至关重要的角色,尤其是在分布式系统和大型企业级应用中,它帮助开发者追踪程序运行...

    java日志操作之Log4j

    它最初是作为Jakarta项目的一部分出现的,随着时间的发展,Log4j逐渐成为了一个独立且功能强大的日志解决方案。Log4j的设计理念是灵活与高效,它允许开发者轻松地配置日志输出的位置、格式以及级别。 #### 日志的...

Global site tag (gtag.js) - Google Analytics