tabs 0.5.5 → 0.5.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (4) hide show
  1. data/README.md +23 -4
  2. data/lib/tabs/version.rb +1 -1
  3. data/tabs.gemspec +4 -4
  4. metadata +19 -18
data/README.md CHANGED
@@ -27,8 +27,9 @@ Metrics come in two flavors: counters and values.
27
27
  A counter metric simply records the number of events that occur within a given timeframe. To create a counter metric called ‘website-visits’, simply call:
28
28
 
29
29
  Tabs.create_metric(“website-visits”, “counter”)
30
-
31
- This will set up the metric in the database.
30
+
31
+ Tabs will also create a counter metric automatically the first time you
32
+ increment the counter.
32
33
 
33
34
  To increment a metric counter, simply call:
34
35
 
@@ -60,11 +61,14 @@ The `Time` keys are also normalized. For example, in hour resolution, the minut
60
61
 
61
62
  Value metrics take a value and record the min, max, avg, and sum for a given time resolution. Creating a value metric is easy:
62
63
 
63
- Tabs.create_metric(“new-user-age”, “value”)
64
-
65
64
  To record a value, simply call `Tabs#record_value`.
66
65
 
67
66
  Tabs.record_value(“new-user-age”, 32)
67
+
68
+ This will also create a value metric the first time, you can manually create
69
+ a metric as well:
70
+
71
+ Tabs.create_metric("new-user-age", "value")
68
72
 
69
73
  Retrieving the stats for a value metric is just like retrieving a counter metric.
70
74
 
@@ -87,6 +91,21 @@ When tabs increments a counter or records a value it does so for each of the fol
87
91
 
88
92
  It automatically aggregates multiple events for the same period. For instance when you increment a counter metric, 1 will be added for each of the resolutions for the current time. Repeating the event 5 minutes later will increment a different minute slot, but the same hour, date, week, etc. When you retrieve metrics, all timestamps will be in UTC.
89
93
 
94
+ ### Inspecting Metrics
95
+
96
+ You can list all metrics using `list_metrics`:
97
+
98
+ Tabs.list_metrics #=> ["website-visits", "new-user-age"]
99
+
100
+ You can check a metric's type (counter of value) by calling
101
+ `metric_type`:
102
+
103
+ Tabs.metric_type("website-visits") #=> "counter"
104
+
105
+ And you can quickly check if a metric exists:
106
+
107
+ Tabs.metric_exists?("foobar") #=> false
108
+
90
109
  ### Drop a Metric
91
110
 
92
111
  To drop a metric, just call `Tabs#drop_metric`
@@ -1,3 +1,3 @@
1
1
  module Tabs
2
- VERSION = "0.5.5"
2
+ VERSION = "0.5.6"
3
3
  end
@@ -18,14 +18,14 @@ Gem::Specification.new do |gem|
18
18
  gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
19
19
  gem.require_paths = ["lib"]
20
20
 
21
- gem.add_dependency "redis", "~> 3.0.2"
22
- gem.add_dependency "activesupport", "~> 3.2.11"
21
+ gem.add_dependency "activesupport", ">= 3.2.12"
23
22
  gem.add_dependency "json", "~> 1.7.7"
23
+ gem.add_dependency "redis", "~> 3.0.2"
24
24
 
25
+ gem.add_development_dependency "fakeredis"
25
26
  gem.add_development_dependency "pry"
27
+ gem.add_development_dependency "rake"
26
28
  gem.add_development_dependency "rspec"
27
- gem.add_development_dependency "fakeredis"
28
29
  gem.add_development_dependency "timecop"
29
- gem.add_development_dependency "rake"
30
30
 
31
31
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tabs
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.5
4
+ version: 0.5.6
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,32 +9,32 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-02-24 00:00:00.000000000 Z
12
+ date: 2013-03-09 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
- name: redis
15
+ name: activesupport
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
- - - ~>
19
+ - - ! '>='
20
20
  - !ruby/object:Gem::Version
21
- version: 3.0.2
21
+ version: 3.2.12
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
25
25
  none: false
26
26
  requirements:
27
- - - ~>
27
+ - - ! '>='
28
28
  - !ruby/object:Gem::Version
29
- version: 3.0.2
29
+ version: 3.2.12
30
30
  - !ruby/object:Gem::Dependency
31
- name: activesupport
31
+ name: json
32
32
  requirement: !ruby/object:Gem::Requirement
33
33
  none: false
34
34
  requirements:
35
35
  - - ~>
36
36
  - !ruby/object:Gem::Version
37
- version: 3.2.11
37
+ version: 1.7.7
38
38
  type: :runtime
39
39
  prerelease: false
40
40
  version_requirements: !ruby/object:Gem::Requirement
@@ -42,15 +42,15 @@ dependencies:
42
42
  requirements:
43
43
  - - ~>
44
44
  - !ruby/object:Gem::Version
45
- version: 3.2.11
45
+ version: 1.7.7
46
46
  - !ruby/object:Gem::Dependency
47
- name: json
47
+ name: redis
48
48
  requirement: !ruby/object:Gem::Requirement
49
49
  none: false
50
50
  requirements:
51
51
  - - ~>
52
52
  - !ruby/object:Gem::Version
53
- version: 1.7.7
53
+ version: 3.0.2
54
54
  type: :runtime
55
55
  prerelease: false
56
56
  version_requirements: !ruby/object:Gem::Requirement
@@ -58,9 +58,9 @@ dependencies:
58
58
  requirements:
59
59
  - - ~>
60
60
  - !ruby/object:Gem::Version
61
- version: 1.7.7
61
+ version: 3.0.2
62
62
  - !ruby/object:Gem::Dependency
63
- name: pry
63
+ name: fakeredis
64
64
  requirement: !ruby/object:Gem::Requirement
65
65
  none: false
66
66
  requirements:
@@ -76,7 +76,7 @@ dependencies:
76
76
  - !ruby/object:Gem::Version
77
77
  version: '0'
78
78
  - !ruby/object:Gem::Dependency
79
- name: rspec
79
+ name: pry
80
80
  requirement: !ruby/object:Gem::Requirement
81
81
  none: false
82
82
  requirements:
@@ -92,7 +92,7 @@ dependencies:
92
92
  - !ruby/object:Gem::Version
93
93
  version: '0'
94
94
  - !ruby/object:Gem::Dependency
95
- name: fakeredis
95
+ name: rake
96
96
  requirement: !ruby/object:Gem::Requirement
97
97
  none: false
98
98
  requirements:
@@ -108,7 +108,7 @@ dependencies:
108
108
  - !ruby/object:Gem::Version
109
109
  version: '0'
110
110
  - !ruby/object:Gem::Dependency
111
- name: timecop
111
+ name: rspec
112
112
  requirement: !ruby/object:Gem::Requirement
113
113
  none: false
114
114
  requirements:
@@ -124,7 +124,7 @@ dependencies:
124
124
  - !ruby/object:Gem::Version
125
125
  version: '0'
126
126
  - !ruby/object:Gem::Dependency
127
- name: rake
127
+ name: timecop
128
128
  requirement: !ruby/object:Gem::Requirement
129
129
  none: false
130
130
  requirements:
@@ -203,3 +203,4 @@ test_files:
203
203
  - spec/lib/tabs/metrics/value_spec.rb
204
204
  - spec/lib/tabs_spec.rb
205
205
  - spec/spec_helper.rb
206
+ has_rdoc: