fluent-plugin-ecs-filter 0.1.1 → 0.1.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,7 @@
1
1
  ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- NjlmYzBiMzUyMGIzM2U4NWNhZTc2NjcyOGQ4ZTg4ZjUyZWYwMzUxYQ==
5
- data.tar.gz: !binary |-
6
- YTZhZmRlZjllZGU2ODg5YzkwOTU5Y2Y4MjkxNWI2NzhhY2EzNWViZg==
2
+ SHA1:
3
+ metadata.gz: 870c7320a3a0ab7bcd25e0d0993782b57fac0d5c
4
+ data.tar.gz: 77884fb5c55b9116e43153ab297ca930a6cc4b0e
7
5
  SHA512:
8
- metadata.gz: !binary |-
9
- YTRkYjFkYjhjMTU0MDk3NjYyYzJlYjM5MWNkOTc2NWIyOGU4ZTQ4YjVkZmQy
10
- NGU0NjcwZWQzNTY5NWNhZDU1NTRiMjExMjNjNDZhMWViY2MzZTc1NzYzZWI1
11
- MTQyYWQ5NjU1YzQxOTdlZWQ1NjY5YWY4Y2JhNGQ0NWFlZjJlMjY=
12
- data.tar.gz: !binary |-
13
- MWE1OWY4ZTBlYTZlNDE3N2Y0OGE0OWMzYWM5YmY0YjNkN2RiMWI0MjMyZDJi
14
- NDdjZmJkZDU0Yjc3OWY2YWZjZWFhMmRmY2JjZWRlYWRjMGIwYzJhMTkwMzU4
15
- MDQ1NTNjNTEyZTc5YjRkOGFiYmY4YTY5ZjUwODYyYWRjZThmM2Y=
6
+ metadata.gz: e1c21c6622bbb7fdb830273f670247f9f148332e95e066370cecf6d2ea07b44e4b9b4ea21662eb6e163a8040975bd056e96b6a45834593e8e3892681016e1993
7
+ data.tar.gz: de48c880efda52ef855817b89ba7d229da16837d37582d5bfeaf433cf9b6208857798e397d7b6b295fb0dbcf0aa90f0481b302b495c582dd4521dbf6fbac2d41
@@ -1 +1 @@
1
- 1.9.3-p551
1
+ 2.3.3
@@ -1,7 +1,6 @@
1
1
  language: ruby
2
2
  rvm:
3
- - 2.1.7
4
- - 1.9.3-p551
3
+ - 2.3.3
5
4
  addons:
6
5
  code_climate:
7
6
  repo_token:
@@ -4,7 +4,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
4
 
5
5
  Gem::Specification.new do |gem|
6
6
  gem.name = 'fluent-plugin-ecs-filter'
7
- gem.version = '0.1.1'
7
+ gem.version = '0.1.2'
8
8
  gem.authors = ['Joseph Hughes']
9
9
  gem.email = ['jjhughes57@gmail.com']
10
10
  gem.description = 'Filter plugin to add AWS ECS metadata'
@@ -22,10 +22,12 @@ Gem::Specification.new do |gem|
22
22
 
23
23
  gem.add_runtime_dependency 'fluentd', '>= 0.10.43'
24
24
  gem.add_runtime_dependency 'lru_redux', '~> 1.1'
25
- gem.add_runtime_dependency 'docker-api', '~> 1.28'
26
- gem.add_runtime_dependency 'oj', '>= 2.15.1'
25
+ gem.add_runtime_dependency 'docker-api', '~> 1.33', '>= 1.33.3'
26
+ gem.add_runtime_dependency 'oj', '>= 2.18.5'
27
+ gem.add_runtime_dependency 'vine', '~> 0.2'
27
28
 
28
29
  gem.add_development_dependency 'bundler'
30
+ gem.add_development_dependency 'test-unit'
29
31
  gem.add_development_dependency 'codeclimate-test-reporter'
30
32
  gem.add_development_dependency 'rake'
31
33
  gem.add_development_dependency 'webmock'
