fluent-plugin-fluent-plugin-json-size-limit 0.1.14 → 0.1.15

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: 5c1f2e6ac036ba52dfd968b14d7596f477a47453d7944244787a374772b3eb09
4
- data.tar.gz: ce671aa6d8e8e3d0efa565f82a57689308347bd61e5ef34acccda2cdd403e6f3
3
+ metadata.gz: 40f924059fcbebb4396efc9f677ffe7dd8b2d846a6b408c27023c604f5ac4eb7
4
+ data.tar.gz: 1f4ff05c3488fd48d1aacb5f1bf6f8087bb90d65e342f8569ca2590c2282594d
5
5
  SHA512:
6
- metadata.gz: '0782af89ef48f11fcc72109ce021c6380000eeb37342710726182ca6cfcb22111e6abf4ea3e3f30e3ebb0b0d6e36e8e437800edd698ebfe514262202f4f9f7a4'
7
- data.tar.gz: 98abef7edd4d61cc40b5d6840ecc3986316a05204aec1b8924abb94b040819127b330eafc451c05b65767c596bcb954392531b62be8f6f6002262045897364bd
6
+ metadata.gz: 118f7e2a31f67b792ad4b0470be2a783e4dcfa6a15330d6cf6af074e7f3fe3dac7ff0e6057edc0f425bd73bce5b7ca2d2b6f2162e58e3d400e6ebaa1ea2e255d
7
+ data.tar.gz: 01e25d11c7efea63c48d34e95b6ebba689d7793568c5910a2395212284a69a25c8706322579ed58f86fb8399f20afe997f8c52c66f7f9cbbb6de46183e09051c
@@ -3,7 +3,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
3
 
4
4
  Gem::Specification.new do |spec|
5
5
  spec.name = "fluent-plugin-fluent-plugin-json-size-limit"
6
- spec.version = "0.1.14"
6
+ spec.version = "0.1.15"
7
7
  spec.authors = ["Mykola Panin"]
8
8
  spec.email = ["mykola.panin@creatoriq.com"]
9
9
 
@@ -28,12 +28,11 @@ module Fluent
28
28
  end
29
29
 
30
30
  def filter(tag, time, record)
31
+ original_size = record.to_json.bytesize
31
32
  json_str = record.to_json
32
- log.debug "Original record size: #{json_str.bytesize} bytes"
33
33
 
34
- while json_str.bytesize > @max_size
34
+ if json_str.bytesize > @max_size
35
35
  sorted_fields = record.sort_by { |k, v| v.to_s.length }.reverse
36
- reduced = false
37
36
 
38
37
  sorted_fields.each do |key, value|
39
38
  next unless value.is_a?(String) && value.length > 10
@@ -45,18 +44,13 @@ module Fluent
45
44
  record[key] = value[0...new_length]
46
45
  json_str = record.to_json
47
46
 
48
- if json_str.bytesize <= @max_size
49
- log.debug "Reduced size of field '#{key}'"
50
- reduced = true
51
- break
52
- end
47
+ break if json_str.bytesize <= @max_size
53
48
  end
54
49
 
55
- break unless reduced
56
- log.debug "Intermediate record size: #{json_str.bytesize} bytes"
50
+ final_size = json_str.bytesize
51
+ log.debug "Reduced record size from #{original_size} to #{final_size} bytes"
57
52
  end
58
53
 
59
- log.debug "Final record size: #{json_str.bytesize} bytes"
60
54
  record
61
55
  end
62
56
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fluent-plugin-fluent-plugin-json-size-limit
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.14
4
+ version: 0.1.15
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mykola Panin