Reactio API Client for ruby
Add this line to your application's Gemfile:
gem 'reactio'And then execute:
$ bundle
Or install it yourself as:
$ gem install reactio
require 'reactio'
include Reactio
reactio.create_incident('An Incident')And run:
$ REACTIO_API_KEY='YOUR_API_KEY' REACTIO_ORGANIZATION='YOUR_ORGANIZATION' bundle exec ruby create_incident.rb
require 'reactio'
reactio = Reactio::Service.new(
api_key: 'YOUR_API_KEY',
organization: 'YOUR_ORGANIZATION'
)
reactio.create_incident('An Incident')- インシデント作成(およびトピック登録)
require 'reactio'
include Reactio
reactio.create_incident(
'サイト閲覧不可',
status: 'open',
detection: 'internal',
cause: 'over-capacity',
cause_supplement: 'Webサーバがアクセス過多でダウン',
point: 'application',
scale: 'point',
pend_text: 'Webサーバの再起動を行う',
topics: %w(原因調査 復旧作業),
notification_text: '至急対応をお願いします',
notification_call: false
)- 一斉通知
require 'reactio'
include Reactio
reactio.notify_incident(
123,
notification_text: '至急対応をお願いします',
notification_call: true
)- インシデント一覧取得
require 'reactio'
include Reactio
list = reactio.list_incidents(
from: Time.now - (60 * 60 * 24 * 7),
to: Time.now,
status: 'pend',
page: 1,
per_page: 50
)
p list.first
#=> {:id=>1, :name=>"サイト閲覧不可", :manager=>nil, :status=>"pend", :detection=>"msp", :cause=>"over-capacity", :cause_supplement=>"Webサーバがアクセス過多でダウン", :point=>"middleware", :scale=>"whole", :pend_text=>"Webサーバの再起動を行う", :close_text=>"Webサーバのスケールアウトを行う", :closed_by=>nil, :closed_at=>nil, :pended_by=>nil, :pended_at=>nil, :created_by=>0, :created_at=>1430208000, :updated_by=>0, :updated_at=>1430208000}- インシデント取得
require 'reactio'
include Reactio
p reactio.describe_incident(123)
#=> {:id=>123, :name=>"サイト閲覧不可", :manager=>nil, :status=>"open", :detection=>"msp", :cause=>"over-capacity", :cause_supplement=>"Webサーバがアクセス過多でダウン", :point=>"middleware", :scale=>"whole", :pend_text=>"Webサーバの再起動を行う", :close_text=>"Webサーバのスケールアウトを行う", :closed_by=>nil, :closed_at=>nil, :pended_by=>nil, :pended_at=>nil, :created_by=>0, :created_at=>1430208000, :updated_by=>0, :updated_at=>1430208000, :topics=>[{:id=>1, :name=>"原因調査", :status=>"open", :color=>"#5661aa", :closed_by=>nil, :closed_at=>nil, :created_by=>0, :created_at=>1430208000, :updated_by=>0, :updated_at=>1430208000}, {:id=>2, :name=>"復旧作業", :status=>"open", :color=>"#077f40", :closed_by=>nil, :closed_at=>nil, :created_by=>0, :created_at=>1430208000, :updated_by=>0, :updated_at=>1430208000}], :files=>[{:name=>"障害報告書", :path=>"https://demo.reactio.jp/data/reactio-mvp/files/incident/1/_bYMRLTxj75lcXCWN0iaAZud2CuGqFFL/Screen_Shot.png"}], :users=>[{:id=>1}, {:id=>2}]}- Fork it ( https://github.com/[my-github-username]/reactio/fork )
- Create your feature branch (
git checkout -b my-new-feature) - Commit your changes (
git commit -am 'Add some feature') - Push to the branch (
git push origin my-new-feature) - Create a new Pull Request