logsta sh не сообщает обо всех событиях - PullRequest
0 голосов
/ 16 апреля 2020

я мог видеть, что некоторые события отсутствуют при сообщении журналов в elasti c search. Возьмите пример, я отправляю 5 журналов, о которых сообщают только 4 или 3.

В основном я использую logsta sh 7.4, чтобы читать мои сообщения журнала и сохранять информацию в elasti c search 7.4. ниже моя logsta sh конфигурация

input {
      file {
            type => "web"
            path => ["/Users/a0053/Downloads/logs/**/*-web.log"]
            start_position => "beginning"
            sincedb_path => "/tmp/sincedb_file"
            codec => multiline {
            pattern => "^(%{MONTHDAY}-%{MONTHNUM}-%{YEAR} %{TIME}) "
            negate => true
            what => previous
            }
       }
 }
 filter {
         if [type] == "web" {
             grok {
               match => [ "message","(?<frontendDateTime>%{MONTHDAY}-%{MONTHNUM}-%{YEAR} %{TIME})%{SPACE}(\[%{DATA:thread}\])?( )?%{LOGLEVEL:level}%{SPACE}%{USERNAME:zhost}%{SPACE}%{JAVAFILE:javaClass} %{USERNAME:orgId} (?<loginId>[\w.+=:-]+@[0-9A-Za-z][0-9A-Za-z-]{0,62}(?:[.](?:[0-9A-Za-z][0-9A-Za-z‌​-]{0,62}))*) %{GREEDYDATA:jsonstring}"]
             }

             json {
               source => "jsonstring"
               target => "parsedJson"
               remove_field=>["jsonstring"]
               }
           mutate {
               add_field => {
              "actionType" => "%{[parsedJson][actionType]}"
              "errorMessage" => "%{[parsedJson][errorMessage]}"
              "actionName" => "%{[parsedJson][actionName]}"
              "Payload" => "%{[parsedJson][Payload]}"
              "pageInfo" => "%{[parsedJson][pageInfo]}"
              "browserInfo" => "%{[parsedJson][browserInfo]}"
              "dateTime" => "%{[parsedJson][dateTime]}"
              }
            }
         }
   }

   output{
       if "_grokparsefailure" in [tags]
       {
         elasticsearch
         {
           hosts => "localhost:9200"
           index => "grokparsefailure-%{+YYYY.MM.dd}"
         }
       }
       else {
         elasticsearch
         {
           hosts => "localhost:9200"
           index => "zindex"
         }
       }
       stdout{codec => rubydebug}
   }

Поскольку новые журналы записываются в файлы журналов, я вижу разницу в количестве журналов. Мы ценим любые предложения.

...