fluent-plugin-kubernetes_metadata_filter 3.7.0 → 3.7.1

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.
Files changed (41) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +2 -1
  3. data/Rakefile +3 -4
  4. data/lib/fluent/plugin/filter_kubernetes_metadata.rb +307 -279
  5. data/lib/fluent/plugin/kubernetes_metadata_cache_strategy.rb +15 -11
  6. data/lib/fluent/plugin/kubernetes_metadata_common.rb +38 -40
  7. data/lib/fluent/plugin/kubernetes_metadata_stats.rb +4 -6
  8. data/lib/fluent/plugin/kubernetes_metadata_test_api_adapter.rb +39 -36
  9. data/lib/fluent/plugin/kubernetes_metadata_watch_namespaces.rb +15 -12
  10. data/lib/fluent/plugin/kubernetes_metadata_watch_pods.rb +18 -17
  11. metadata +2 -172
  12. data/.circleci/config.yml +0 -48
  13. data/.gitignore +0 -18
  14. data/.rubocop.yml +0 -57
  15. data/Gemfile +0 -9
  16. data/Gemfile.lock +0 -172
  17. data/fluent-plugin-kubernetes_metadata_filter.gemspec +0 -34
  18. data/lib/fluent/plugin/kubernetes_metadata_util.rb +0 -33
  19. data/test/cassettes/invalid_api_server_config.yml +0 -53
  20. data/test/cassettes/kubernetes_docker_metadata_annotations.yml +0 -205
  21. data/test/cassettes/kubernetes_docker_metadata_dotted_slashed_labels.yml +0 -197
  22. data/test/cassettes/kubernetes_get_api_v1.yml +0 -193
  23. data/test/cassettes/kubernetes_get_api_v1_using_token.yml +0 -195
  24. data/test/cassettes/kubernetes_get_namespace_default.yml +0 -72
  25. data/test/cassettes/kubernetes_get_namespace_default_using_token.yml +0 -71
  26. data/test/cassettes/kubernetes_get_pod.yml +0 -146
  27. data/test/cassettes/kubernetes_get_pod_container_init.yml +0 -145
  28. data/test/cassettes/kubernetes_get_pod_using_token.yml +0 -148
  29. data/test/cassettes/kubernetes_get_pod_with_ownerrefs.yml +0 -156
  30. data/test/cassettes/metadata_from_tag_and_journald_fields.yml +0 -153
  31. data/test/cassettes/metadata_from_tag_journald_and_kubernetes_fields.yml +0 -285
  32. data/test/cassettes/valid_kubernetes_api_server.yml +0 -55
  33. data/test/cassettes/valid_kubernetes_api_server_using_token.yml +0 -57
  34. data/test/helper.rb +0 -82
  35. data/test/plugin/test.token +0 -1
  36. data/test/plugin/test_cache_stats.rb +0 -33
  37. data/test/plugin/test_cache_strategy.rb +0 -194
  38. data/test/plugin/test_filter_kubernetes_metadata.rb +0 -851
  39. data/test/plugin/test_watch_namespaces.rb +0 -245
  40. data/test/plugin/test_watch_pods.rb +0 -344
  41. data/test/plugin/watch_test.rb +0 -76
