fluent-plugin-kubernetes-metrics 1.1.9 → 1.1.10
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +5 -5
- data/VERSION +1 -1
- data/lib/fluent/plugin/in_kubernetes_metrics.rb +37 -2
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7cba1f817de8b2ebcb68a6f96dcb0776105c9330ed7b7e6d46888bd1fe2a8290
|
4
|
+
data.tar.gz: 79b5be5e27f54edad68981e9f48f8827fe698c93584115287ea41b594591e928
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4d4fd43d51357507698126408a618d38e81d7a5a9a956a3aafe4c46521b9d95bf22d680c52fca119d9c3f236b60dcdf028368948cc258981a64e34cd0f1e4ce8
|
7
|
+
data.tar.gz: 03ff9d6abf9511af983f52c1083062bc389fd976e0baf3045609df3a81e833e8ae2c787c5078870921a76246c37f3f2e01c3e20270ba0e0ca502aaa7105d8011
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
fluent-plugin-kubernetes-metrics (1.1.
|
4
|
+
fluent-plugin-kubernetes-metrics (1.1.10)
|
5
5
|
fluentd (>= 1.9.1)
|
6
6
|
kubeclient (~> 4.6.0)
|
7
7
|
multi_json (~> 1.14.1)
|
@@ -19,7 +19,7 @@ GEM
|
|
19
19
|
docile (1.4.0)
|
20
20
|
domain_name (0.5.20190701)
|
21
21
|
unf (>= 0.0.5, < 1.0.0)
|
22
|
-
ffi (1.15.
|
22
|
+
ffi (1.15.5)
|
23
23
|
ffi-compiler (1.0.1)
|
24
24
|
ffi (>= 1.0.0)
|
25
25
|
rake
|
@@ -56,7 +56,7 @@ GEM
|
|
56
56
|
mime-types (3.4.1)
|
57
57
|
mime-types-data (~> 3.2015)
|
58
58
|
mime-types-data (3.2022.0105)
|
59
|
-
msgpack (1.4.
|
59
|
+
msgpack (1.4.4)
|
60
60
|
multi_json (1.14.1)
|
61
61
|
netrc (0.11.0)
|
62
62
|
oj (3.10.18)
|
@@ -70,7 +70,7 @@ GEM
|
|
70
70
|
mime-types (>= 1.16, < 4.0)
|
71
71
|
netrc (~> 0.8)
|
72
72
|
rexml (3.2.5)
|
73
|
-
serverengine (2.2.
|
73
|
+
serverengine (2.2.5)
|
74
74
|
sigdump (~> 0.2.2)
|
75
75
|
sigdump (0.2.4)
|
76
76
|
simplecov (0.16.1)
|
@@ -107,4 +107,4 @@ DEPENDENCIES
|
|
107
107
|
webmock (~> 3.5.1)
|
108
108
|
|
109
109
|
BUNDLED WITH
|
110
|
-
2.3.
|
110
|
+
2.3.9
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.1.
|
1
|
+
1.1.10
|
@@ -576,8 +576,42 @@ module Fluent
|
|
576
576
|
|
577
577
|
unless pod['startTime'].nil?
|
578
578
|
emit_uptime tag: tag, start_time: pod['startTime'], labels: labels
|
579
|
-
|
580
|
-
|
579
|
+
if pod['cpu'].nil?
|
580
|
+
if pod['containers'].nil? or Array(pod['containers']).empty?
|
581
|
+
log.warn "Summary API response has no pod cpu metrics information"
|
582
|
+
else
|
583
|
+
usageNanoCores = 0
|
584
|
+
usageCoreNanoSeconds = 0
|
585
|
+
time = nil
|
586
|
+
Array(pod['containers']).each do |container|
|
587
|
+
time = container['time'] unless container['time'].nil?
|
588
|
+
usageNanoCores += container['usageNanoCores']
|
589
|
+
usageCoreNanoSeconds += container['usageCoreNanoSeconds']
|
590
|
+
end
|
591
|
+
pod['cpu'] = { 'time' => time, 'usageNanoCores' => usageNanoCores, 'usageCoreNanoSeconds' => usageCoreNanoSeconds }
|
592
|
+
end
|
593
|
+
end
|
594
|
+
emit_cpu_metrics tag: tag, metrics: pod['cpu'], labels: labels unless pod['cpu'].nil?
|
595
|
+
if pod['memory'].nil?
|
596
|
+
if pod['containers'].nil? or Array(pod['containers']).empty?
|
597
|
+
log.warn "Summary API response has no pod memory metrics information"
|
598
|
+
else
|
599
|
+
Array(pod['containers']).each do |container|
|
600
|
+
time = nil
|
601
|
+
memory_metrics = {}
|
602
|
+
%w[availableBytes usageBytes workingSetBytes rssBytes pageFaults majorPageFaults].each do |name|
|
603
|
+
time = container['time'] unless container['time'].nil?
|
604
|
+
if value = metrics[name]
|
605
|
+
memory_metrics[name] = 0 if memory_metrics[name].nil?
|
606
|
+
memory_metrics[name] += value
|
607
|
+
end
|
608
|
+
end
|
609
|
+
end
|
610
|
+
memory_metrics['time'] = time
|
611
|
+
pod['memory'] = memory_metrics
|
612
|
+
end
|
613
|
+
end
|
614
|
+
emit_memory_metrics tag: tag, metrics: pod['memory'], labels: labels unless pod['memory'].nil?
|
581
615
|
emit_network_metrics tag: tag, metrics: pod['network'], labels: labels unless pod['network'].nil?
|
582
616
|
emit_fs_metrics tag: "#{tag}.ephemeral-storage", metrics: pod['ephemeral-storage'], labels: labels unless pod['ephemeral-storage'].nil?
|
583
617
|
unless pod['volume'].nil?
|
@@ -595,6 +629,7 @@ module Fluent
|
|
595
629
|
|
596
630
|
def emit_metrics(metrics)
|
597
631
|
emit_node_metrics(metrics['node']) unless metrics['node'].nil?
|
632
|
+
log.warn "Summary API received empty pods info" if (metrics['pods'].nil? or metrics['pods'].empty?)
|
598
633
|
Array(metrics['pods']).each &method(:emit_pod_metrics).curry.call(metrics['node']['nodeName']) unless metrics['pods'].nil?
|
599
634
|
end
|
600
635
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fluent-plugin-kubernetes-metrics
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.
|
4
|
+
version: 1.1.10
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Splunk Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-
|
11
|
+
date: 2022-03-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -181,5 +181,5 @@ specification_version: 4
|
|
181
181
|
summary: A fluentd input plugin that collects kubernetes cluster metrics.
|
182
182
|
test_files:
|
183
183
|
- test/helper.rb
|
184
|
-
- test/plugin/test_missing_timestamps.rb
|
185
184
|
- test/plugin/test_in_kubernetes_metrics.rb
|
185
|
+
- test/plugin/test_missing_timestamps.rb
|