Guest User

logstash_conf

a guest
Aug 12th, 2019
168
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
JSON 5.03 KB | None | 0 0
  1. input {
  2.   beats {
  3.     # The port to listen on for filebeat connections.
  4.     port => 5044
  5.     # The IP address to listen for filebeat connections.
  6.     host => "0.0.0.0"
  7.   }
  8. }
  9. filter {
  10.    if "jetty" in [service] {
  11.      grok {
  12.        match => { "message" => ["%{MONTH:month} %{MONTHDAY:day}, %{YEAR:year} %{TIME:time} %{WORD:day_period} %{NOTSPACE:[system][jetty][class]} %{WORD:[system][jetty][method]}\n%{GREEDYMULTILINE:multiline}",
  13.                                "%{WORD:severity} in thread \"%{THREADNAME:threadName}\" %{GREEDYDATA:[system][jetty][data]}",
  14.                                "%{WORD:severity} in thread \"%{THREADNAME:threadName}\" %{NOTSPACE:[system][jetty][exceptionClass]}: %{GREEDYDATA:exceptionMessage}\n %{GREEDYMULTILINE:exceptionMultiline}"
  15.                                ] }
  16.        pattern_definitions => {
  17.          "GREEDYMULTILINE" => "(.|\r|\n)*"
  18.          "THREADNAME" => "[^\"]+"
  19.        }
  20.        remove_field => ["host"]
  21.     }
  22.  
  23.     if "_grokparsefailure" in [tags] {
  24.       drop {}
  25.     }
  26.  
  27.     if [threadName] {
  28.       if [exceptionMessage] {
  29.         mutate {
  30.           add_field => {
  31.             "exeptMessage" => "%{exceptionMessage} %{exceptionMultiline}"
  32.           }
  33.           remove_field => ["exceptionMessage", "exceptionMultiline"]
  34.         }
  35.  
  36.         mutate {
  37.           add_field => ["data", "%{exeptMessage}"]
  38.           remove_field => "exeptMessage"
  39.         }
  40.  
  41.         mutate {
  42.           gsub => [ "data", "\\n", "\n" ]
  43.         }
  44.         mutate {
  45.          gsub => [ "data", "\\t", "\t" ]
  46.         }
  47.         mutate {
  48.           rename => {"data" => "[system][jetty][data]"}
  49.           convert => { "[system][jetty][data]" => "string" }
  50.           remove_field => "data"
  51.         }
  52.       }
  53.       mutate {
  54.         gsub => [ "[system][jetty][data]", "^[A-Z]+, ", "" ]
  55.       }
  56.       mutate {
  57.         rename => {"severity" => "[system][jetty][severity]"}
  58.       }
  59.     } else {
  60.  
  61.       mutate {
  62.         add_field => {
  63.           "timestamp_match" => "%{month} %{day} %{year} %{time} %{day_period}"
  64.         }
  65.         remove_field => [ "month", "day", "year", "time", "day_period" ]
  66.       }
  67.  
  68.       mutate {
  69.         convert => { "timestamp_match" => "string" }
  70.       }
  71.  
  72.       date {
  73.         match => [ "timestamp_match",
  74.                    "MMM dd YYYY KK:mm:ss aa",
  75.                    "MMM dd YYYY K:mm:ss aa" ]
  76.         timezone => "UTC"
  77.         target => "@timestamp"
  78.         remove_field => ["timestamp_match"]
  79.       }
  80.  
  81.       mutate {
  82.         split => ["multiline", ":"]
  83.         add_field => ["severity", "%{[multiline][0]}"]
  84.       }
  85.       if "WARN" in [severity] {
  86.         mutate {
  87.           update => { "severity" => "WARNING" }
  88.         }
  89.       }
  90.  
  91.       mutate {
  92.         add_field => ["data", "%{multiline}"]
  93.         remove_field => "multiline"
  94.       }
  95.  
  96.       mutate {
  97.         rename => {"severity" => "[system][jetty][severity]"}
  98.       }
  99.  
  100.       mutate {
  101.         gsub => [ "data", "\\n", "\n" ]
  102.       }
  103.       mutate {
  104.         gsub => [ "data", "\\t", "\t" ]
  105.       }
  106.  
  107.       mutate {
  108.         rename => {"data" => "[system][jetty][data]"}
  109.         convert => { "[system][jetty][data]" => "string" }
  110.         remove_field => "data"
  111.       }
  112.  
  113. #change severity to Exception of zip file closed in logfile
  114.  
  115.       if "java.lang.IllegalStateException, zip file closed" in [system][jetty][data] {
  116.     mutate {
  117.       update => { "[system][jetty][severity]" => "Exception" }
  118.     }
  119.       }
  120.  
  121.       if "JDBCConnectionException" in [system][jetty][data] {
  122.         mutate {
  123.           update => { "[system][jetty][severity]" => "Exception" }
  124.         }
  125.       }
  126.  
  127.       if "com.candorgrc.core.common.fileresources.DownloadServlet" in [system][jetty][class] {
  128.     mutate {
  129.       update => { "[system][jetty][severity]" => "WARNING" }
  130.     }
  131.       }
  132.  
  133.       if "Caused by: java.lang.IllegalStateException: Invalid for read:" in [message] {
  134.         mutate {
  135.       update => { "[system][jetty][severity]" => "WARNING" }
  136.         }
  137.       }
  138.  
  139.       if "at org.apache.shiro.web.session.HttpServletSession.getAttribute(HttpServletSession.java" in [message] {
  140.         mutate {
  141.           update => { "[system][jetty][severity]" => "WARNING" }
  142.         }
  143.       }
  144.  
  145.       if "Tenant Already Provisioned" in [message] {
  146.         mutate {
  147.          update => { "[system][jetty][severity]" => "WARNING" }
  148.         }
  149.       }
  150.  
  151.      if "org.apache.shiro.session.InvalidSessionException" in [message] {
  152.         mutate {
  153.          update => { "[system][jetty][severity]" => "WARNING" }
  154.         }
  155.      }
  156.       mutate {
  157.         gsub => [ "[system][jetty][data]", "^[A-Z]+, ", "" ]
  158.       }
  159.     }
  160.     mutate {
  161.       rename => {"threadName" => "[system][jetty][threadName]"}
  162.     }
  163.   }
  164. }
  165. output {
  166.   if [service] in ["jetty", "msg-consumer", "consumer-reporter"] {
  167.       stdout {
  168.         codec => rubydebug
  169.       }
  170.   elasticsearch {
  171.       hosts => ["172.16.99.5:9200"]
  172.       manage_template => false
  173.       index => "%{[@metadata][beat]}-log-%{[@metadata][version]}-%{+YYYY.MM.dd}"
  174.       document_type => "%{[@metadata][type]}"
  175.     }
  176.   }
  177. }
Advertisement
Add Comment
Please, Sign In to add comment