keen-cli 0.1.3 → 0.1.4
Sign up to get free protection for your applications and to get access to all the features.
- data/README.md +8 -1
- data/lib/keen-cli/cli.rb +11 -0
- data/lib/keen-cli/version.rb +1 -1
- data/spec/keen-cli/cli_spec.rb +22 -0
- metadata +3 -2
data/README.md
CHANGED
@@ -141,7 +141,9 @@ Parameters:
|
|
141
141
|
+ `--analysis-type` (alias -a)
|
142
142
|
+ `--group-by` (alias -g)
|
143
143
|
+ `--target-property` (alias -y)
|
144
|
-
+ `--timeframe` (alias -t)
|
144
|
+
+ `--timeframe` (alias -t) - A relative timeframe, e.g. `last_60_minutes`
|
145
|
+
+ `--start` (alias -s) - The start time of an absolute timeframe
|
146
|
+
+ `--end` (alias -e) - The end time of an absolute timeframe
|
145
147
|
+ `--interval` (alias -i)
|
146
148
|
+ `--filters` (alias -f)
|
147
149
|
+ `--percentile`
|
@@ -184,6 +186,10 @@ $ keen queries:run --collection cli-tests --analysis-type median --target-proper
|
|
184
186
|
...
|
185
187
|
...
|
186
188
|
|
189
|
+
# run a query with an absolute timeframe
|
190
|
+
$ keen queries:run --analysis-type count --start 2014-07-01T00:00:00Z --end 2014-07-31T23:59:59Z
|
191
|
+
1000
|
192
|
+
|
187
193
|
# run an extraction with specific property names
|
188
194
|
$ keen queries:run --collection minecraft-deaths --analysis-type extraction --property-names player,enemy
|
189
195
|
[
|
@@ -218,6 +224,7 @@ Run `keen` with no arguments to see the full list of aliases.
|
|
218
224
|
|
219
225
|
### Changelog
|
220
226
|
|
227
|
+
+ 0.1.4 – Support absolute timeframes via `--start` and `--end` flags
|
221
228
|
+ 0.1.3 – Add querying via JSON. Add query aliases. Add support for extraction fields.
|
222
229
|
+ 0.1.2 – Change `project:show` to `project:describe`
|
223
230
|
+ 0.1.1 – Add `project:collections`
|
data/lib/keen-cli/cli.rb
CHANGED
@@ -35,6 +35,8 @@ module KeenCli
|
|
35
35
|
option :"property-names"
|
36
36
|
option :latest
|
37
37
|
option :email
|
38
|
+
option :start, :aliases => ['s']
|
39
|
+
option :end, :aliases => ['e']
|
38
40
|
end
|
39
41
|
|
40
42
|
desc 'version', 'Print the keen-cli version'
|
@@ -142,6 +144,15 @@ module KeenCli
|
|
142
144
|
q_options[:property_names] = property_names.split(",")
|
143
145
|
end
|
144
146
|
|
147
|
+
if start_time = q_options.delete("start")
|
148
|
+
q_options[:timeframe] = { :start => start_time }
|
149
|
+
end
|
150
|
+
|
151
|
+
if end_time = q_options.delete("end")
|
152
|
+
q_options[:timeframe] = q_options[:timeframe] || {}
|
153
|
+
q_options[:timeframe][:end] = end_time
|
154
|
+
end
|
155
|
+
|
145
156
|
raise "No analysis type given!" unless analysis_type
|
146
157
|
raise "No collection given!" unless collection
|
147
158
|
|
data/lib/keen-cli/version.rb
CHANGED
data/spec/keen-cli/cli_spec.rb
CHANGED
@@ -103,6 +103,28 @@ describe KeenCli::CLI do
|
|
103
103
|
_, options = start 'queries:run --analysis-type count --data {"event_collection":"minecraft-deaths"}'
|
104
104
|
expect(_).to eq(10)
|
105
105
|
end
|
106
|
+
|
107
|
+
it 'converts a start parameter into an absolute timeframe' do
|
108
|
+
url = "https://api.keen.io/3.0/projects/#{project_id}/queries/count?event_collection=minecraft-deaths&timeframe=%7B%22start%22:%222014-07-06T12:00:00Z%22%7D"
|
109
|
+
stub_request(:get, url).to_return(:body => { :result => 10 }.to_json)
|
110
|
+
_, options = start 'queries:run --collection minecraft-deaths --analysis-type count --start 2014-07-06T12:00:00Z'
|
111
|
+
expect(_).to eq(10)
|
112
|
+
end
|
113
|
+
|
114
|
+
it 'converts an end parameter into an absolute timeframe' do
|
115
|
+
url = "https://api.keen.io/3.0/projects/#{project_id}/queries/count?event_collection=minecraft-deaths&timeframe=%7B%22end%22:%222014-07-06T12:00:00Z%22%7D"
|
116
|
+
stub_request(:get, url).to_return(:body => { :result => 10 }.to_json)
|
117
|
+
_, options = start 'queries:run --collection minecraft-deaths --analysis-type count --end 2014-07-06T12:00:00Z'
|
118
|
+
expect(_).to eq(10)
|
119
|
+
end
|
120
|
+
|
121
|
+
it 'converts start and end parameters into an absolute timeframe' do
|
122
|
+
url = "https://api.keen.io/3.0/projects/#{project_id}/queries/count?event_collection=minecraft-deaths&timeframe=%7B%22start%22:%222014-07-06T12:00:00Z%22,%22end%22:%222014-07-08T12:00:00Z%22%7D"
|
123
|
+
stub_request(:get, url).to_return(:body => { :result => 10 }.to_json)
|
124
|
+
_, options = start 'queries:run --collection minecraft-deaths --analysis-type count --start 2014-07-06T12:00:00Z --end 2014-07-08T12:00:00Z'
|
125
|
+
expect(_).to eq(10)
|
126
|
+
end
|
127
|
+
|
106
128
|
end
|
107
129
|
|
108
130
|
describe "queries:run aliases" do
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: keen-cli
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.4
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2014-07-
|
12
|
+
date: 2014-07-20 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: keen
|
@@ -172,3 +172,4 @@ summary: Command line interface to Keen IO
|
|
172
172
|
test_files:
|
173
173
|
- spec/keen-cli/cli_spec.rb
|
174
174
|
- spec/spec_helper.rb
|
175
|
+
has_rdoc:
|