Module: Sensu::API::Routes::Events
- Includes:
- Utilities::ResolveEvent
- Included in:
- Sensu::API::Routes
- Defined in:
- lib/sensu/api/routes/events.rb
Constant Summary collapse
- EVENTS_URI =
/^\/(?:events|incidents)$/
- EVENTS_CLIENT_URI =
/^\/(?:events|incidents)\/([\w\.-]+)$/
- EVENT_URI =
/^\/(?:events|incidents)\/([\w\.-]+)\/([\w\.-]+)$/
Instance Method Summary collapse
-
#delete_event ⇒ Object
DELETE /events/:client_name/:check_name.
-
#get_event ⇒ Object
GET /events/:client_name/:check_name.
-
#get_events ⇒ Object
GET /events.
-
#get_events_client ⇒ Object
GET /events/:client_name.
Instance Method Details
#delete_event ⇒ Object
DELETE /events/:client_name/:check_name
71 72 73 74 75 76 77 78 79 80 81 82 |
# File 'lib/sensu/api/routes/events.rb', line 71 def delete_event client_name, check_name = parse_uri(EVENT_URI) @redis.hgetall("events:#{client_name}") do |events| if events.include?(check_name) resolve_event(events[check_name]) @response_content = {:issued => Time.now.to_i} accepted! else not_found! end end end |
#get_event ⇒ Object
GET /events/:client_name/:check_name
57 58 59 60 61 62 63 64 65 66 67 68 |
# File 'lib/sensu/api/routes/events.rb', line 57 def get_event client_name, check_name = parse_uri(EVENT_URI) @redis.hgetall("events:#{client_name}") do |events| event_json = events[check_name] unless event_json.nil? @response_content = Sensu::JSON.load(event_json) respond else not_found! end end end |
#get_events ⇒ Object
GET /events
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/sensu/api/routes/events.rb', line 14 def get_events @response_content = [] raw_event_json = [] @redis.smembers("clients") do |clients| unless clients.empty? clients.each_with_index do |client_name, index| @redis.hgetall("events:#{client_name}") do |events| events.each do |check_name, event_json| raw_event_json << event_json end if index == clients.length - 1 raw_event_json = pagination(raw_event_json) raw_event_json.each do |event_json| @response_content << Sensu::JSON.load(event_json) end respond end end end else respond end end end |
#get_events_client ⇒ Object
GET /events/:client_name
40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
# File 'lib/sensu/api/routes/events.rb', line 40 def get_events_client client_name = parse_uri(EVENTS_CLIENT_URI).first @response_content = [] raw_event_json = [] @redis.hgetall("events:#{client_name}") do |events| events.each do |check_name, event_json| raw_event_json << event_json end raw_event_json = pagination(raw_event_json) raw_event_json.each do |event_json| @response_content << Sensu::JSON.load(event_json) end respond end end |