2015-09-17 27 views

回答

0

如果你有一个日志文件test.log中如下所示:

DEBUG | 2008-09-06 10:51:44,817 | DefaultBeanDefinitionDocumentReader.java | 86 | Loading bean definitions 
WARN | 2008-09-06 10:51:44,848 | AbstractBeanDefinitionReader.java | 185 | Loaded 5 bean definitions from location pattern [samContext.xml] 
INFO | 2008-09-06 10:51:44,848 | XmlBeanDefinitionReader.java | 323 | Loading XML bean definitions from class path resource [tmfContext.xml] 
DEBUG | 2008-09-06 10:51:44,848 | DefaultDocumentLoader.java | 72 | Using JAXP provider [com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl] 
ERROR | 2008-09-06 10:51:44,848 | BeansDtdResolver.java | 72 | Found beans DTD [http://www.springframework.org/dtd/spring-beans.dtd] in classpath: spring-beans.dtd 
ERROR | 2008-09-06 10:51:44,864 | DefaultBeanDefinitionDocumentReader.java | 86 | Loading bean definitions 
DEBUG | 2008-09-06 10:51:45,458 | AbstractAutowireCapableBeanFactory.java | 411 | Finished creating instance of bean 'MS-SQL' 

您可以定义ñ如果有条件的消息,你想保留和删除其他:

input { 
    file { 
     path => "/your/path/test.log" 
     sincedb_path => "/your/path/test.idx" 
     start_position => "beginning" 
    } 
} 

filter { 
    if [message] =~ "WARN" or [message] =~ "ERROR" { 

    } else { 
     drop {} 
    } 
} 

output { 
    stdout { 
     codec => rubydebug  
    } 
} 

然后,你会看到如下页面:

{ 
     "message" => "WARN | 2008-09-06 10:51:44,848 | AbstractBeanDefinitionReader.java | 185 | Loaded 5 bean definitions from location pattern [samContext.xml]", 
     "@version" => "1", 
    "@timestamp" => "2015-09-17T18:30:24.897Z", 
      "host" => "MacBook-Pro-de-Alain.local", 
      "path" => "/Users/Alain/Workspace/elk/logstash-1.5.4/config/filter/test.log" 
} 
{ 
     "message" => "ERROR | 2008-09-06 10:51:44,848 | BeansDtdResolver.java | 72 | Found beans DTD [http://www.springframework.org/dtd/spring-beans.dtd] in classpath: spring-beans.dtd", 
     "@version" => "1", 
    "@timestamp" => "2015-09-17T18:30:24.898Z", 
      "host" => "MacBook-Pro-de-Alain.local", 
      "path" => "/Users/Alain/Workspace/elk/logstash-1.5.4/config/filter/test.log" 
} 
{ 
     "message" => "ERROR | 2008-09-06 10:51:44,864 | DefaultBeanDefinitionDocumentReader.java | 86 | Loading bean definitions", 
     "@version" => "1", 
    "@timestamp" => "2015-09-17T18:30:24.899Z", 
      "host" => "MacBook-Pro-de-Alain.local", 
      "path" => "/Users/Alain/Workspace/elk/logstash-1.5.4/config/filter/test.log" 
} 

问候, 阿兰