@@ -23,7 +23,7 @@ module Fluent
23
23
 
24
24
  config_param :cache_size, :integer, default: 1000
25
25
  config_param :cache_ttl, :integer, default: 60 * 60
26
- config_param :container_id_attr, :string, default: 'container_id'
26
+ config_param :container_id_attr, :string, default: nil
27
27
  config_param :task_family_prepend, :string, default: nil
28
28
  config_param :merge_json_log, :bool, default: true
29
29
 
@@ -35,6 +35,7 @@ module Fluent
35
35
  require 'lru_redux'
36
36
  require 'oj'
37
37
  require 'time'
38
+ require 'vine'
38
39
 
39
40
  @cache_ttl = :none if @cache_ttl < 0
40
41
 
@@ -45,12 +46,21 @@ module Fluent
45
46
  # into the fluentd envent stream.
46
47
  def filter_stream(tag, es)
47
48
  new_es = MultiEventStream.new
49
+ container_id_from_tag = nil
48
50
 
49
- container_id = get_container_id_from_tag(tag)
51
+ if container_id_attr.nil?
52
+ container_id_from_tag = get_container_id_from_tag(tag)
53
+ end
50
54
 
51
55
  es.each do |time, record|
52
- container_id =
53
- get_container_id_from_record(record) if container_id.empty?
56
+ #puts "OMG #{container_id_from_tag}"
57
+ if container_id_from_tag.nil?
58
+ puts "GETTING FROM RECORD"
59
+ container_id = get_container_id_from_record(record)
60
+ puts "GOT CONTAINER ID #{container_id} from record"
61
+ else
62
+ container_id = container_id_from_tag
63
+ end
54
64
  next unless container_id
55
65
  new_es.add(time, modify_record(record, get_ecs_data(container_id)))
56
66
  end
@@ -125,7 +135,7 @@ module Fluent
125
135
  # ==== Returns:
126
136
  # * A docker container id
127
137
  def get_container_id_from_record(record)
128
- record[@container_id_attr]
138
+ record.access(@container_id_attr)
129
139
  end
130
140
 
131
141
  # Look at the log value and if it is valid json then we will parse the json
@@ -143,7 +143,7 @@
143
143
  "com.amazonaws.ecs.container-name" :"unifi-video",
144
144
  "com.amazonaws.ecs.task-arn" : "arn:aws:ecs:us-west-2:111600242540:task/fdb86b4f-b919-4a65-89eb-4b3761eb8952",
145
145
  "com.amazonaws.ecs.task-definition-family" : "unifi-video",
146
- "com.amazonaws.ecs.task-definition-version" :"9",
146
+ "com.amazonaws.ecs.task-definition-version" :"9",
147
147
  "Description": "Fluentd docker image",
148
148
  "Vendor": "Fluent Organization",
149
149
  "Version": "1.0",
@@ -0,0 +1,192 @@
1
+ {
2
+ "Id": "foobar1234",
3
+ "Created": "2015-11-26T06:57:56.560006039Z",
4
+ "Path": "/bin/sh",
5
+ "Args": [
6
+ "-c",
7
+ "exec fluentd -c /fluentd/etc/$FLUENTD_CONF -p /fluentd/plugins $FLUENTD_OPT"
8
+ ],
9
+ "State": {
10
+ "Status": "running",
11
+ "Running": true,
12
+ "Paused": false,
13
+ "Restarting": false,
14
+ "OOMKilled": false,
15
+ "Dead": false,
16
+ "Pid": 6563,
17
+ "ExitCode": 0,
18
+ "Error": "",
19
+ "StartedAt": "2015-11-26T07:00:45.707356204Z",
20
+ "FinishedAt": "2015-11-26T07:00:43.278299772Z"
21
+ },
22
+ "Image": "7cd5efd43c5097c8e6a9b6bdc050f887e0e1dee49a79b7eb920e2d741c36b3b5",
23
+ "ResolvConfPath": "/mnt/sda1/var/lib/docker/containers/110e3bd749e33e3b55bb55bec44a192457d722607afb1e6423e6a45a1c1e8b45/resolv.conf",
24
+ "HostnamePath": "/mnt/sda1/var/lib/docker/containers/110e3bd749e33e3b55bb55bec44a192457d722607afb1e6423e6a45a1c1e8b45/hostname",
25
+ "HostsPath": "/mnt/sda1/var/lib/docker/containers/110e3bd749e33e3b55bb55bec44a192457d722607afb1e6423e6a45a1c1e8b45/hosts",
26
+ "LogPath": "/mnt/sda1/var/lib/docker/containers/110e3bd749e33e3b55bb55bec44a192457d722607afb1e6423e6a45a1c1e8b45/110e3bd749e33e3b55bb55bec44a192457d722607afb1e6423e6a45a1c1e8b45-json.log",
27
+ "Name": "/fluentddockertest_fluentd_server_1",
28
+ "RestartCount": 0,
29
+ "Driver": "aufs",
30
+ "ExecDriver": "native-0.2",
31
+ "MountLabel": "",
32
+ "ProcessLabel": "",
33
+ "AppArmorProfile": "",
34
+ "ExecIDs": null,
35
+ "HostConfig": {
36
+ "Binds": [
37
+ "/Users/A658307/fluentd_docker_test/fluentd/etc:/fluentd/etc:rw",
38
+ "/Users/A658307/fluentd_docker_test/fluentd/logs:/fluentd/log:rw",
39
+ "/Users/A658307/fluentd_docker_test/fluentd/plugins:/fluentd/plugins:rw"
40
+ ],
41
+ "ContainerIDFile": "",
42
+ "LxcConf": null,
43
+ "Memory": 0,
44
+ "MemoryReservation": 0,
45
+ "MemorySwap": 0,
46
+ "KernelMemory": 0,
47
+ "CpuShares": 0,
48
+ "CpuPeriod": 0,
49
+ "CpusetCpus": "",
50
+ "CpusetMems": "",
51
+ "CpuQuota": 0,
52
+ "BlkioWeight": 0,
53
+ "OomKillDisable": false,
54
+ "MemorySwappiness": null,
55
+ "Privileged": false,
56
+ "PortBindings": {
57
+ "24224/tcp": [{
58
+ "HostIp": "",
59
+ "HostPort": "24224"
60
+ }]
61
+ },
62
+ "Links": null,
63
+ "PublishAllPorts": false,
64
+ "Dns": null,
65
+ "DnsOptions": null,
66
+ "DnsSearch": null,
67
+ "ExtraHosts": [],
68
+ "VolumesFrom": [],
69
+ "Devices": null,
70
+ "NetworkMode": "default",
71
+ "IpcMode": "",
72
+ "PidMode": "",
73
+ "UTSMode": "",
74
+ "CapAdd": null,
75
+ "CapDrop": null,
76
+ "GroupAdd": null,
77
+ "RestartPolicy": {
78
+ "Name": "",
79
+ "MaximumRetryCount": 0
80
+ },
81
+ "SecurityOpt": null,
82
+ "ReadonlyRootfs": false,
83
+ "Ulimits": null,
84
+ "LogConfig": {
85
+ "Type": "json-file",
86
+ "Config": {}
87
+ },
88
+ "CgroupParent": "",
89
+ "ConsoleSize": [
90
+ 0,
91
+ 0
92
+ ],
93
+ "VolumeDriver": ""
94
+ },
95
+ "GraphDriver": {
96
+ "Name": "aufs",
97
+ "Data": null
98
+ },
99
+ "Volumes": {
100
+ "/fluentd/etc": "/Users/A658307/fluentd_docker_test/fluentd/etc",
101
+ "/fluentd/log": "/Users/A658307/fluentd_docker_test/fluentd/logs",
102
+ "/fluentd/plugins": "/Users/A658307/fluentd_docker_test/fluentd/plugins"
103
+ },
104
+ "VolumesRW": {
105
+ "/fluentd/etc": true,
106
+ "/fluentd/log": true,
107
+ "/fluentd/plugins": true
108
+ },
109
+ "Config": {
110
+ "Hostname": "110e3bd749e3",
111
+ "Domainname": "",
112
+ "User": "ubuntu",
113
+ "AttachStdin": false,
114
+ "AttachStdout": false,
115
+ "AttachStderr": false,
116
+ "Tty": false,
117
+ "OpenStdin": false,
118
+ "StdinOnce": false,
119
+ "Env": [
120
+ "FLUENTD_OPT=-vv",
121
+ "MESOS_TASK_ID=hello-world.14b0596d-93ea-11e5-a134-124eefe69197",
122
+ "MARATHON_APP_ID=/hello-world",
123
+ "FLUENTD_CONF=test.conf",
124
+ "PATH=/home/ubuntu/ruby/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
125
+ "FLUENTD_OPT=",
126
+ "NAMESPACE=ns"
127
+ ],
128
+ "Cmd": [
129
+ "/bin/sh",
130
+ "-c",
131
+ "exec fluentd -c /fluentd/etc/$FLUENTD_CONF -p /fluentd/plugins $FLUENTD_OPT"
132
+ ],
133
+ "Image": "fluent/fluentd:latest",
134
+ "Volumes": {
135
+ "/fluentd/etc": {},
136
+ "/fluentd/log": {},
137
+ "/fluentd/plugins": {}
138
+ },
139
+ "WorkingDir": "/home/ubuntu",
140
+ "Entrypoint": null,
141
+ "OnBuild": null,
142
+ "Labels": {
143
+ "com.amazonaws.ecs.container-name" :"unifi-video",
144
+ "com.amazonaws.ecs.task-arn" : "arn:aws:ecs:us-west-2:111600242540:task/fdb86b4f-b919-4a65-89eb-4b3761eb8952",
145
+ "com.amazonaws.ecs.task-definition-family" : "unifi-video",
146
+ "com.amazonaws.ecs.task-definition-version" :"9",
147
+ "Description": "Fluentd docker image",
148
+ "Vendor": "Fluent Organization",
149
+ "Version": "1.0",
150
+ "com.docker.compose.config-hash": "7a03ce1e88388255c166fa62dcad89a43d43034ce605265094cf9c9951dcc9f0",
151
+ "com.docker.compose.container-number": "1",
152
+ "com.docker.compose.oneoff": "False",
153
+ "com.docker.compose.project": "fluentddockertest",
154
+ "com.docker.compose.service": "fluentd_server",
155
+ "com.docker.compose.version": "1.5.1"
156
+ },
157
+ "MacAddress": "",
158
+ "NetworkDisabled": false,
159
+ "ExposedPorts": {
160
+ "24224/tcp": {}
161
+ },
162
+ "VolumeDriver": "",
163
+ "Memory": 0,
164
+ "MemorySwap": 0,
165
+ "CpuShares": 0,
166
+ "Cpuset": ""
167
+ },
168
+ "NetworkSettings": {
169
+ "Bridge": "",
170
+ "SandboxID": "f304aa3b0e20fe1e0edb5984aedd03b7d5df999ff5ff9bd3ef8f831923e5f96a",
171
+ "HairpinMode": false,
172
+ "LinkLocalIPv6Address": "",
173
+ "LinkLocalIPv6PrefixLen": 0,
174
+ "Ports": {
175
+ "24224/tcp": [{
176
+ "HostIp": "0.0.0.0",
177
+ "HostPort": "24224"
178
+ }]
179
+ },
180
+ "SandboxKey": "/var/run/docker/netns/f304aa3b0e20",
181
+ "SecondaryIPAddresses": null,
182
+ "SecondaryIPv6Addresses": null,
183
+ "EndpointID": "7c6889977686db7c2b2042798b021a03df61c4273dcfd84fb2a9e5830fcb71a9",
184
+ "Gateway": "172.17.0.1",
185
+ "GlobalIPv6Address": "",
186
+ "GlobalIPv6PrefixLen": 0,
187
+ "IPAddress": "172.17.0.2",
188
+ "IPPrefixLen": 16,
189
+ "IPv6Gateway": "",
190
+ "MacAddress": "02:42:ac:11:00:02"
191
+ }
192
+ }
@@ -1,7 +1,7 @@
1
1
  require "simplecov"
2
2
  SimpleCov.start
3
- require "codeclimate-test-reporter"
4
- CodeClimate::TestReporter.start
3
+ # require "codeclimate-test-reporter"
4
+ # CodeClimate::TestReporter.start
5
5
 
6
6
  require 'rubygems'
7
7
  require 'bundler'
@@ -19,7 +19,7 @@ require 'pry'
19
19
 
20
20
 
21
21
  require "simplecov"
22
- require "codeclimate-test-reporter"
22
+ # require "codeclimate-test-reporter"
23
23
  if ENV['CIRCLE_ARTIFACTS']
24
24
  dir = File.join("..", "..", "..", ENV['CIRCLE_ARTIFACTS'], "coverage")
25
25
  SimpleCov.coverage_dir(dir)
@@ -28,6 +28,9 @@ class ECSFilterTest < Test::Unit::TestCase
28
28
  CONFIG4 = %[
29
29
  task_family_prepend foo-
30
30
  ]
31
+ CONFIG5 = %[
32
+ container_id_attr docker.id
33
+ ]
31
34
 
32
35
  def create_driver(conf = CONFIG, tag = 'test')
33
36
  Fluent::Test::FilterTestDriver.new(Fluent::ECSFilter, tag).configure(conf)
@@ -77,6 +80,27 @@ class ECSFilterTest < Test::Unit::TestCase
77
80
  assert_equal 'foo-unifi-video', log_entry['task_family']
