fluent-plugin-numeric-monitor 1.0.3 → 1.0.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/README.md +7 -0
- data/fluent-plugin-numeric-monitor.gemspec +1 -1
- data/lib/fluent/plugin/out_numeric_monitor.rb +2 -2
- data/test/plugin/test_out_numeric_monitor.rb +24 -0
- metadata +6 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 54803060ecc2a6fcc3217daba6cf4ac224d608d68764d873b7dfc3be036f147f
|
4
|
+
data.tar.gz: 280b8354d829caeb582c6903e98f2ac3844f8dbf6ceeef4a280ddb924d5cecda
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2277984aec060fa38d43f1f65634e5248ca40c5843de63868badf1928c1c1329638cb23a18ebd83dfe501df45005588163f707ef8bc5c9531b93cf059dea8e41
|
7
|
+
data.tar.gz: f4c278865a4ebf22d5da37b42b9552415a0cf637bff49db1ce61e167053521557faef8426871dca1b643c290c94ffb27bdc7a6a40de81bce29194b21fb646597
|
data/README.md
CHANGED
@@ -2,6 +2,13 @@
|
|
2
2
|
|
3
3
|
[Fluentd](http://fluentd.org) plugin to calculate min/max/avg/sum and specified percentile values (and 'num' of matched messages), which used in notifications (such as fluent-plugin-notifier)
|
4
4
|
|
5
|
+
## Requirements
|
6
|
+
|
7
|
+
| fluent-plugin-numeric-monitor | fluentd | ruby |
|
8
|
+
|-------------------------------|------------|--------|
|
9
|
+
| >= 1.0.0 | >= v0.14.0 | >= 2.1 |
|
10
|
+
| < 1.0.0 | < v0.14.0 | >= 1.9 |
|
11
|
+
|
5
12
|
## Configuration
|
6
13
|
|
7
14
|
### NumericMonitorOutput
|
@@ -1,7 +1,7 @@
|
|
1
1
|
# -*- encoding: utf-8 -*-
|
2
2
|
Gem::Specification.new do |gem|
|
3
3
|
gem.name = "fluent-plugin-numeric-monitor"
|
4
|
-
gem.version = "1.0.
|
4
|
+
gem.version = "1.0.4"
|
5
5
|
gem.authors = ["TAGOMORI Satoshi"]
|
6
6
|
gem.email = ["tagomoris@gmail.com"]
|
7
7
|
gem.description = %q{Fluentd plugin to calculate min/max/avg/Xpercentile values, and emit these data as message}
|
@@ -192,10 +192,10 @@ class Fluent::Plugin::NumericMonitorOutput < Fluent::Plugin::Output
|
|
192
192
|
@mutex.synchronize do
|
193
193
|
c = (@count[tag] ||= {min: nil, max: nil, sum: nil, num: 0})
|
194
194
|
|
195
|
-
if c[:min].nil? or c[:min] > min
|
195
|
+
if c[:min].nil? or (min and c[:min] > min)
|
196
196
|
c[:min] = min
|
197
197
|
end
|
198
|
-
if c[:max].nil? or c[:max] < max
|
198
|
+
if c[:max].nil? or (max and c[:max] < max)
|
199
199
|
c[:max] = max
|
200
200
|
end
|
201
201
|
c[:sum] = (c[:sum] || 0) + sum
|
@@ -404,4 +404,28 @@ class NumericMonitorOutputTest < Test::Unit::TestCase
|
|
404
404
|
assert_equal 12, r['key_prefix_sum']
|
405
405
|
assert_equal 6, r['key_prefix_num']
|
406
406
|
end
|
407
|
+
|
408
|
+
def test_emit_with_nil_values
|
409
|
+
d = create_driver(CONFIG)
|
410
|
+
d.run(default_tag: 'test.tag1') do
|
411
|
+
d.feed({'field1' => 1})
|
412
|
+
d.feed({'field1' => nil})
|
413
|
+
d.feed({'field1' => 2})
|
414
|
+
d.feed({'field1' => 3})
|
415
|
+
d.feed({'field1' => 4})
|
416
|
+
d.feed({'field1' => 5})
|
417
|
+
d.feed({'field1' => 6})
|
418
|
+
d.feed({'field1' => 7})
|
419
|
+
d.feed({'field1' => 8})
|
420
|
+
d.feed({'field1' => 9})
|
421
|
+
end
|
422
|
+
r1 = d.instance.flush
|
423
|
+
assert_equal 1, r1['tag1_min']
|
424
|
+
assert_equal 9, r1['tag1_max']
|
425
|
+
assert_equal 5, r1['tag1_avg']
|
426
|
+
assert_equal 45, r1['tag1_sum']
|
427
|
+
assert_equal 7, r1['tag1_percentile_80']
|
428
|
+
assert_equal 8, r1['tag1_percentile_90']
|
429
|
+
assert_equal 9, r1['tag1_num']
|
430
|
+
end
|
407
431
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fluent-plugin-numeric-monitor
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- TAGOMORI Satoshi
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2024-08-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|
@@ -76,7 +76,7 @@ homepage: https://github.com/tagomoris/fluent-plugin-numeric-monitor
|
|
76
76
|
licenses:
|
77
77
|
- Apache-2.0
|
78
78
|
metadata: {}
|
79
|
-
post_install_message:
|
79
|
+
post_install_message:
|
80
80
|
rdoc_options: []
|
81
81
|
require_paths:
|
82
82
|
- lib
|
@@ -91,9 +91,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
91
91
|
- !ruby/object:Gem::Version
|
92
92
|
version: '0'
|
93
93
|
requirements: []
|
94
|
-
|
95
|
-
|
96
|
-
signing_key:
|
94
|
+
rubygems_version: 3.5.3
|
95
|
+
signing_key:
|
97
96
|
specification_version: 4
|
98
97
|
summary: Fluentd plugin to calculate min/max/avg/Xpercentile values
|
99
98
|
test_files:
|