Описание события становится ноль в Риман

Я пытаюсь отправить уведомление по электронной почте из logstash с помощью Riemann. Мой адрес электронной почты должен срабатывать при соблюдении определенных критериев. Я написал конфигурацию Riemann для отправки оповещения по электронной почте о том, что я посылаю определенные события из logstash, я жестко закодировал :description поле, но на моем сервере Римана я вижу описание как nil всегда. Я не знаю, где я иду не так.

Риман Конфиг

(let [host "127.0.0.1"]
  (tcp-server {:host host})
  (udp-server {:host host})
  (ws-server  {:host host}))

  ;Create index and print the values indexed
  (let [eindex (default :ttl 300 (update-index (index)))])


  ;Index event for reserve webservice failure
  (let [email (mailer{…….})]

  (streams
    (where (service "e_log")
      (fixed-time-window
        1 
        (smap
          (fn [events]
           (let [count-of-failures (count (filter #(re-find #"system space*" (:description %)) events))]        ;Calculate the count for matched value
               (event
                {:status "Failure"
                 :metric  count-of-failures 
                 :total-fail (>= count-of-failures 1)})))

          (where (and (= (:status event) "Failure")
                      (:total-fail event))

            (email "dfbnn@gmail.com"))prn)))))

Logstash Config

    riemann{
        host=>localhost
             riemann_event => { "service" => "e_log"
"description" => "system space communication"
"metric" => "%{metric}"
"ttl" => "%{ttl}"                                                                                 
                          }                                        
                    }

На моем сервере Римана я вижу :description поле как nil всегда так, чтобы :total-fail всегда ложно

Риман Сервер

riemann.codec.Event{:host nil, :service nil, :state nil, :description nil, :metric 0, :tags nil, :time 1447406529, :ttl nil, :status "Failure", :total-fail false}
riemann.codec.Event{:host nil, :service nil, :state nil, :description nil, :metric 0, :tags nil, :time 1447406529, :ttl nil, :status "Failure", :total-fail false}
riemann.codec.Event{:host nil, :service nil, :state nil, :description nil, :metric 0, :tags nil, :time 1447406529, :ttl nil, :status "Failure", :total-fail false}
riemann.codec.Event{:host nil, :service nil, :state nil, :description nil, :metric 0, :tags nil, :time 1447406529, :ttl nil, :status "Failure", :total-fail false}
riemann.codec.Event{:host nil, :service nil, :state nil, :description nil, :metric 0, :tags nil, :time 1447406529, :ttl nil, :status "Failure", :total-fail false}

заранее спасибо

1 ответ

Две вещи, которые приходят мне в голову:

  1. Что-то не так с кодом, который отправляет эти события. Вы можете принести полезную нагрузку?
  2. Это далеко выстрел: эти события истекли? Если они есть, скорее всего, ключи не хранятся. Попробуйте это: (периодически истекает 5 {:keep-keys [:host:service:description ...etc...]}) (конечно, измените 5 на любое значение, которое вы хотите, чтобы оно происходило).
Другие вопросы по тегам