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$/
- EVENTS_CLIENT_URI =
/^\/events\/([\w\.-]+)$/
- EVENT_URI =
/^\/events\/([\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
61 62 63 64 65 66 67 68 69 70 71 72 |
# File 'lib/sensu/api/routes/events.rb', line 61 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
47 48 49 50 51 52 53 54 55 56 57 58 |
# File 'lib/sensu/api/routes/events.rb', line 47 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 |
# File 'lib/sensu/api/routes/events.rb', line 14 def get_events @response_content = [] @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| @response_content << Sensu::JSON.load(event_json) end if index == clients.length - 1 respond end end end else respond end end end |
#get_events_client ⇒ Object
GET /events/:client_name
35 36 37 38 39 40 41 42 43 44 |
# File 'lib/sensu/api/routes/events.rb', line 35 def get_events_client client_name = parse_uri(EVENTS_CLIENT_URI).first @response_content = [] @redis.hgetall("events:#{client_name}") do |events| events.each do |check_name, event_json| @response_content << Sensu::JSON.load(event_json) end respond end end |