6 url => "${dmaap_base_url}/events/${event_topic}/${dmaap_consumer_group}/${dmaap_consumer_id}?timeout=15000"
8 Accept => "application/json"
10 add_field => { "topic" => "${event_topic}" }
12 notification_queue => {
14 url => "${dmaap_base_url}/events/${notification_topic}/${dmaap_consumer_group}/${dmaap_consumer_id}?timeout=15000"
16 Accept => "application/json"
18 add_field => { "topic" => "${notification_topic}" }
22 url => "${dmaap_base_url}/events/${request_topic}/${dmaap_consumer_group}/${dmaap_consumer_id}?timeout=15000"
24 Accept => "application/json"
26 add_field => { "topic" => "${request_topic}" }
37 # avoid noise if no entry in the list
38 if [message] == "[]" {
42 # parse json, split the list into multiple events, and parse each event
53 mutate { remove_field => [ "message" ] }
54 # express timestamps in milliseconds instead of microseconds
56 code => "event.set('closedLoopAlarmStart', Integer(event.get('closedLoopAlarmStart')))"
59 match => [ "closedLoopAlarmStart", UNIX_MS ]
60 target => "closedLoopAlarmStart"
63 if [closedLoopAlarmEnd] {
65 code => "event.set('closedLoopAlarmEnd', Integer(event.get('closedLoopAlarmEnd')))"
68 match => [ "closedLoopAlarmEnd", UNIX_MS ]
69 target => "closedLoopAlarmEnd"
73 #"yyyy-MM-dd HH:mm:ss"
74 if [notificationTime] {
77 "notificationTime", " ", "T"
81 match => [ "notificationTime", ISO8601 ]
82 target => "notificationTime"
91 if [http_request_failure] {
94 hosts => [elasticsearch]
95 index => "errors-%{+YYYY.MM.DD}"
101 hosts => [elasticsearch]
102 index => "logstash-%{+YYYY.MM.DD}" # creates daily indexes
103 doc_as_upsert => true