78
81
  end
79
82
 
83
+ def test_nested_container_id
84
+ setup_ecs_container('foobar1234', 'get_from_record')
85
+
86
+ d1 = create_driver(CONFIG5)
87
+ d1.run do
88
+ d1.filter('log' => 'Hello World 1', 'docker': {
89
+ 'id': 'foobar1234',
90
+ 'name': 'k8s_fabric8-console-container.efbd6e64_fabric8-console-controller-9knhj_default_8ae2f621-f360-11e4-8d12-54ee7527188d_7ec9aa3e',
91
+ 'container_hostname': 'fabric8-console-controller-9knhj',
92
+ 'image': 'fabric8/hawtio-kubernetes:latest',
93
+ 'image_id': 'b2bd1a24a68356b2f30128e6e28e672c1ef92df0d9ec01ec0c7faea5d77d2303',
94
+ 'labels': {}
95
+ })
96
+ end
97
+ filtered = d1.filtered_as_array
98
+
99
+ log_entry = filtered[0][2]
100
+ puts "LOG ENTRY #{log_entry}"
101
+ assert_equal 'unifi-video', log_entry['task_family']
102
+ end
103
+
80
104
  def test_container_cache
81
105
  setup_ecs_container('foobar123', 'ecs')
82
106
 
metadata CHANGED
@@ -1,181 +1,215 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fluent-plugin-ecs-filter
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Joseph Hughes
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-05-31 00:00:00.000000000 Z
11
+ date: 2017-04-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: fluentd
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ! '>='
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
19
  version: 0.10.43
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ! '>='
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: 0.10.43
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: lru_redux
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ~>
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
33
  version: '1.1'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ~>
38
+ - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: '1.1'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: docker-api
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ~>
45
+ - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '1.28'
47
+ version: '1.33'
48
+ - - ">="
49
+ - !ruby/object:Gem::Version
50
+ version: 1.33.3
48
51
  type: :runtime
49
52
  prerelease: false
50
53
  version_requirements: !ruby/object:Gem::Requirement
51
54
  requirements:
52
- - - ~>
55
+ - - "~>"
56
+ - !ruby/object:Gem::Version
57
+ version: '1.33'
58
+ - - ">="
53
59
  - !ruby/object:Gem::Version
54
- version: '1.28'
60
+ version: 1.33.3
55
61
  - !ruby/object:Gem::Dependency
56
62
  name: oj
57
63
  requirement: !ruby/object:Gem::Requirement
