vx-instrumentation 0.0.5 → 0.0.6

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: 5c90efe52d6c37274260467769f9d2d2173c012f
4
- data.tar.gz: f618f491daf83632d2921dd347f4ccf6397c5c81
3
+ metadata.gz: 56e99e02c5dae2b4ec7353e76076122226c1c71e
4
+ data.tar.gz: 854bb9c8b52c7cfd9644d591bec489e78382803b
5
5
  SHA512:
6
- metadata.gz: ee2f8b0d9090c0f8630cfb8ae062748e7565cf399a1edeb44d45dfbf58db4fdcfa329d84d669ca130cc46ba4588aa337a2304da2e921f4fa574317179ef11bb6
7
- data.tar.gz: b34b761fbd46a224a729badc1f65c5963b930049c8b4f017f14e515a5c7ce23b02025194194954e811d4773025eab512b4b4d4012b2e426d4c12f6751303d612
6
+ metadata.gz: 981b646a3a26047e37911260e05a9f6b8449a5363769205c23933b2622cf9b1cc28cc30b71ad1fb1487dd19b0e0c63e2e3ea9236ebc6a138d917d8d66da7c011
7
+ data.tar.gz: fa8fcfa4c0cde7ac633e43a7eac8c3f8b2c3ae4c1986dafa36f975dccacb8a954c1f7c865b8012ec771bf431b4f80f8e04b44a5bb9fb2994aa347ec8e90aace8
@@ -1,5 +1,6 @@
1
1
  require 'json'
2
2
  require 'logger'
3
+ require 'active_support/core_ext/hash/deep_merge'
3
4
 
4
5
  module Vx
5
6
 
@@ -75,14 +76,14 @@ module Vx
75
76
 
76
77
  case
77
78
  when msg.is_a?(Hash)
78
- values.merge! msg
79
+ values.deep_merge! msg
79
80
  when msg.respond_to?(:to_h)
80
81
  values.merge! msg.to_h
81
82
  else
82
- values.merge!(message: msg)
83
+ values.deep_merge!(message: msg)
83
84
  end
84
85
 
85
- values.merge!(severity: severity.to_s.downcase)
86
+ values.deep_merge!(severity: severity.to_s.downcase)
86
87
 
87
88
  values = make_safe_hash(values)
88
89
 
@@ -1,5 +1,5 @@
1
1
  module Vx
2
2
  module Instrumentation
3
- VERSION = "0.0.5"
3
+ VERSION = "0.0.6"
4
4
  end
5
5
  end
@@ -70,7 +70,7 @@ describe Vx::Instrumentation::Logger do
70
70
  )
71
71
  end
72
72
 
73
- it "should woth with default values" do
73
+ it "should work with default values" do
74
74
  Vx::Instrumentation.with(foo: "bar") do
75
75
  logger.info(key: "value")
76
76
  end
@@ -80,4 +80,14 @@ describe Vx::Instrumentation::Logger do
80
80
  "severity" => "info"
81
81
  )
82
82
  end
83
+
84
+ it "should work with nested default values" do
85
+ Vx::Instrumentation.with("@fields" => {a: 1}) do
86
+ logger.info("@fields" => {b: 2})
87
+ end
88
+ expect(result).to eq(
89
+ "@fields" => {"a"=>1, "b"=>2},
90
+ "severity" => "info"
91
+ )
92
+ end
83
93
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vx-instrumentation
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
4
+ version: 0.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dmitry Galinsky