metricsd 0.2.5 → 0.2.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/.rvmrc +1 -1
- data/CHANGELOG.md +7 -1
- data/lib/metricsd/client.rb +24 -6
- data/lib/metricsd/version.rb +1 -1
- metadata +6 -6
data/.rvmrc
CHANGED
@@ -1 +1 @@
|
|
1
|
-
rvm use ree
|
1
|
+
rvm use ree@metricsd --create
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,9 @@
|
|
1
|
+
## 0.2.6 (September 20, 2012)
|
2
|
+
|
3
|
+
Features:
|
4
|
+
|
5
|
+
- Added Client#record_status method
|
6
|
+
|
1
7
|
## 0.2.5 (November 16, 2011)
|
2
8
|
|
3
9
|
Bugfixes:
|
@@ -46,4 +52,4 @@ Features:
|
|
46
52
|
- Splits metrics to several packets of 250 bytes or less
|
47
53
|
- Allows to specify metrics parts separator (temporary solution until all the metrics will be migrated to "." separator)
|
48
54
|
- Logs network problems to logger and never throws errors like this.
|
49
|
-
- 100% test coverage
|
55
|
+
- 100% test coverage
|
data/lib/metricsd/client.rb
CHANGED
@@ -53,7 +53,7 @@ module Metricsd
|
|
53
53
|
# number of seconds.
|
54
54
|
#
|
55
55
|
# It creates two metrics:
|
56
|
-
# * +your.metric.
|
56
|
+
# * +your.metric.status+ with counts of failed and succeded events
|
57
57
|
# * +your.metric.time+ with time statistics
|
58
58
|
#
|
59
59
|
# @param [String] metric is the metric name (like app.docs.upload)
|
@@ -75,7 +75,7 @@ module Metricsd
|
|
75
75
|
# Record succeded boolean event.
|
76
76
|
#
|
77
77
|
# It creates a single metric:
|
78
|
-
# * +your.metric.
|
78
|
+
# * +your.metric.status+ with numbers of failed and succeded events
|
79
79
|
#
|
80
80
|
# @param [String] metric is the metric name (like app.docs.upload)
|
81
81
|
# @param [Hash] opts options.
|
@@ -83,14 +83,14 @@ module Metricsd
|
|
83
83
|
# @option opts [String] :source metric source.
|
84
84
|
#
|
85
85
|
def record_success(metric, opts = {})
|
86
|
-
|
86
|
+
record_status(metric, true, opts)
|
87
87
|
end
|
88
88
|
alias :success :record_success
|
89
89
|
|
90
90
|
# Record failed boolean event.
|
91
91
|
#
|
92
92
|
# It creates a single metric:
|
93
|
-
# * +your.metric.
|
93
|
+
# * +your.metric.status+ with numbers of failed and succeded events
|
94
94
|
#
|
95
95
|
# @param [String] metric is the metric name (like app.docs.upload)
|
96
96
|
# @param [Hash] opts options.
|
@@ -98,10 +98,26 @@ module Metricsd
|
|
98
98
|
# @option opts [String] :source metric source.
|
99
99
|
#
|
100
100
|
def record_failure(metric, opts = {})
|
101
|
-
|
101
|
+
record_status(metric, false, opts)
|
102
102
|
end
|
103
103
|
alias :failure :record_failure
|
104
104
|
|
105
|
+
# Record status event (success or failure).
|
106
|
+
#
|
107
|
+
# It creates a single metric:
|
108
|
+
# * +your.metric.status+ with numbers of failed and succeded events
|
109
|
+
#
|
110
|
+
# @param [String] metric is the metric name (like app.docs.upload)
|
111
|
+
# @param [Boolean] is_success indicating whether event is successful.
|
112
|
+
# @param [Hash] opts options.
|
113
|
+
# @option opts [String] :group metrics group.
|
114
|
+
# @option opts [String] :source metric source.
|
115
|
+
#
|
116
|
+
def record_status(metric, is_success, opts = {})
|
117
|
+
record_internal({"#{metric}.status" => is_success ? 1 : -1}, opts)
|
118
|
+
end
|
119
|
+
alias :status :record_status
|
120
|
+
|
105
121
|
# Record timing info. Time should be a floating point
|
106
122
|
# number of seconds.
|
107
123
|
#
|
@@ -219,7 +235,9 @@ module Metricsd
|
|
219
235
|
# Sends a string to the MetricsD. Should never raise any network-specific
|
220
236
|
# exceptions, but log them instead, and silently return.
|
221
237
|
def safe_send(msg)
|
222
|
-
|
238
|
+
# Check if we could connect to the MetricsD
|
239
|
+
return false unless collector_socket
|
240
|
+
collector_socket.send(msg, 0)
|
223
241
|
true
|
224
242
|
rescue Errno::ECONNREFUSED => e
|
225
243
|
Metricsd.logger.error("Exception occurred while trying to send data to MetricsD (#{Metricsd.server_host}:#{Metricsd.server_port}): #{e.inspect}")
|
data/lib/metricsd/version.rb
CHANGED
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: metricsd
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
5
|
-
prerelease:
|
4
|
+
hash: 27
|
5
|
+
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 2
|
9
|
-
-
|
10
|
-
version: 0.2.
|
9
|
+
- 6
|
10
|
+
version: 0.2.6
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Dmytro Shteflyuk
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date:
|
18
|
+
date: 2012-09-20 00:00:00 -04:00
|
19
19
|
default_executable:
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|
@@ -142,7 +142,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
142
142
|
requirements: []
|
143
143
|
|
144
144
|
rubyforge_project:
|
145
|
-
rubygems_version: 1.
|
145
|
+
rubygems_version: 1.5.2
|
146
146
|
signing_key:
|
147
147
|
specification_version: 3
|
148
148
|
summary: Client library for MetricsD server
|