snowagent 0.2.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 46ee176b939a8376cd1986692d51f20e0ff97cd2
4
- data.tar.gz: 7b47e4f373d6befbc0485e261e3a37dfeb95657b
3
+ metadata.gz: 0dd76e5480c4f0a063af3421d227cae35de0daef
4
+ data.tar.gz: 3a53f53f59310a9317e8afaaf73d5fa82e3f3c3f
5
5
  SHA512:
6
- metadata.gz: c424cd1fbd4f6bca0b7df13eacb5b2d795dc8f4ca6b4b5c3d854e4002018ecd753625f83d3e4ca35568665a516073b744cd9bc7bbf4c87df94e09081c70db22a
7
- data.tar.gz: 32754cc322446167f9cdfc9d6a069e2d3602a9fcbbd5582422ecc1ccfa8e25db8e9e74c20ed0dd9e9ed43c02d3295b88665bffc3e53a037b1ef87ddbe75aff8c
6
+ metadata.gz: ddc6926a5f238d2afe8de2ca6ba288ea7cfb9db5f2ec144bbf11c594c4c2ce1925dd3ab816aef82f7fa49df378ac3a0972ebe7258ca695d87e24008ff555f808
7
+ data.tar.gz: 85ca43454d8d1329999cb2e28eb6db6bea9e1cf9c01ea1d30a0f7c4d5a4d6cb49a514a3084a3aa5b46f8a5f56d9f3d36b2023cb09dd2dd54e7fe469d6051c524
@@ -1,5 +1,8 @@
1
1
  # SnowAgent
2
2
 
3
+ Version 0.3.0 - 2015.12.05
4
+ - Add context support
5
+
3
6
  Version 0.2.0 - 2015.09.13
4
7
  - Use Rails logger whether available
5
8
 
data/README.md CHANGED
@@ -25,14 +25,22 @@ Code examples:
25
25
  ``` ruby
26
26
  # In controller
27
27
  SnowAgent.delay.increment("User Login")
28
+ SnowAgent.delay.increment("User Login", 1, user_id: user.id)
28
29
 
29
30
  # In scheduled task
30
31
  SnowAgent.time("Task Time") do
31
32
  # time consumed calculations
32
33
  end
33
34
 
34
- # Some custom metric
35
- SnowAgent.metric("Sessions Amount", Session.alive.count, "amount")
35
+ # Custom metric
36
+ SnowAgent.amount("Sessions Amount", Session.alive.count)
37
+ ```
38
+
39
+ ## Testing
40
+
41
+ ``` ruby
42
+ SNOWMANIO_SERVER=<server> SNOWMANIO_SECRET_TOKEN=<token> bundle exec ruby -e \
43
+ 'require "snowagent"; SnowAgent.increment("User Login", 1, user_id: 123)'
36
44
  ```
37
45
 
38
46
  ## Contributing
@@ -41,15 +41,19 @@ module SnowAgent
41
41
  nil
42
42
  end
43
43
 
44
- def time(key)
44
+ def time(key, context = nil)
45
45
  start = Time.now
46
46
  result = yield
47
- metric(key, ((Time.now - start) * 1000).round, "time")
47
+ metric(key, ((Time.now - start) * 1000).round, "time", context)
48
48
  result
49
49
  end
50
50
 
51
- def increment(key, value = 1)
52
- metric(key, value, "counter")
51
+ def increment(key, value = 1, context = nil)
52
+ metric(key, value, "counter", context)
53
+ end
54
+
55
+ def amount(key, value, context = nil)
56
+ metric(key, value, "amount", context)
53
57
  end
54
58
 
55
59
  def configure
@@ -5,10 +5,10 @@ module SnowAgent
5
5
  @strategy = strategy_class.new(configuration)
6
6
  end
7
7
 
8
- Metric = Struct.new(:name, :value, :kind, :at)
8
+ Metric = Struct.new(:name, :value, :kind, :context, :at)
9
9
 
10
- def metric(key, value, kind = nil, time = Time.now.to_i)
11
- @strategy.metric(Metric.new(key, value, kind, time))
10
+ def metric(key, value, kind = nil, context = nil, time = Time.now.to_i)
11
+ @strategy.metric(Metric.new(key, value, kind, context, time))
12
12
  end
13
13
  end
14
14
  end
@@ -1,3 +1,3 @@
1
1
  module SnowAgent
2
- VERSION = "0.2.0"
2
+ VERSION = "0.3.0"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: snowagent
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alexey Vakhov
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2015-09-13 00:00:00.000000000 Z
12
+ date: 2015-12-05 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler