influxdb 0.3.5 → 0.3.6
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 +7 -0
- data/.travis.yml +4 -2
- data/CHANGELOG.md +5 -0
- data/Gemfile +4 -0
- data/README.md +22 -1
- data/lib/influxdb/client/http.rb +9 -1
- data/lib/influxdb/config.rb +6 -0
- data/lib/influxdb/query/core.rb +10 -1
- data/lib/influxdb/version.rb +1 -1
- data/spec/influxdb/cases/{query_core.rb → query_core_spec.rb} +0 -0
- data/spec/influxdb/cases/querying_issue_7000_spec.rb +89 -0
- data/spec/influxdb/cases/querying_spec.rb +18 -2
- metadata +46 -66
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: c027fe626b731c0fe89678ae44f7f87a24db7c68
|
4
|
+
data.tar.gz: 929dc5eda07eabfba284891ede0a293a6b0fc49a
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 64db490708b15350c4e2ab2cc76b5f934db510a86eec7be024f9a6c652e26d09fa2570b729ab6987887382769b5b9a1f5bbfdb0a3c8fc96775ce2db7b0a563fb
|
7
|
+
data.tar.gz: b4fc2890772ec74612dac94633e5607904b4aadeef0a3760d698b24cbf16d4a23e6c004edece2b15d8926fa21e028f7479a26d168a03ab59ae4cbaedccc782f5
|
data/.travis.yml
CHANGED
@@ -2,6 +2,7 @@ sudo: required
|
|
2
2
|
dist: trusty
|
3
3
|
language: ruby
|
4
4
|
before_install:
|
5
|
+
- gem install bundler
|
5
6
|
- gem update bundler
|
6
7
|
rvm:
|
7
8
|
- 1.9.3
|
@@ -21,12 +22,13 @@ matrix:
|
|
21
22
|
- rvm: 2.3.1
|
22
23
|
env: TEST_TASK=rubocop
|
23
24
|
- rvm: jruby-9.0.5.0
|
24
|
-
env: JRUBY_OPTS='-J-Xmx256M'
|
25
|
+
env: JRUBY_OPTS='--client -J-XX:+TieredCompilation -J-XX:TieredStopAtLevel=1 -J-Xss2m -J-Xmx256M'
|
25
26
|
- rvm: jruby-head
|
26
|
-
env: JRUBY_OPTS='-J-Xmx256M'
|
27
|
+
env: JRUBY_OPTS='--client -J-XX:+TieredCompilation -J-XX:TieredStopAtLevel=1 -J-Xss2m -J-Xmx256M'
|
27
28
|
fail_fast: true
|
28
29
|
addons:
|
29
30
|
apt:
|
30
31
|
packages:
|
32
|
+
- haveged
|
31
33
|
- libgmp-dev
|
32
34
|
script: bundle exec rake $TEST_TASK
|
data/CHANGELOG.md
CHANGED
@@ -6,6 +6,11 @@ For the full commit log, [see here](https://github.com/influxdata/influxdb-ruby/
|
|
6
6
|
|
7
7
|
- None.
|
8
8
|
|
9
|
+
## v0.3.6, released 2016-07-24
|
10
|
+
|
11
|
+
- Added feature for JSON streaming response, via `"chunk_size"` parameter
|
12
|
+
(#155, @mhodson-qxbranch)
|
13
|
+
|
9
14
|
## v0.3.5, released 2016-06-09
|
10
15
|
|
11
16
|
- Reintroduced full dependency on "cause" (for Ruby 1.9 compat).
|
data/Gemfile
CHANGED
data/README.md
CHANGED
@@ -18,6 +18,9 @@ Maintained by [@toddboom](https://github.com/toddboom) and [@dmke](https://githu
|
|
18
18
|
|
19
19
|
This gem should work with Ruby 1.9+, but starting with v0.4, we'll likely drop Ruby 1.9 support.
|
20
20
|
|
21
|
+
Please note that for Ruby 1.9, you'll need to install the JSON gem in version 1.8.x yourself,
|
22
|
+
for example by pinning the version in your `Gemfile` (i.e. `gem "json", "~> 1.8.3"`).
|
23
|
+
|
21
24
|
## Install
|
22
25
|
|
23
26
|
```
|
@@ -424,7 +427,7 @@ influxdb.write_point(name, data)
|
|
424
427
|
|
425
428
|
### Reading data
|
426
429
|
|
427
|
-
Querying
|
430
|
+
### Querying
|
428
431
|
|
429
432
|
``` ruby
|
430
433
|
username = 'foo'
|
@@ -468,6 +471,8 @@ influxdb.query 'select * from time_series', epoch: 'ms'
|
|
468
471
|
# [{"name"=>"time_series", "tags"=>{"region"=>"uk"}, "values"=>[{"time"=>1438411376000, "count"=>32, "value"=>0.9673}]}]
|
469
472
|
```
|
470
473
|
|
474
|
+
#### (De-) Normalization
|
475
|
+
|
471
476
|
By default, InfluxDB::Client will denormalize points (received from InfluxDB as columns and rows), if you want to get _raw_ data add `denormalize: false` to initialization options or to query itself:
|
472
477
|
|
473
478
|
``` ruby
|
@@ -487,6 +492,22 @@ end
|
|
487
492
|
# time_series_1 [ {"region"=>"us"} ] => {"columns"=>["time", "count", "value"], "values"=>[["2015-07-09T09:02:54Z", 55, 0.4343]]}
|
488
493
|
```
|
489
494
|
|
495
|
+
#### Streaming response
|
496
|
+
|
497
|
+
If you expect large quantities of data in a response, you may want to enable JSON streaming by setting a `chunk_size`:
|
498
|
+
|
499
|
+
``` ruby
|
500
|
+
influxdb = InfluxDB::Client.new database,
|
501
|
+
username: username,
|
502
|
+
password: password,
|
503
|
+
chunk_size: 10000
|
504
|
+
```
|
505
|
+
|
506
|
+
See the [official documentation](http://docs.influxdata.com/influxdb/v0.13/guides/querying_data/#chunking) for more details.
|
507
|
+
|
508
|
+
|
509
|
+
#### Retry
|
510
|
+
|
490
511
|
By default, InfluxDB::Client will keep trying to connect to the database when it gets connection denied,
|
491
512
|
if you want to retry a finite number of times (or disable retries altogether), you should pass the `:retry`
|
492
513
|
value.
|
data/lib/influxdb/client/http.rb
CHANGED
@@ -4,6 +4,7 @@ require 'net/http'
|
|
4
4
|
require 'net/https'
|
5
5
|
|
6
6
|
module InfluxDB
|
7
|
+
# rubocop:disable Metrics/ModuleLength
|
7
8
|
# rubocop:disable Metrics/MethodLength
|
8
9
|
# rubocop:disable Metrics/AbcSize
|
9
10
|
module HTTP # :nodoc:
|
@@ -85,7 +86,14 @@ module InfluxDB
|
|
85
86
|
end
|
86
87
|
|
87
88
|
def handle_successful_response(response, options)
|
88
|
-
|
89
|
+
if options.fetch(:json_streaming, false)
|
90
|
+
parsed_response = response.body.each_line.with_object({}) do |line, parsed|
|
91
|
+
parsed.merge!(JSON.parse(line)) { |_key, oldval, newval| oldval + newval }
|
92
|
+
end
|
93
|
+
elsif response.body
|
94
|
+
parsed_response = JSON.parse(response.body)
|
95
|
+
end
|
96
|
+
|
89
97
|
errors = errors_from_response(parsed_response)
|
90
98
|
|
91
99
|
raise InfluxDB::QueryError, errors if errors
|
data/lib/influxdb/config.rb
CHANGED
@@ -20,6 +20,7 @@ module InfluxDB
|
|
20
20
|
:read_timeout,
|
21
21
|
:retry,
|
22
22
|
:prefix,
|
23
|
+
:chunk_size,
|
23
24
|
:denormalize,
|
24
25
|
:epoch
|
25
26
|
|
@@ -30,6 +31,7 @@ module InfluxDB
|
|
30
31
|
extract_ssl_options!(opts)
|
31
32
|
extract_database_options!(opts)
|
32
33
|
extract_writer_options!(opts)
|
34
|
+
extract_query_options!(opts)
|
33
35
|
|
34
36
|
configure_retry! opts.fetch(:retry, nil)
|
35
37
|
configure_hosts! opts[:hosts] || opts[:host] || "localhost".freeze
|
@@ -110,5 +112,9 @@ module InfluxDB
|
|
110
112
|
@async = opts.fetch :async, false
|
111
113
|
@udp = opts.fetch :udp, false
|
112
114
|
end
|
115
|
+
|
116
|
+
def extract_query_options!(opts)
|
117
|
+
@chunk_size = opts.fetch :chunk_size, nil
|
118
|
+
end
|
113
119
|
end
|
114
120
|
end
|
data/lib/influxdb/query/core.rb
CHANGED
@@ -14,9 +14,11 @@ module InfluxDB
|
|
14
14
|
# rubocop:disable Metrics/MethodLength
|
15
15
|
def query(query, opts = {})
|
16
16
|
denormalize = opts.fetch(:denormalize, config.denormalize)
|
17
|
+
json_streaming = !opts.fetch(:chunk_size, config.chunk_size).nil?
|
18
|
+
|
17
19
|
params = query_params(query, opts)
|
18
20
|
url = full_url("/query".freeze, params)
|
19
|
-
series = fetch_series(get(url, parse: true))
|
21
|
+
series = fetch_series(get(url, parse: true, json_streaming: json_streaming))
|
20
22
|
|
21
23
|
if block_given?
|
22
24
|
series.each do |s|
|
@@ -67,9 +69,16 @@ module InfluxDB
|
|
67
69
|
def query_params(query, opts)
|
68
70
|
precision = opts.fetch(:precision, config.time_precision)
|
69
71
|
epoch = opts.fetch(:epoch, config.epoch)
|
72
|
+
chunk_size = opts.fetch(:chunk_size, config.chunk_size)
|
70
73
|
|
71
74
|
params = { q: query, db: config.database, precision: precision }
|
72
75
|
params[:epoch] = epoch if epoch
|
76
|
+
|
77
|
+
if chunk_size
|
78
|
+
params[:chunked] = 'true'
|
79
|
+
params[:chunk_size] = chunk_size
|
80
|
+
end
|
81
|
+
|
73
82
|
params
|
74
83
|
end
|
75
84
|
|
data/lib/influxdb/version.rb
CHANGED
File without changes
|
@@ -0,0 +1,89 @@
|
|
1
|
+
# This test spec addresses closed issue https://github.com/influxdata/influxdb/issues/7000 where
|
2
|
+
# it was confirmed that when chunking is enabled, the InfluxDB REST API returns multi-line JSON.
|
3
|
+
|
4
|
+
require "spec_helper"
|
5
|
+
require "json"
|
6
|
+
|
7
|
+
describe InfluxDB::Client do
|
8
|
+
let(:subject) do
|
9
|
+
described_class.new "database", {
|
10
|
+
host: "influxdb.test",
|
11
|
+
port: 9999,
|
12
|
+
username: "username",
|
13
|
+
password: "password",
|
14
|
+
time_precision: "s"
|
15
|
+
}.merge(args)
|
16
|
+
end
|
17
|
+
|
18
|
+
let(:args) { {} }
|
19
|
+
let(:database) { subject.config.database }
|
20
|
+
let(:extra_params) { {} }
|
21
|
+
let(:response) { "" }
|
22
|
+
|
23
|
+
before do
|
24
|
+
stub_request(:get, "http://influxdb.test:9999/query")
|
25
|
+
.with(query: { q: query, u: "username", p: "password", precision: 's', db: database }.merge(extra_params))
|
26
|
+
.to_return(body: response)
|
27
|
+
end
|
28
|
+
|
29
|
+
describe "#query" do
|
30
|
+
context "with series with different tags (multi-line)" do
|
31
|
+
let(:args) { { chunk_size: 100 } }
|
32
|
+
let(:extra_params) { { chunked: "true", chunk_size: "100" } }
|
33
|
+
|
34
|
+
let(:response_line_1) do
|
35
|
+
{ "results" => [{ "series" => [{ "name" => "cpu", "tags" => { "region" => "pl" }, "columns" => %w(time temp value), "values" => [["2015-07-07T15:13:04Z", 34, 0.343443]] }] }] }
|
36
|
+
end
|
37
|
+
let(:response_line_2) do
|
38
|
+
{ "results" => [{ "series" => [{ "name" => "cpu", "tags" => { "region" => "us" }, "columns" => %w(time temp value), "values" => [["2015-07-07T14:58:37Z", 92, 0.3445], ["2015-07-07T14:59:09Z", 68, 0.8787]] }] }] }
|
39
|
+
end
|
40
|
+
let(:response) do
|
41
|
+
JSON.generate(response_line_1) + "\n" + JSON.generate(response_line_2)
|
42
|
+
end
|
43
|
+
let(:expected_result) do
|
44
|
+
[{ "name" => "cpu", "tags" => { "region" => "pl" },
|
45
|
+
"values" => [{ "time" => "2015-07-07T15:13:04Z", "temp" => 34, "value" => 0.343443 }] },
|
46
|
+
{ "name" => "cpu", "tags" => { "region" => "us" },
|
47
|
+
"values" => [{ "time" => "2015-07-07T14:58:37Z", "temp" => 92, "value" => 0.3445 },
|
48
|
+
{ "time" => "2015-07-07T14:59:09Z", "temp" => 68, "value" => 0.8787 }] }]
|
49
|
+
end
|
50
|
+
let(:query) { 'SELECT * FROM cpu' }
|
51
|
+
|
52
|
+
it "should return array with 2 elements grouped by tags" do
|
53
|
+
expect(subject.query(query)).to eq(expected_result)
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
context "with multiple series with different tags" do
|
58
|
+
let(:args) { { chunk_size: 100 } }
|
59
|
+
let(:extra_params) { { chunked: "true", chunk_size: "100" } }
|
60
|
+
|
61
|
+
let(:response_line_1) do
|
62
|
+
{ "results" => [{ "series" => [{ "name" => "access_times.service_1", "tags" => { "code" => "200", "result" => "failure", "status" => "OK" }, "columns" => %w(time value), "values" => [["2015-07-08T07:15:22Z", 327]] }] }] }
|
63
|
+
end
|
64
|
+
let(:response_line_2) do
|
65
|
+
{ "results" => [{ "series" => [{ "name" => "access_times.service_1", "tags" => { "code" => "500", "result" => "failure", "status" => "Internal Server Error" }, "columns" => %w(time value), "values" => [["2015-07-08T06:15:22Z", 873]] }] }] }
|
66
|
+
end
|
67
|
+
let(:response_line_3) do
|
68
|
+
{ "results" => [{ "series" => [{ "name" => "access_times.service_2", "tags" => { "code" => "200", "result" => "failure", "status" => "OK" }, "columns" => %w(time value), "values" => [["2015-07-08T07:15:22Z", 943]] }] }] }
|
69
|
+
end
|
70
|
+
let(:response_line_4) do
|
71
|
+
{ "results" => [{ "series" => [{ "name" => "access_times.service_2", "tags" => { "code" => "500", "result" => "failure", "status" => "Internal Server Error" }, "columns" => %w(time value), "values" => [["2015-07-08T06:15:22Z", 606]] }] }] }
|
72
|
+
end
|
73
|
+
let(:response) do
|
74
|
+
JSON.generate(response_line_1) + "\n" + JSON.generate(response_line_2) + "\n" + JSON.generate(response_line_3) + "\n" + JSON.generate(response_line_4)
|
75
|
+
end
|
76
|
+
let(:expected_result) do
|
77
|
+
[{ "name" => "access_times.service_1", "tags" => { "code" => "200", "result" => "failure", "status" => "OK" }, "values" => [{ "time" => "2015-07-08T07:15:22Z", "value" => 327 }] },
|
78
|
+
{ "name" => "access_times.service_1", "tags" => { "code" => "500", "result" => "failure", "status" => "Internal Server Error" }, "values" => [{ "time" => "2015-07-08T06:15:22Z", "value" => 873 }] },
|
79
|
+
{ "name" => "access_times.service_2", "tags" => { "code" => "200", "result" => "failure", "status" => "OK" }, "values" => [{ "time" => "2015-07-08T07:15:22Z", "value" => 943 }] },
|
80
|
+
{ "name" => "access_times.service_2", "tags" => { "code" => "500", "result" => "failure", "status" => "Internal Server Error" }, "values" => [{ "time" => "2015-07-08T06:15:22Z", "value" => 606 }] }]
|
81
|
+
end
|
82
|
+
let(:query) { "SELECT * FROM /access_times.*/" }
|
83
|
+
|
84
|
+
it "should return array with 4 elements grouped by name and tags" do
|
85
|
+
expect(subject.query(query)).to eq(expected_result)
|
86
|
+
end
|
87
|
+
end
|
88
|
+
end
|
89
|
+
end
|
@@ -134,8 +134,7 @@ describe InfluxDB::Client do
|
|
134
134
|
"values" => [{ "time" => 1_438_580_576, "temp" => 34, "value" => 0.343443 }] },
|
135
135
|
{ "name" => "cpu", "tags" => { "region" => "us" },
|
136
136
|
"values" => [{ "time" => 1_438_612_976, "temp" => 92, "value" => 0.3445 },
|
137
|
-
{ "time" => 1_438_612_989, "temp" => 68, "value" => 0.8787 }]
|
138
|
-
}]
|
137
|
+
{ "time" => 1_438_612_989, "temp" => 68, "value" => 0.8787 }] }]
|
139
138
|
end
|
140
139
|
let(:query) { 'SELECT * FROM cpu' }
|
141
140
|
|
@@ -143,6 +142,23 @@ describe InfluxDB::Client do
|
|
143
142
|
expect(subject.query(query)).to eq(expected_result)
|
144
143
|
end
|
145
144
|
end
|
145
|
+
|
146
|
+
context "with chunk_size set to 100" do
|
147
|
+
let(:args) { { chunk_size: 100 } }
|
148
|
+
let(:extra_params) { { chunked: "true", chunk_size: "100" } }
|
149
|
+
|
150
|
+
let(:response) do
|
151
|
+
{ "results" => [{ "series" => [{ "name" => "cpu", "tags" => { "region" => "pl" }, "columns" => %w(time temp value), "values" => [[1_438_580_576, 34, 0.343443]] }] }] }
|
152
|
+
end
|
153
|
+
let(:expected_result) do
|
154
|
+
[{ "name" => "cpu", "tags" => { "region" => "pl" }, "values" => [{ "time" => 1_438_580_576, "temp" => 34, "value" => 0.343443 }] }]
|
155
|
+
end
|
156
|
+
let(:query) { 'SELECT * FROM cpu' }
|
157
|
+
|
158
|
+
it "should set 'chunked' and 'chunk_size' parameters" do
|
159
|
+
expect(subject.query(query)).to eq(expected_result)
|
160
|
+
end
|
161
|
+
end
|
146
162
|
end
|
147
163
|
|
148
164
|
describe "multiple select queries" do
|
metadata
CHANGED
@@ -1,126 +1,111 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: influxdb
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
5
|
-
prerelease:
|
4
|
+
version: 0.3.6
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Todd Persen
|
9
|
-
autorequire:
|
8
|
+
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date: 2016-
|
11
|
+
date: 2016-07-24 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
|
-
name: json
|
16
14
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
15
|
requirements:
|
19
|
-
- -
|
16
|
+
- - ">="
|
20
17
|
- !ruby/object:Gem::Version
|
21
18
|
version: '0'
|
22
|
-
|
19
|
+
name: json
|
23
20
|
prerelease: false
|
21
|
+
type: :runtime
|
24
22
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
23
|
requirements:
|
27
|
-
- -
|
24
|
+
- - ">="
|
28
25
|
- !ruby/object:Gem::Version
|
29
26
|
version: '0'
|
30
27
|
- !ruby/object:Gem::Dependency
|
31
|
-
name: cause
|
32
28
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
29
|
requirements:
|
35
|
-
- -
|
30
|
+
- - ">="
|
36
31
|
- !ruby/object:Gem::Version
|
37
32
|
version: '0'
|
38
|
-
|
33
|
+
name: cause
|
39
34
|
prerelease: false
|
35
|
+
type: :runtime
|
40
36
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
37
|
requirements:
|
43
|
-
- -
|
38
|
+
- - ">="
|
44
39
|
- !ruby/object:Gem::Version
|
45
40
|
version: '0'
|
46
41
|
- !ruby/object:Gem::Dependency
|
47
|
-
name: rake
|
48
42
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
43
|
requirements:
|
51
|
-
- -
|
44
|
+
- - ">="
|
52
45
|
- !ruby/object:Gem::Version
|
53
46
|
version: '0'
|
54
|
-
|
47
|
+
name: rake
|
55
48
|
prerelease: false
|
49
|
+
type: :development
|
56
50
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
51
|
requirements:
|
59
|
-
- -
|
52
|
+
- - ">="
|
60
53
|
- !ruby/object:Gem::Version
|
61
54
|
version: '0'
|
62
55
|
- !ruby/object:Gem::Dependency
|
63
|
-
name: bundler
|
64
56
|
requirement: !ruby/object:Gem::Requirement
|
65
|
-
none: false
|
66
57
|
requirements:
|
67
|
-
- - ~>
|
58
|
+
- - "~>"
|
68
59
|
- !ruby/object:Gem::Version
|
69
60
|
version: '1.3'
|
70
|
-
|
61
|
+
name: bundler
|
71
62
|
prerelease: false
|
63
|
+
type: :development
|
72
64
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
-
none: false
|
74
65
|
requirements:
|
75
|
-
- - ~>
|
66
|
+
- - "~>"
|
76
67
|
- !ruby/object:Gem::Version
|
77
68
|
version: '1.3'
|
78
69
|
- !ruby/object:Gem::Dependency
|
79
|
-
name: rspec
|
80
70
|
requirement: !ruby/object:Gem::Requirement
|
81
|
-
none: false
|
82
71
|
requirements:
|
83
|
-
- - ~>
|
72
|
+
- - "~>"
|
84
73
|
- !ruby/object:Gem::Version
|
85
74
|
version: 3.4.0
|
86
|
-
|
75
|
+
name: rspec
|
87
76
|
prerelease: false
|
77
|
+
type: :development
|
88
78
|
version_requirements: !ruby/object:Gem::Requirement
|
89
|
-
none: false
|
90
79
|
requirements:
|
91
|
-
- - ~>
|
80
|
+
- - "~>"
|
92
81
|
- !ruby/object:Gem::Version
|
93
82
|
version: 3.4.0
|
94
83
|
- !ruby/object:Gem::Dependency
|
95
|
-
name: webmock
|
96
84
|
requirement: !ruby/object:Gem::Requirement
|
97
|
-
none: false
|
98
85
|
requirements:
|
99
|
-
- - ~>
|
86
|
+
- - "~>"
|
100
87
|
- !ruby/object:Gem::Version
|
101
88
|
version: 1.24.2
|
102
|
-
|
89
|
+
name: webmock
|
103
90
|
prerelease: false
|
91
|
+
type: :development
|
104
92
|
version_requirements: !ruby/object:Gem::Requirement
|
105
|
-
none: false
|
106
93
|
requirements:
|
107
|
-
- - ~>
|
94
|
+
- - "~>"
|
108
95
|
- !ruby/object:Gem::Version
|
109
96
|
version: 1.24.2
|
110
97
|
- !ruby/object:Gem::Dependency
|
111
|
-
name: rubocop
|
112
98
|
requirement: !ruby/object:Gem::Requirement
|
113
|
-
none: false
|
114
99
|
requirements:
|
115
|
-
- - ~>
|
100
|
+
- - "~>"
|
116
101
|
- !ruby/object:Gem::Version
|
117
102
|
version: 0.39.0
|
118
|
-
|
103
|
+
name: rubocop
|
119
104
|
prerelease: false
|
105
|
+
type: :development
|
120
106
|
version_requirements: !ruby/object:Gem::Requirement
|
121
|
-
none: false
|
122
107
|
requirements:
|
123
|
-
- - ~>
|
108
|
+
- - "~>"
|
124
109
|
- !ruby/object:Gem::Version
|
125
110
|
version: 0.39.0
|
126
111
|
description: This is the official Ruby library for InfluxDB.
|
@@ -130,9 +115,9 @@ executables: []
|
|
130
115
|
extensions: []
|
131
116
|
extra_rdoc_files: []
|
132
117
|
files:
|
133
|
-
- .gitignore
|
134
|
-
- .rubocop.yml
|
135
|
-
- .travis.yml
|
118
|
+
- ".gitignore"
|
119
|
+
- ".rubocop.yml"
|
120
|
+
- ".travis.yml"
|
136
121
|
- CHANGELOG.md
|
137
122
|
- Gemfile
|
138
123
|
- LICENSE.txt
|
@@ -159,13 +144,14 @@ files:
|
|
159
144
|
- spec/influxdb/cases/async_client_spec.rb
|
160
145
|
- spec/influxdb/cases/query_cluster_spec.rb
|
161
146
|
- spec/influxdb/cases/query_continuous_query_spec.rb
|
162
|
-
- spec/influxdb/cases/
|
147
|
+
- spec/influxdb/cases/query_core_spec.rb
|
163
148
|
- spec/influxdb/cases/query_database_spec.rb
|
164
149
|
- spec/influxdb/cases/query_retention_policy_spec.rb
|
165
150
|
- spec/influxdb/cases/query_series_spec.rb
|
166
151
|
- spec/influxdb/cases/query_shard_space_spec.rb
|
167
152
|
- spec/influxdb/cases/query_shard_spec.rb
|
168
153
|
- spec/influxdb/cases/query_user_spec.rb
|
154
|
+
- spec/influxdb/cases/querying_issue_7000_spec.rb
|
169
155
|
- spec/influxdb/cases/querying_spec.rb
|
170
156
|
- spec/influxdb/cases/retry_requests_spec.rb
|
171
157
|
- spec/influxdb/cases/udp_client_spec.rb
|
@@ -180,45 +166,39 @@ files:
|
|
180
166
|
homepage: http://influxdb.org
|
181
167
|
licenses:
|
182
168
|
- MIT
|
183
|
-
|
169
|
+
metadata: {}
|
170
|
+
post_install_message:
|
184
171
|
rdoc_options: []
|
185
172
|
require_paths:
|
186
173
|
- lib
|
187
174
|
required_ruby_version: !ruby/object:Gem::Requirement
|
188
|
-
none: false
|
189
175
|
requirements:
|
190
|
-
- -
|
176
|
+
- - ">="
|
191
177
|
- !ruby/object:Gem::Version
|
192
178
|
version: '0'
|
193
|
-
segments:
|
194
|
-
- 0
|
195
|
-
hash: -2716499157754774119
|
196
179
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
197
|
-
none: false
|
198
180
|
requirements:
|
199
|
-
- -
|
181
|
+
- - ">="
|
200
182
|
- !ruby/object:Gem::Version
|
201
183
|
version: '0'
|
202
|
-
segments:
|
203
|
-
- 0
|
204
|
-
hash: -2716499157754774119
|
205
184
|
requirements: []
|
206
|
-
rubyforge_project:
|
207
|
-
rubygems_version:
|
208
|
-
signing_key:
|
209
|
-
specification_version:
|
185
|
+
rubyforge_project:
|
186
|
+
rubygems_version: 2.4.8
|
187
|
+
signing_key:
|
188
|
+
specification_version: 4
|
210
189
|
summary: Ruby library for InfluxDB.
|
211
190
|
test_files:
|
212
191
|
- spec/influxdb/cases/async_client_spec.rb
|
213
192
|
- spec/influxdb/cases/query_cluster_spec.rb
|
214
193
|
- spec/influxdb/cases/query_continuous_query_spec.rb
|
215
|
-
- spec/influxdb/cases/
|
194
|
+
- spec/influxdb/cases/query_core_spec.rb
|
216
195
|
- spec/influxdb/cases/query_database_spec.rb
|
217
196
|
- spec/influxdb/cases/query_retention_policy_spec.rb
|
218
197
|
- spec/influxdb/cases/query_series_spec.rb
|
219
198
|
- spec/influxdb/cases/query_shard_space_spec.rb
|
220
199
|
- spec/influxdb/cases/query_shard_spec.rb
|
221
200
|
- spec/influxdb/cases/query_user_spec.rb
|
201
|
+
- spec/influxdb/cases/querying_issue_7000_spec.rb
|
222
202
|
- spec/influxdb/cases/querying_spec.rb
|
223
203
|
- spec/influxdb/cases/retry_requests_spec.rb
|
224
204
|
- spec/influxdb/cases/udp_client_spec.rb
|