58
64
  requirements:
59
- - - ! '>='
65
+ - - ">="
66
+ - !ruby/object:Gem::Version
67
+ version: 2.18.5
68
+ type: :runtime
69
+ prerelease: false
70
+ version_requirements: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - ">="
73
+ - !ruby/object:Gem::Version
74
+ version: 2.18.5
75
+ - !ruby/object:Gem::Dependency
76
+ name: vine
77
+ requirement: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - "~>"
60
80
  - !ruby/object:Gem::Version
61
- version: 2.15.1
81
+ version: '0.2'
62
82
  type: :runtime
63
83
  prerelease: false
64
84
  version_requirements: !ruby/object:Gem::Requirement
65
85
  requirements:
66
- - - ! '>='
86
+ - - "~>"
67
87
  - !ruby/object:Gem::Version
68
- version: 2.15.1
88
+ version: '0.2'
69
89
  - !ruby/object:Gem::Dependency
70
90
  name: bundler
71
91
  requirement: !ruby/object:Gem::Requirement
72
92
  requirements:
73
- - - ! '>='
93
+ - - ">="
94
+ - !ruby/object:Gem::Version
95
+ version: '0'
96
+ type: :development
97
+ prerelease: false
98
+ version_requirements: !ruby/object:Gem::Requirement
99
+ requirements:
100
+ - - ">="
101
+ - !ruby/object:Gem::Version
102
+ version: '0'
103
+ - !ruby/object:Gem::Dependency
104
+ name: test-unit
105
+ requirement: !ruby/object:Gem::Requirement
106
+ requirements:
107
+ - - ">="
74
108
  - !ruby/object:Gem::Version
75
109
  version: '0'
76
110
  type: :development
77
111
  prerelease: false
78
112
  version_requirements: !ruby/object:Gem::Requirement
79
113
  requirements:
80
- - - ! '>='
114
+ - - ">="
81
115
  - !ruby/object:Gem::Version
82
116
  version: '0'
83
117
  - !ruby/object:Gem::Dependency
84
118
  name: codeclimate-test-reporter
85
119
  requirement: !ruby/object:Gem::Requirement
86
120
  requirements:
87
- - - ! '>='
121
+ - - ">="
88
122
  - !ruby/object:Gem::Version
89
123
  version: '0'
90
124
  type: :development
91
125
  prerelease: false
92
126
  version_requirements: !ruby/object:Gem::Requirement
93
127
  requirements:
94
- - - ! '>='
128
+ - - ">="
95
129
  - !ruby/object:Gem::Version
96
130
  version: '0'
97
131
  - !ruby/object:Gem::Dependency
98
132
  name: rake
99
133
  requirement: !ruby/object:Gem::Requirement
100
134
  requirements:
101
- - - ! '>='
135
+ - - ">="
102
136
  - !ruby/object:Gem::Version
103
137
  version: '0'
104
138
  type: :development
105
139
  prerelease: false
106
140
  version_requirements: !ruby/object:Gem::Requirement
107
141
  requirements:
108
- - - ! '>='
142
+ - - ">="
109
143
  - !ruby/object:Gem::Version
110
144
  version: '0'
111
145
  - !ruby/object:Gem::Dependency
112
146
  name: webmock
113
147
  requirement: !ruby/object:Gem::Requirement
114
148
  requirements:
115
- - - ! '>='
149
+ - - ">="
116
150
  - !ruby/object:Gem::Version
117
151
  version: '0'
118
152
  type: :development
119
153
  prerelease: false
120
154
  version_requirements: !ruby/object:Gem::Requirement
121
155
  requirements:
122
- - - ! '>='
156
+ - - ">="
123
157
  - !ruby/object:Gem::Version
124
158
  version: '0'
125
159
  - !ruby/object:Gem::Dependency
126
160
  name: pry
127
161
  requirement: !ruby/object:Gem::Requirement
128
162
  requirements:
129
- - - ! '>='
163
+ - - ">="
130
164
  - !ruby/object:Gem::Version
131
165
  version: '0'
