mackerel-rb 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 649b663e0e707d1c964f373805d78d4cc45a20d3
4
- data.tar.gz: a5ae657699ea0e62ea3b507de860b906ec9233c6
3
+ metadata.gz: 0e1242b73a3af387756da402a27f8287170c564f
4
+ data.tar.gz: be526739f694f80c06b9835708911ed62890f2bc
5
5
  SHA512:
6
- metadata.gz: 69eca9890c1c50f16c070ebdffe8a52793ff1eed64595ad6b5e052bc9197f53c4d8dd151621ee1b9fec8e108e9c3dd7681deed8376e85b14cc4dc49d19d66bdd
7
- data.tar.gz: 093acecf8a73cde69d1b95661949ad05f150a8077dcd376d2024f8cfcc7fcc114c11e536dfcdae0f6a03694869e50a36cf6905760a1e8e11ef540e029b6e9c73
6
+ metadata.gz: 32d657eb619019a34d6786df899990814645da66242f9ef548b2496f12be0d20a035feba4682f9813d34372f31a4225f6ae17fd4a562771144ee5184e85d9d37
7
+ data.tar.gz: 8d9c75727d15ce776fec2ab26218102dabc7bc1e45e5ac9978bf9f8088bb0cd7babbd69de19cb37b43cc7b1b96ddd78d8471a1074963a11b446ad63d2f1b988f
data/README.md CHANGED
@@ -1,4 +1,5 @@
1
1
  # mackerel-rb
2
+ [![Gem Version](https://badge.fury.io/rb/mackerel-rb.svg)](http://badge.fury.io/rb/mackerel-rb)
2
3
  [![Build Status](https://travis-ci.org/mizoR/mackerel-rb.svg)](https://travis-ci.org/mizoR/mackerel-rb)
3
4
  [![Code Climate](https://codeclimate.com/github/mizoR/mackerel-rb/badges/gpa.svg)](https://codeclimate.com/github/mizoR/mackerel-rb)
4
5
  [![Dependency Status](https://gemnasium.com/mizoR/mackerel-rb.svg)](https://gemnasium.com/mizoR/mackerel-rb)
@@ -22,7 +23,8 @@ Or install it yourself as:
22
23
 
23
24
  ```rb
24
25
  Mackerel.configure do |config|
25
- config.api_key = "<Your API Key>" # Default: ENV['MACKEREL_APIKEY']
26
+ config.api_key = "<Your API Key>" # Default: ENV['MACKEREL_APIKEY']
27
+ config.proxy = "http://proxy.example.com:80" # Default: nil (Not use http proxy)
26
28
  end
27
29
 
28
30
  hosts = Mackerel.hosts
@@ -40,10 +42,10 @@ end
40
42
  - [x] `PUT /api/v0/hosts/<hostId>`
41
43
  - [x] `POST /api/v0/hosts/<hostId>/status`
42
44
  - [x] `POST /api/v0/hosts/<hostId>/retire`
43
- - [ ] `POST /api/v0/tsdb`
45
+ - [x] `POST /api/v0/tsdb`
44
46
  - [x] `GET /api/v0/tsdb/latest`
45
- - [ ] `POST /api/v0/services/<serviceName>/tsdb`
46
- - [ ] `POST /api/v0/monitoring/checks/report`
47
+ - [x] `POST /api/v0/services/<serviceName>/tsdb`
48
+ - [x] `POST /api/v0/monitoring/checks/report`
47
49
 
48
50
  ## Contributing
49
51
 
@@ -0,0 +1,10 @@
1
+ module Mackerel
2
+ class Client
3
+ module MonitoringCheckReport
4
+ def create_monitoring_check_report(params)
5
+ response = post 'monitoring/checks/report', params
6
+ response.body
7
+ end
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,11 @@
1
+ module Mackerel
2
+ class Client
3
+ module ServiceTsdb
4
+ def create_service_tsdb(service_name, params)
5
+ response = post "service/#{service_name}/tsdb", params
6
+ response.body
7
+ end
8
+ alias :create_service_metrics :create_service_tsdb
9
+ end
10
+ end
11
+ end
@@ -1,10 +1,17 @@
1
1
  module Mackerel
2
2
  class Client
3
3
  module Tsdb
4
+ def create_tsdb(params)
5
+ response = post 'tsdb', params
6
+ response.body
7
+ end
8
+ alias :create_metrics :create_tsdb
9
+
4
10
  def latest_tsdb(params)
5
11
  response = get 'tsdb/latest', params
6
12
  response.body.tsdbLatest
7
13
  end
14
+ alias :latest_metrics :latest_tsdb
8
15
  end
9
16
  end
10
17
  end
@@ -3,6 +3,8 @@ require 'mackerel/connection'
3
3
  require 'mackerel/client/host'
4
4
  require 'mackerel/client/host_status'
5
5
  require 'mackerel/client/tsdb'
6
+ require 'mackerel/client/service_tsdb'
7
+ require 'mackerel/client/monitoring_check_report'
6
8
  require 'mackerel/response/raise_error'
7
9
 
8
10
  module Mackerel
@@ -13,5 +15,7 @@ module Mackerel
13
15
  include Client::Host
14
16
  include Client::HostStatus
15
17
  include Client::Tsdb
18
+ include Client::ServiceTsdb
19
+ include Client::MonitoringCheckReport
16
20
  end
17
21
  end
@@ -9,7 +9,7 @@ module Mackerel
9
9
  end
10
10
 
11
11
  class Config
12
- attr_accessor :api_endpoint, :api_key, :http_accept, :params_encoder, :request, :user_agent
12
+ attr_accessor :api_endpoint, :api_key, :http_accept, :params_encoder, :proxy, :request, :user_agent
13
13
 
14
14
  def initialize
15
15
  @api_endpoint = 'https://mackerel.io/api/v0'
@@ -17,6 +17,7 @@ module Mackerel
17
17
  @http_accept = 'application/json'
18
18
  @user_agent = "Mackerel.rb Ruby Gem #{Mackerel::VERSION}"
19
19
  @params_encoder = Faraday::FlatParamsEncoder
20
+ @proxy = nil
20
21
  end
21
22
 
22
23
  def request
@@ -20,7 +20,7 @@ module Mackerel
20
20
  end
21
21
 
22
22
  def connection
23
- @connection ||= Faraday.new(url: config.api_endpoint, headers: config.http_request_headers, request: config.request) do |faraday|
23
+ @connection ||= Faraday.new(url: config.api_endpoint, headers: config.http_request_headers, request: config.request, proxy: config.proxy) do |faraday|
24
24
  faraday.use Mackerel::Response::RaiseError
25
25
  faraday.use Faraday::Response::Logger if ENV['DEBUG'] == '1'
26
26
  faraday.use FaradayMiddleware::Mashify
@@ -1,3 +1,3 @@
1
1
  module Mackerel
2
- VERSION = "0.1.0"
2
+ VERSION = "0.1.1"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mackerel-rb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - mizokami
@@ -116,6 +116,8 @@ files:
116
116
  - lib/mackerel/client.rb
117
117
  - lib/mackerel/client/host.rb
118
118
  - lib/mackerel/client/host_status.rb
119
+ - lib/mackerel/client/monitoring_check_report.rb
120
+ - lib/mackerel/client/service_tsdb.rb
119
121
  - lib/mackerel/client/tsdb.rb
120
122
  - lib/mackerel/commands/host.rb
121
123
  - lib/mackerel/commands/host_status.rb