@@ -1,205 +0,0 @@
1
- #
2
- # Fluentd Kubernetes Metadata Filter Plugin - Enrich Fluentd events with
3
- # Kubernetes metadata
4
- #
5
- # Copyright 2015 Red Hat, Inc.
6
- #
7
- # Licensed under the Apache License, Version 2.0 (the "License");
8
- # you may not use this file except in compliance with the License.
9
- # You may obtain a copy of the License at
10
- #
11
- # http://www.apache.org/licenses/LICENSE-2.0
12
- #
13
- # Unless required by applicable law or agreed to in writing, software
14
- # distributed under the License is distributed on an "AS IS" BASIS,
15
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
- # See the License for the specific language governing permissions and
17
- # limitations under the License.
18
- #
19
- ---
20
- http_interactions:
21
- - request:
22
- method: get
23
- uri: https://localhost:8443/api/v1/namespaces/default/pods/fabric8-console-controller-98rqc
24
- body:
25
- encoding: US-ASCII
26
- string: ''
27
- headers:
28
- Accept:
29
- - "*/*; q=0.5, application/xml"
30
- Accept-Encoding:
31
- - gzip, deflate
32
- User-Agent:
33
- - Ruby
34
- response:
35
- status:
36
- code: 200
37
- message: OK
38
- headers:
39
- Content-Type:
40
- - application/json
41
- Date:
42
- - Fri, 08 May 2015 10:35:37 GMT
43
- Transfer-Encoding:
44
- - chunked
45
- body:
46
- encoding: UTF-8
47
- string: |-
48
- {
49
- "kind": "Pod",
50
- "apiVersion": "v1",
51
- "metadata": {
52
- "name": "fabric8-console-controller-98rqc",
53
- "generateName": "fabric8-console-controller-",
54
- "namespace": "default",
55
- "selfLink": "/api/v1/namespaces/default/pods/fabric8-console-controller-98rqc",
56
- "uid": "c76927af-f563-11e4-b32d-54ee7527188d",
57
- "resourceVersion": "122",
58
- "creationTimestamp": "2015-05-08T09:22:42Z",
59
- "labels": {
60
- "component": "fabric8Console"
61
- },
62
- "annotations": {
63
- "kubernetes.io/config.hash": "c171c44f5b9345c6dc17b0e95030318c",
64
- "kubernetes.io/config.mirror": "c171c44f5b9345c6dc17b0e95030318c",
65
- "kubernetes.io/config.seen": "2016-06-06T08:08:35.680437994Z",
66
- "kubernetes.io/config.source": "file",
67
- "custom.field1": "hello_kitty",
68
- "field.two": "value"
69
- }
70
- },
71
- "spec": {
72
- "volumes": [
73
- {
74
- "name": "openshift-cert-secrets",
75
- "hostPath": null,
76
- "emptyDir": null,
77
- "gcePersistentDisk": null,
78
- "gitRepo": null,
79
- "secret": {
80
- "secretName": "openshift-cert-secrets"
81
- },
82
- "nfs": null,
83
- "iscsi": null,
84
- "glusterfs": null
85
- }
86
- ],
87
- "containers": [
88
- {
89
- "name": "fabric8-console-container",
90
- "image": "fabric8/hawtio-kubernetes:latest",
91
- "ports": [
92
- {
93
- "containerPort": 9090,
94
- "protocol": "TCP"
95
- }
96
- ],
97
- "env": [
98
- {
99
- "name": "OAUTH_CLIENT_ID",
100
- "value": "fabric8-console"
101
- },
102
- {
103
- "name": "OAUTH_AUTHORIZE_URI",
104
- "value": "https://localhost:8443/oauth/authorize"
105
- }
106
- ],
107
- "resources": {},
108
- "volumeMounts": [
109
- {
110
- "name": "openshift-cert-secrets",
111
- "readOnly": true,
112
- "mountPath": "/etc/secret-volume"
113
- }
114
- ],
115
- "terminationMessagePath": "/dev/termination-log",
116
- "imagePullPolicy": "IfNotPresent",
117
- "capabilities": {}
118
- }
119
- ],
120
- "restartPolicy": "Always",
121
- "dnsPolicy": "ClusterFirst",
122
- "nodeName": "jimmi-redhat.localnet"
123
- },
124
- "status": {
125
- "phase": "Running",
126
- "Condition": [
127
- {
128
- "type": "Ready",
129
- "status": "True"
130
- }
131
- ],
132
- "hostIP": "172.17.42.1",
133
- "podIP": "172.17.0.8",
134
- "containerStatuses": [
135
- {
136
- "name": "fabric8-console-container",
137
- "state": {
138
- "running": {
139
- "startedAt": "2015-05-08T09:22:44Z"
140
- }
141
- },
142
- "lastState": {},
143
- "ready": true,
144
- "restartCount": 0,
145
- "image": "fabric8/hawtio-kubernetes:latest",
146
- "imageID": "docker://b2bd1a24a68356b2f30128e6e28e672c1ef92df0d9ec01ec0c7faea5d77d2303",
147
- "containerID": "docker://49095a2894da899d3b327c5fde1e056a81376cc9a8f8b09a195f2a92bceed459"
148
- }
149
- ]
150
- }
151
- }
152
- http_version:
153
- recorded_at: Fri, 08 May 2015 10:35:37 GMT
154
- - request:
155
- method: get
156
- uri: https://localhost:8443/api/v1/namespaces/default
157
- body:
158
- encoding: US-ASCII
159
- string: ''
160
- headers:
161
- Accept:
162
- - "*/*; q=0.5, application/xml"
163
- Accept-Encoding:
164
- - gzip, deflate
165
- User-Agent:
166
- - Ruby
167
- response:
168
- status:
169
- code: 200
170
- message: OK
171
- headers:
172
- Content-Type:
173
- - application/json
174
- Date:
175
- - Fri, 08 May 2015 10:35:37 GMT
176
- Transfer-Encoding:
177
- - chunked
178
- body:
179
- encoding: UTF-8
180
- string: |-
181
- {
182
- "kind": "Namespace",
183
- "apiVersion": "v1",
184
- "metadata": {
185
- "name": "default",
186
- "selfLink": "/api/v1/namespaces/default",
187
- "uid": "898268c8-4a36-11e5-9d81-42010af0194c",
188
- "resourceVersion": "6",
189
- "creationTimestamp": "2015-05-08T09:22:01Z",
190
- "annotations": {
191
- "workspaceId": "myWorkspaceName"
192
- }
193
- },
194
- "spec": {
195
- "finalizers": [
196
- "kubernetes"
197
- ]
198
- },
199
- "status": {
200
- "phase": "Active"
201
- }
202
- }
203
- http_version:
204
- recorded_at: Fri, 08 May 2015 10:35:37 GMT
205
- recorded_with: VCR 2.9.3
@@ -1,197 +0,0 @@
1
- #
2
- # Fluentd Kubernetes Metadata Filter Plugin - Enrich Fluentd events with
3
- # Kubernetes metadata
4
- #
5
- # Copyright 2015 Red Hat, Inc.
6
- #
7
- # Licensed under the Apache License, Version 2.0 (the "License");
8
- # you may not use this file except in compliance with the License.
9
- # You may obtain a copy of the License at
10
- #
11
- # http://www.apache.org/licenses/LICENSE-2.0
12
- #
13
- # Unless required by applicable law or agreed to in writing, software
14
- # distributed under the License is distributed on an "AS IS" BASIS,
15
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
- # See the License for the specific language governing permissions and
17
- # limitations under the License.
18
- #
19
- ---
20
- http_interactions:
21
- - request:
22
- method: get
23
- uri: https://localhost:8443/api/v1/namespaces/default/pods/fabric8-console-controller-98rqc
24
- body:
25
- encoding: US-ASCII
26
- string: ''
27
- headers:
28
- Accept:
29
- - "*/*; q=0.5, application/xml"
30
- Accept-Encoding:
31
- - gzip, deflate
32
- User-Agent:
33
- - Ruby
34
- response:
35
- status:
36
- code: 200
37
- message: OK
38
- headers:
39
- Content-Type:
40
- - application/json
41
- Date:
42
- - Fri, 08 May 2015 10:35:37 GMT
43
- Transfer-Encoding:
44
- - chunked
45
- body:
46
- encoding: UTF-8
47
- string: |-
48
- {
49
- "kind": "Pod",
50
- "apiVersion": "v1",
51
- "metadata": {
52
- "name": "fabric8-console-controller-98rqc",
53
- "generateName": "fabric8-console-controller-",
54
- "namespace": "default",
55
- "selfLink": "/api/v1/namespaces/default/pods/fabric8-console-controller-98rqc",
56
- "uid": "c76927af-f563-11e4-b32d-54ee7527188d",
57
- "resourceVersion": "122",
58
- "creationTimestamp": "2015-05-08T09:22:42Z",
59
- "labels": {
60
- "kubernetes.io/test": "somevalue"
61
- }
62
- },
63
- "spec": {
64
- "volumes": [
65
- {
66
- "name": "openshift-cert-secrets",
67
- "hostPath": null,
68
- "emptyDir": null,
69
- "gcePersistentDisk": null,
70
- "gitRepo": null,
71
- "secret": {
72
- "secretName": "openshift-cert-secrets"
73
- },
74
- "nfs": null,
75
- "iscsi": null,
76
- "glusterfs": null
77
- }
78
- ],
79
- "containers": [
80
- {
81
- "name": "fabric8-console-container",
82
- "image": "fabric8/hawtio-kubernetes:latest",
83
- "ports": [
84
- {
85
- "containerPort": 9090,
86
- "protocol": "TCP"
87
- }
88
- ],
89
- "env": [
90
- {
91
- "name": "OAUTH_CLIENT_ID",
92
- "value": "fabric8-console"
93
- },
94
- {
95
- "name": "OAUTH_AUTHORIZE_URI",
96
- "value": "https://localhost:8443/oauth/authorize"
97
- }
98
- ],
99
- "resources": {},
100
- "volumeMounts": [
101
- {
102
- "name": "openshift-cert-secrets",
103
- "readOnly": true,
104
- "mountPath": "/etc/secret-volume"
105
- }
106
- ],
107
- "terminationMessagePath": "/dev/termination-log",
108
- "imagePullPolicy": "IfNotPresent",
109
- "capabilities": {}
110
- }
111
- ],
112
- "restartPolicy": "Always",
113
- "dnsPolicy": "ClusterFirst",
114
- "nodeName": "jimmi-redhat.localnet"
115
- },
116
- "status": {
117
- "phase": "Running",
118
- "Condition": [
119
- {
120
- "type": "Ready",
121
- "status": "True"
122
- }
123
- ],
124
- "hostIP": "172.17.42.1",
125
- "podIP": "172.17.0.8",
126
- "containerStatuses": [
127
- {
128
- "name": "fabric8-console-container",
129
- "state": {
130
- "running": {
131
- "startedAt": "2015-05-08T09:22:44Z"
132
- }
133
- },
134
- "lastState": {},
135
- "ready": true,
136
- "restartCount": 0,
137
- "image": "fabric8/hawtio-kubernetes:latest",
138
- "imageID": "docker://b2bd1a24a68356b2f30128e6e28e672c1ef92df0d9ec01ec0c7faea5d77d2303",
139
- "containerID": "docker://49095a2894da899d3b327c5fde1e056a81376cc9a8f8b09a195f2a92bceed459"
140
- }
141
- ]
142
- }
143
- }
144
- http_version:
145
- recorded_at: Fri, 08 May 2015 10:35:37 GMT
146
- - request:
147
- method: get
148
- uri: https://localhost:8443/api/v1/namespaces/default
149
- body:
150
- encoding: US-ASCII
151
- string: ''
152
- headers:
153
- Accept:
154
- - "*/*; q=0.5, application/xml"
155
- Accept-Encoding:
156
- - gzip, deflate
157
- User-Agent:
158
- - Ruby
159
- response:
160
- status:
161
- code: 200
162
- message: OK
163
- headers:
164
- Content-Type:
165
- - application/json
166
- Date:
167
- - Fri, 08 May 2015 10:35:37 GMT
168
- Transfer-Encoding:
169
- - chunked
170
- body:
171
- encoding: UTF-8
172
- string: |-
173
- {
174
- "kind": "Namespace",
175
- "apiVersion": "v1",
176
- "metadata": {
177
- "name": "default",
178
- "selfLink": "/api/v1/namespaces/default",
179
- "uid": "898268c8-4a36-11e5-9d81-42010af0194c",
180
- "resourceVersion": "6",
181
- "creationTimestamp": "2015-05-08T09:22:01Z",
182
- "labels": {
183
- "kubernetes.io/namespacetest": "somevalue"
184
- }
185
- },
186
- "spec": {
187
- "finalizers": [
188
- "kubernetes"
189
- ]
190
- },
191
- "status": {
192
- "phase": "Active"
193
- }
194
- }
195
- http_version:
196
- recorded_at: Fri, 08 May 2015 10:35:37 GMT
197
- recorded_with: VCR 2.9.3
@@ -1,193 +0,0 @@
1
- #
2
- # Fluentd Kubernetes Metadata Filter Plugin - Enrich Fluentd events with
3
- # Kubernetes metadata
4
- #
5
- # Copyright 2015 Red Hat, Inc.
6
- #
7
- # Licensed under the Apache License, Version 2.0 (the "License");
8
- # you may not use this file except in compliance with the License.
9
- # You may obtain a copy of the License at
10
- #
11
- # http://www.apache.org/licenses/LICENSE-2.0
12
- #
13
- # Unless required by applicable law or agreed to in writing, software
14
- # distributed under the License is distributed on an "AS IS" BASIS,
15
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
- # See the License for the specific language governing permissions and
17
- # limitations under the License.
18
- #
19
- ---
20
- http_interactions:
21
- - request:
22
- method: get
23
- uri: https://localhost:8443/api/v1
24
- body:
25
- encoding: US-ASCII
26
- string: ''
27
- headers:
28
- Accept:
29
- - "*/*; q=0.5, application/xml"
30
- Accept-Encoding:
31
- - gzip, deflate
32
- User-Agent:
33
- - Ruby
34
- response:
35
- status:
36
- code: 200
37
- message: OK
38
- headers:
39
- Content-Type:
40
- - application/json
41
- Date:
42
- - Fri, 08 May 2015 10:35:37 GMT
43
- Transfer-Encoding:
44
- - chunked
45
- body:
46
- encoding: UTF-8
47
- string: |-
48
- {
49
- "kind": "APIResourceList",
50
- "groupVersion": "v1",
51
- "resources": [
52
- {
53
- "name": "bindings",
54
- "singularName": "",
55
- "namespaced": true,
56
- "kind": "Binding",
57
- "verbs": [
58
- "create"
59
- ]
60
- },
61
- {
62
- "name": "namespaces",
63
- "singularName": "",
64
- "namespaced": false,
65
- "kind": "Namespace",
66
- "verbs": [
67
- "create",
68
- "delete",
69
- "get",
70
- "list",
71
- "patch",
72
- "update",
73
- "watch"
74
- ],
75
- "shortNames": [
76
- "ns"
77
- ]
78
- },
79
- {
80
- "name": "namespaces/finalize",
81
- "singularName": "",
82
- "namespaced": false,
83
- "kind": "Namespace",
84
- "verbs": [
85
- "update"
86
- ]
87
- },
88
- {
89
- "name": "namespaces/status",
90
- "singularName": "",
91
- "namespaced": false,
92
- "kind": "Namespace",
93
- "verbs": [
94
- "get",
95
- "patch",
96
- "update"
97
- ]
98
- },
99
- {
100
- "name": "pods",
101
- "singularName": "",
102
- "namespaced": true,
103
- "kind": "Pod",
104
- "verbs": [
105
- "create",
106
- "delete",
107
- "deletecollection",
108
- "get",
109
- "list",
110
- "patch",
111
- "update",
112
- "watch"
113
- ],
114
- "shortNames": [
115
- "po"
116
- ],
117
- "categories": [
118
- "all"
119
- ]
120
- },
121
- {
122
- "name": "pods/attach",
123
- "singularName": "",
124
- "namespaced": true,
125
- "kind": "Pod",
126
- "verbs": []
127
- },
128
- {
129
- "name": "pods/binding",
130
- "singularName": "",
131
- "namespaced": true,
132
- "kind": "Binding",
133
- "verbs": [
134
- "create"
135
- ]
136
- },
137
- {
138
- "name": "pods/eviction",
139
- "singularName": "",
140
- "namespaced": true,
141
- "group": "policy",
142
- "version": "v1beta1",
143
- "kind": "Eviction",
144
- "verbs": [
145
- "create"
146
- ]
147
- },
148
- {
149
- "name": "pods/exec",
150
- "singularName": "",
151
- "namespaced": true,
152
- "kind": "Pod",
153
- "verbs": []
154
- },
155
- {
156
- "name": "pods/log",
157
- "singularName": "",
158
- "namespaced": true,
159
- "kind": "Pod",
160
- "verbs": [
161
- "get"
162
- ]
163
- },
164
- {
165
- "name": "pods/portforward",
166
- "singularName": "",
167
- "namespaced": true,
168
- "kind": "Pod",
169
- "verbs": []
170
- },
171
- {
172
- "name": "pods/proxy",
173
- "singularName": "",
174
- "namespaced": true,
175
- "kind": "Pod",
176
- "verbs": []
177
- },
178
- {
179
- "name": "pods/status",
180
- "singularName": "",
181
- "namespaced": true,
182
- "kind": "Pod",
183
- "verbs": [
184
- "get",
185
- "patch",
186
- "update"
187
- ]
188
- }
189
- ]
190
- }
191
- http_version:
192
- recorded_at: Fri, 08 May 2015 10:35:37 GMT
193
- recorded_with: VCR 2.9.3