tabs 0.5.5 → 0.5.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.
- data/README.md +23 -4
- data/lib/tabs/version.rb +1 -1
- data/tabs.gemspec +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
|
-
|
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`
|
data/lib/tabs/version.rb
CHANGED
data/tabs.gemspec
CHANGED
@@ -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 "
|
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.
|
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-
|
12
|
+
date: 2013-03-09 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
|
-
name:
|
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.
|
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.
|
29
|
+
version: 3.2.12
|
30
30
|
- !ruby/object:Gem::Dependency
|
31
|
-
name:
|
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:
|
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:
|
45
|
+
version: 1.7.7
|
46
46
|
- !ruby/object:Gem::Dependency
|
47
|
-
name:
|
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:
|
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:
|
61
|
+
version: 3.0.2
|
62
62
|
- !ruby/object:Gem::Dependency
|
63
|
-
name:
|
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:
|
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:
|
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:
|
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:
|
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:
|