log_sanity 2.4.1 → 2.4.2

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0f1899030fcb64e19701a911f45edeb0db3c75e8a4059983e8e08ca7d9e47abd
4
- data.tar.gz: 5aa14ac3ed2f490f9f26e6d84de451e71b3a07ec36597283f9098cfc03d143f7
3
+ metadata.gz: 7b9982a5183d65635603c102e0788e83010c3ac1ae86cc13c68fbd5b3d65d659
4
+ data.tar.gz: e974be91e1607e9dbc4f1d73d57af78380b2fb19f3d092a06c197a02e46edc6f
5
5
  SHA512:
6
- metadata.gz: d62206dcd11f34c8c57459ffd853a2a4b5a4368e5e48030a34c846df7be696684da24025ece71ff8b689797873c0cdf647f108a1439ee5f7a3e41d1ebb1a2183
7
- data.tar.gz: 12fb61d8bd50d1d3d8bb9837209a6f93ae40b697b64fc0210f2b4a112b163c211946117f9a4e5a2e0ef471175535e950cc558c554babb6c332731a67b2c0b51c
6
+ metadata.gz: 53fe271ac8e28f66a7f50f17d40bcfbae6eec70480d8b555b8ca2ea53d36882388b921600f3d06f0295086fcc8bf8a243f46c3704acbf0614dbce8aeb11cbcae
7
+ data.tar.gz: 169c685510819a59b050187cb4848b8e13a58ac4e18b68fc22d355e47357fbd39e57c3f12e33f1bbad37970247d97e9760a10c63118f99574b1440aef7e02875
data/Gemfile CHANGED
@@ -13,3 +13,4 @@ gemspec
13
13
  # To use a debugger
14
14
  # gem 'byebug', group: [:development, :test]
15
15
 
16
+ gem 'minitest', '~> 5'
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- log_sanity (2.4.1)
4
+ log_sanity (2.4.2)
5
5
  rails (>= 7.1.2, < 8.2)
6
6
 
7
7
  GEM
@@ -82,7 +82,7 @@ GEM
82
82
  tzinfo (~> 2.0, >= 2.0.5)
83
83
  uri (>= 0.13.1)
84
84
  base64 (0.3.0)
85
- bigdecimal (4.0.0)
85
+ bigdecimal (4.0.1)
86
86
  builder (3.3.0)
87
87
  concurrent-ruby (1.3.6)
88
88
  connection_pool (3.0.2)
@@ -96,7 +96,7 @@ GEM
96
96
  i18n (1.14.7)
97
97
  concurrent-ruby (~> 1.0)
98
98
  io-console (0.8.2)
99
- irb (1.15.3)
99
+ irb (1.16.0)
100
100
  pp (>= 0.6.0)
101
101
  rdoc (>= 4.0.0)
102
102
  reline (>= 0.4.2)
@@ -114,7 +114,7 @@ GEM
114
114
  marcel (1.1.0)
115
115
  mini_mime (1.1.5)
116
116
  minitest (5.27.0)
117
- net-imap (0.6.0)
117
+ net-imap (0.6.2)
118
118
  date
119
119
  net-protocol
120
120
  net-pop (0.1.2)
@@ -135,7 +135,7 @@ GEM
135
135
  pp (0.6.3)
136
136
  prettyprint
137
137
  prettyprint (0.2.0)
138
- psych (5.3.0)
138
+ psych (5.3.1)
139
139
  date
140
140
  stringio
141
141
  racc (1.8.1)
@@ -178,16 +178,16 @@ GEM
178
178
  tsort (>= 0.2)
179
179
  zeitwerk (~> 2.6)
180
180
  rake (13.3.1)
181
- rdoc (6.17.0)
181
+ rdoc (7.0.1)
182
182
  erb
183
183
  psych (>= 4.0.0)
184
184
  tsort
185
185
  reline (0.6.3)
186
186
  io-console (~> 0.5)
187
187
  securerandom (0.4.1)
188
- stringio (3.1.9)
188
+ stringio (3.2.0)
189
189
  thor (1.4.0)
190
- timeout (0.5.0)
190
+ timeout (0.6.0)
191
191
  tsort (0.2.0)
192
192
  tzinfo (2.0.6)
193
193
  concurrent-ruby (~> 1.0)
@@ -207,6 +207,7 @@ PLATFORMS
207
207
 
208
208
  DEPENDENCIES
209
209
  log_sanity!
210
+ minitest (~> 5)
210
211
 
211
212
  BUNDLED WITH
212
213
  2.6.9
@@ -28,6 +28,9 @@ module LogSanity
28
28
  end
29
29
  msg['at'] = msg['at'].utc
30
30
  "#{msg.to_json}\n"
31
+ rescue JSON::JSONError
32
+ msg = sanitize msg
33
+ "#{msg.to_json}\n"
31
34
  end
32
35
 
33
36
  attr_writer :string_formatter
@@ -37,5 +40,18 @@ module LogSanity
37
40
  @string_formatter ||= ActiveSupport::Logger::SimpleFormatter.new
38
41
  end
39
42
 
43
+ def sanitize(obj)
44
+ case obj
45
+ when Hash
46
+ obj.transform_keys{|k| sanitize k }.transform_values{|v| sanitize v }
47
+ when Array
48
+ obj.map{|v| sanitize v }
49
+ when String
50
+ obj.dup.force_encoding('utf-8').scrub('.')
51
+ else
52
+ obj
53
+ end
54
+ end
55
+
40
56
  end
41
57
  end
@@ -1,3 +1,3 @@
1
1
  module LogSanity
2
- VERSION = '2.4.1'
2
+ VERSION = '2.4.2'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: log_sanity
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.4.1
4
+ version: 2.4.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - thomas morgan