132
166
  type: :development
133
167
  prerelease: false
134
168
  version_requirements: !ruby/object:Gem::Requirement
135
169
  requirements:
136
- - - ! '>='
170
+ - - ">="
137
171
  - !ruby/object:Gem::Version
138
172
  version: '0'
139
173
  - !ruby/object:Gem::Dependency
140
174
  name: timecop
141
175
  requirement: !ruby/object:Gem::Requirement
142
176
  requirements:
143
- - - ! '>='
177
+ - - ">="
144
178
  - !ruby/object:Gem::Version
145
179
  version: '0'
146
180
  type: :development
147
181
  prerelease: false
148
182
  version_requirements: !ruby/object:Gem::Requirement
149
183
  requirements:
150
- - - ! '>='
184
+ - - ">="
151
185
  - !ruby/object:Gem::Version
152
186
  version: '0'
153
187
  - !ruby/object:Gem::Dependency
154
188
  name: simplecov
155
189
  requirement: !ruby/object:Gem::Requirement
156
190
  requirements:
157
- - - ! '>='
191
+ - - ">="
158
192
  - !ruby/object:Gem::Version
159
193
  version: '0'
160
194
  type: :development
161
195
  prerelease: false
162
196
  version_requirements: !ruby/object:Gem::Requirement
163
197
  requirements:
164
- - - ! '>='
198
+ - - ">="
165
199
  - !ruby/object:Gem::Version
166
200
  version: '0'
167
201
  - !ruby/object:Gem::Dependency
168
202
  name: minitest
169
203
  requirement: !ruby/object:Gem::Requirement
170
204
  requirements:
171
- - - ~>
205
+ - - "~>"
172
206
  - !ruby/object:Gem::Version
173
207
  version: '4.0'
174
208
  type: :development
175
209
  prerelease: false
176
210
  version_requirements: !ruby/object:Gem::Requirement
177
211
  requirements:
178
- - - ~>
212
+ - - "~>"
179
213
  - !ruby/object:Gem::Version
180
214
  version: '4.0'
181
215
  description: Filter plugin to add AWS ECS metadata
@@ -185,9 +219,9 @@ executables: []
185
219
  extensions: []
186
220
  extra_rdoc_files: []
187
221
  files:
188
- - .gitignore
189
- - .ruby-version
190
- - .travis.yml
222
+ - ".gitignore"
223
+ - ".ruby-version"
224
+ - ".travis.yml"
191
225
  - Gemfile
192
226
  - LICENSE.txt
193
227
  - README.md
@@ -195,8 +229,9 @@ files:
195
229
  - fluent-plugin-ecs-filter.gemspec
196
230
  - lib/fluent/plugin/filter_ecs_filter.rb
197
231
  - test/containers/ecs.json
232
+ - test/containers/get_from_record.json
198
233
  - test/helper.rb
199
- - test/plugin/test_mesosphere.rb
234
+ - test/plugin/test_ecs.rb
200
235
  homepage: https://github.com/joshughes/fluent-plugin-ecs-filter
201
236
  licenses:
202
237
  - ASL2
@@ -207,12 +242,12 @@ require_paths:
207
242
  - lib
208
243
  required_ruby_version: !ruby/object:Gem::Requirement
209
244
  requirements:
210
- - - ! '>='
245
+ - - ">="
211
246
  - !ruby/object:Gem::Version
212
247
  version: 2.0.0
213
248
  required_rubygems_version: !ruby/object:Gem::Requirement
214
249
  requirements:
215
- - - ! '>='
250
+ - - ">="
216
251
  - !ruby/object:Gem::Version
217
252
  version: '0'
218
253
  requirements: []
@@ -223,5 +258,6 @@ specification_version: 4
223
258
  summary: Filter plugin to add AWS ECS metadata to fluentd
224
259
  test_files:
225
260
  - test/containers/ecs.json
261
+ - test/containers/get_from_record.json
226
262
  - test/helper.rb
227
- - test/plugin/test_mesosphere.rb
263
+ - test/plugin/test_ecs.rb