log4j+logstash

来源:互联网 发布:vb修改word文档的内容 编辑:程序博客网 时间:2024/06/11 04:13

logstash配置

input{  log4j{    mode => "server"    host => "0.0.0.0"    port => "4560"  }}filter {}output {#标准输出  stdout {    codec => rubydebug  }}

启动logstash

这里写图片描述

参数详解

mode logstash工作模式,可选"server"或者"client",默认是"server"  server就是把logstash看做是日志的服务器,接收log4j主机端生成的日志消息。  client则是把logstash看做是tcp的发起者,请求log4j主机返回日志消息。  host 主机地址,字符串类型,如"localhost"或者"192.168.0.1"  如果是server模式,就是监听的主机地址  如果是client模式,就是连接的目标地址  port 端口号,数字类型,如 4567 或者 12345  如果是server模式,就是监听的端口号  如果是client模式,就是连接的目标端口号  data_timeout 超时时间,秒为单位。如果设置-1,则永不超时,默认是5  如果某个tcp连接闲置了,则超过该时间限制,就断开或者关闭连接。

新建maven工程

1、加入log4j的maven坐标

   <dependencies>       <dependency>           <groupId>log4j</groupId>           <artifactId>log4j</artifactId>           <version>1.2.17</version>       </dependency>   </dependencies>

2、新建测试类

public class Log4jTest {    public static final Logger logger=Logger.getLogger(Log4jTest.class);    public static void main(String[] args) {        logger.debug("This is a debug message!");        logger.info("This is info message!");        logger.warn("This is a warn message!");        logger.error("This is error message!");        try{            System.out.println(5/0);        }catch(Exception e){            logger.error(e);        }    }}

3、新建log4j.properties文件

### 设置###log4j.rootLogger = debug,stdout,logstash### 输出信息到控制抬 ###log4j.appender.stdout = org.apache.log4j.ConsoleAppenderlog4j.appender.stdout.Target = System.outlog4j.appender.stdout.layout = org.apache.log4j.PatternLayoutlog4j.appender.stdout.layout.ConversionPattern = [%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n#输出日志到logstashlog4j.appender.logstash=org.apache.log4j.net.SocketAppenderlog4j.appender.logstash.RemoteHost=127.0.0.1log4j.appender.logstash.port=4560log4j.appender.logstash.ReconnectionDelay=60000log4j.appender.logstash.LocationInfo=true

运行测试类

这里写图片描述

观察logstash界面

这里写图片描述

至此已完结!

原创粉丝点击