greek_fire 0.3.0 → 0.3.1

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: fdf28be620605ec968ec44e74413f5a02ecc060f
4
- data.tar.gz: 4045fbe1bcb0acc5950de74178f2afa2e65e85b1
3
+ metadata.gz: 75f3c1d0bde4caf65baa84ac866b707f35c4811f
4
+ data.tar.gz: 810c080ede0fef5d229f04ffa49a74c73d7d34f6
5
5
  SHA512:
6
- metadata.gz: e14a8377f24478a1e5d9dfc6bd9a9ae08ed4cb3d70fc3ac5375a9e2322912de44df7bd4709aafe4fe320d96337c823d3cbe5f682a12ccfdf06c9e35d3c65501d
7
- data.tar.gz: d99259ac70047a57638779c5db568142c28003bc1d80ae4eb08b4eb1c4c5c75c2ad1a8c8aa39899354500ec0ba301b61217c23165b7ce62fab4b21d00f896681
6
+ metadata.gz: e0c2922be2c54a78ddff15bfd7c79719fa425d1122046a014ec0cf28b0340c0d3bfe7f1aa30dfc9fef7063fbf333dc0aafa9ac2265bc39695e836dd2cccb65c7
7
+ data.tar.gz: 539dbc5da98e3cf1ba72617cfacc40a8b5791754ec9186ea42916eaca5cee1004d52cb73ec4df1bbdf36ef77890523ee5c0ee1a09e5486ebea61ec7c557f4f5b
@@ -1,4 +1,7 @@
1
1
  module GreekFire
2
2
  class Counter < Measure
3
+ def to_partial_path
4
+ GreekFire::Counter._to_partial_path
5
+ end
3
6
  end
4
7
  end
@@ -1,4 +1,7 @@
1
1
  module GreekFire
2
2
  class Gauge < Measure
3
+ def to_partial_path
4
+ GreekFire::Gauge._to_partial_path
5
+ end
3
6
  end
4
7
  end
@@ -10,14 +10,22 @@ module GreekFire
10
10
  GreekFire::Metric.register(self.new(name, description: description, labels: labels, &block))
11
11
  end
12
12
 
13
+ def self.configure(&block)
14
+ block.call(config)
15
+ end
16
+
13
17
  def initialize(name, description:nil, labels:nil, &block)
14
18
  labels ||= {}
15
19
  @name = name
16
20
 
17
- @labels = {
18
- app_name: ::Rails.application.class.parent_name,
19
- app_env: Rails.env.to_s
20
- }.merge(labels)
21
+ @labels = if GreekFire::Measure.config.default_labels
22
+ {
23
+ app_name: ::Rails.application.class.parent_name,
24
+ app_env: Rails.env.to_s
25
+ }
26
+ else
27
+ { }
28
+ end.merge(labels)
21
29
 
22
30
  @description = description
23
31
  @callable = block
@@ -40,6 +48,11 @@ module GreekFire
40
48
  end
41
49
 
42
50
  private
51
+
52
+ def self.config
53
+ @config ||= OpenStruct.new(default_labels: true)
54
+ end
55
+
43
56
  def convert_label_values_to_array(labels)
44
57
  labels.inject({}) do |doc, label_name|
45
58
  label_values = label_name[1]
@@ -55,6 +68,9 @@ module GreekFire
55
68
  #thanks, internet
56
69
  attrs = hsh.values
57
70
  keys = hsh.keys
71
+
72
+ return [{}] unless attrs.size > 0
73
+
58
74
  product = attrs[0].product(*attrs[1..-1])
59
75
  product.map{ |p| Hash[keys.zip p] }
60
76
  end
@@ -1,3 +1,3 @@
1
1
  module GreekFire
2
- VERSION = '0.3.0'
2
+ VERSION = '0.3.1'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: greek_fire
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - cconstantine
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-05-17 00:00:00.000000000 Z
11
+ date: 2017-06-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec-rails