fluent-plugin-viaq_data_model 0.0.9 → 0.0.11
Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b9e299245761d3debf06c0c4ae48413be713f5be
|
4
|
+
data.tar.gz: aa684c6a42046d65849734c7989e3ab4f5435029
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 150204ed3baf62ed86df87117935753d9f99a94cabcd8f19f75233a5f29ed353f71f0245d93f129c67b2b46c753013edba80a77bf9106d2595065502d7fd66c8
|
7
|
+
data.tar.gz: 8513d7f9af3799646c8e670c45716ab288e6f128af022d78757c36298fbce3d7c62a3702e6c8ea4b0b0b7b33bce352cf030c575d12c41b04db1e2d1f84feb669
|
@@ -7,7 +7,7 @@ FLUENTD_VERSION = ENV['FLUENTD_VERSION'] || "0.12.0"
|
|
7
7
|
|
8
8
|
Gem::Specification.new do |gem|
|
9
9
|
gem.name = "fluent-plugin-viaq_data_model"
|
10
|
-
gem.version = "0.0.
|
10
|
+
gem.version = "0.0.11"
|
11
11
|
gem.authors = ["Rich Megginson"]
|
12
12
|
gem.email = ["rmeggins@redhat.com"]
|
13
13
|
gem.description = %q{Filter plugin to ensure data is in the ViaQ common data model}
|
@@ -140,6 +140,8 @@ module Fluent
|
|
140
140
|
config_param :elasticsearch_index_name_field, :string, default: 'viaq_index_name'
|
141
141
|
desc 'Store the Elasticsearch index prefix in this field'
|
142
142
|
config_param :elasticsearch_index_prefix_field, :string, default: 'viaq_index_prefix'
|
143
|
+
desc 'Optionally turn off processing of kubernetes events'
|
144
|
+
config_param :process_kubernetes_events, :bool, default: true
|
143
145
|
|
144
146
|
def configure(conf)
|
145
147
|
super
|
@@ -259,6 +261,7 @@ module Fluent
|
|
259
261
|
end
|
260
262
|
record['time'] = rectime.utc.to_datetime.rfc3339(6)
|
261
263
|
end
|
264
|
+
transform_eventrouter(tag, record)
|
262
265
|
end
|
263
266
|
|
264
267
|
def check_for_match_and_format(tag, time, record)
|
@@ -286,14 +289,16 @@ module Fluent
|
|
286
289
|
end
|
287
290
|
|
288
291
|
def add_pipeline_metadata (tag, time, record)
|
289
|
-
|
290
|
-
|
291
|
-
|
292
|
-
|
293
|
-
|
294
|
-
|
295
|
-
|
296
|
-
|
292
|
+
record['pipeline_metadata'] = {} unless record.key?('pipeline_metadata')
|
293
|
+
pipeline_type = @pipeline_type.to_s
|
294
|
+
# this will catch the case where pipeline_type doesn't exist, or is not a Hash
|
295
|
+
record['pipeline_metadata'][pipeline_type] = {} unless record['pipeline_metadata'][pipeline_type].respond_to?(:fetch)
|
296
|
+
record['pipeline_metadata'][pipeline_type]['ipaddr4'] = @ipaddr4
|
297
|
+
record['pipeline_metadata'][pipeline_type]['ipaddr6'] = @ipaddr6
|
298
|
+
record['pipeline_metadata'][pipeline_type]['inputname'] = 'fluent-plugin-systemd'
|
299
|
+
record['pipeline_metadata'][pipeline_type]['name'] = 'fluentd'
|
300
|
+
record['pipeline_metadata'][pipeline_type]['received_at'] = Time.now.utc.to_datetime.rfc3339(6)
|
301
|
+
record['pipeline_metadata'][pipeline_type]['version'] = @pipeline_version
|
297
302
|
end
|
298
303
|
|
299
304
|
def add_elasticsearch_index_name_field(tag, time, record)
|
@@ -358,6 +363,22 @@ module Fluent
|
|
358
363
|
end
|
359
364
|
end
|
360
365
|
|
366
|
+
def transform_eventrouter(tag, record)
|
367
|
+
return unless @process_kubernetes_events
|
368
|
+
if record.key?("event")
|
369
|
+
if record.key?("verb")
|
370
|
+
record["event"]["verb"] = record.delete("verb")
|
371
|
+
end
|
372
|
+
record["kubernetes"] = {} unless record.key?("kubernetes")
|
373
|
+
record["kubernetes"]["event"] = record.delete("event")
|
374
|
+
if record["kubernetes"]["event"].key?('message')
|
375
|
+
((record['pipeline_metadata'] ||= {})[@pipeline_type.to_s] ||= {})['original_raw_message'] = record['message']
|
376
|
+
end
|
377
|
+
record['message'] = record["kubernetes"]["event"].delete("message")
|
378
|
+
record['time'] = record["kubernetes"]["event"]["metadata"].delete("creationTimestamp")
|
379
|
+
end
|
380
|
+
end
|
381
|
+
|
361
382
|
def filter(tag, time, record)
|
362
383
|
if ENV['CDM_DEBUG']
|
363
384
|
unless tag == ENV['CDM_DEBUG_IGNORE_TAG']
|
@@ -107,7 +107,8 @@ module ViaqDataModelFilterSystemd
|
|
107
107
|
record['level'] = ["emerg", "alert", "crit", "err", "warning", "notice", "info", "debug", "trace", "unknown"][pri_index]
|
108
108
|
JOURNAL_TIME_FIELDS.each do |field|
|
109
109
|
if (val = record[field])
|
110
|
-
|
110
|
+
vali = val.to_i
|
111
|
+
record['time'] = Time.at(vali / 1000000, vali % 1000000).utc.to_datetime.rfc3339(6)
|
111
112
|
break
|
112
113
|
end
|
113
114
|
end
|
@@ -129,6 +130,7 @@ module ViaqDataModelFilterSystemd
|
|
129
130
|
else
|
130
131
|
record['hostname'] = record['_HOSTNAME']
|
131
132
|
end
|
133
|
+
transform_eventrouter(tag, record)
|
132
134
|
end
|
133
135
|
end
|
134
136
|
end
|
@@ -317,6 +317,12 @@ class ViaqDataModelFilterTest < Test::Unit::TestCase
|
|
317
317
|
"UDEV_DEVLINK" =>"UDEV_DEVLINK"
|
318
318
|
}
|
319
319
|
end
|
320
|
+
def add_event(input)
|
321
|
+
input = input.merge({})
|
322
|
+
input['verb'] = 'ADDED'
|
323
|
+
input['event'] = {'message'=>'event message','metadata'=>{'creationTimestamp'=>'2017-07-27T17:23:46.216527+00:00'}}
|
324
|
+
input
|
325
|
+
end
|
320
326
|
test 'match records with journal_system_record_tag' do
|
321
327
|
rec = emit_with_tag('journal.system', {'a'=>'b', 'MESSAGE'=>'here'}, '
|
322
328
|
<formatter>
|
@@ -516,6 +522,72 @@ class ViaqDataModelFilterTest < Test::Unit::TestCase
|
|
516
522
|
dellist = 'log,stream,MESSAGE,_SOURCE_REALTIME_TIMESTAMP,__REALTIME_TIMESTAMP,CONTAINER_ID,CONTAINER_ID_FULL,CONTAINER_NAME,PRIORITY,_BOOT_ID,_CAP_EFFECTIVE,_CMDLINE,_COMM,_EXE,_GID,_HOSTNAME,_MACHINE_ID,_PID,_SELINUX_CONTEXT,_SYSTEMD_CGROUP,_SYSTEMD_SLICE,_SYSTEMD_UNIT,_TRANSPORT,_UID,_AUDIT_LOGINUID,_AUDIT_SESSION,_SYSTEMD_OWNER_UID,_SYSTEMD_SESSION,_SYSTEMD_USER_UNIT,CODE_FILE,CODE_FUNCTION,CODE_LINE,ERRNO,MESSAGE_ID,RESULT,UNIT,_KERNEL_DEVICE,_KERNEL_SUBSYSTEM,_UDEV_SYSNAME,_UDEV_DEVNODE,_UDEV_DEVLINK,SYSLOG_FACILITY,SYSLOG_IDENTIFIER,SYSLOG_PID'.split(',')
|
517
523
|
dellist.each{|field| assert_nil(rec[field])}
|
518
524
|
end
|
525
|
+
test 'process a kubernetes journal record with event from eventrouter, default settings' do
|
526
|
+
ENV['IPADDR4'] = '127.0.0.1'
|
527
|
+
ENV['IPADDR6'] = '::1'
|
528
|
+
ENV['FLUENTD_VERSION'] = 'fversion'
|
529
|
+
ENV['DATA_VERSION'] = 'dversion'
|
530
|
+
input = add_event(normal_input)
|
531
|
+
rec = emit_with_tag('kubernetes.journal.container', input, '
|
532
|
+
<formatter>
|
533
|
+
tag "kubernetes.journal.container**"
|
534
|
+
type k8s_journal
|
535
|
+
remove_keys log,stream,MESSAGE,_SOURCE_REALTIME_TIMESTAMP,__REALTIME_TIMESTAMP,CONTAINER_ID,CONTAINER_ID_FULL,CONTAINER_NAME,PRIORITY,_BOOT_ID,_CAP_EFFECTIVE,_CMDLINE,_COMM,_EXE,_GID,_HOSTNAME,_MACHINE_ID,_PID,_SELINUX_CONTEXT,_SYSTEMD_CGROUP,_SYSTEMD_SLICE,_SYSTEMD_UNIT,_TRANSPORT,_UID,_AUDIT_LOGINUID,_AUDIT_SESSION,_SYSTEMD_OWNER_UID,_SYSTEMD_SESSION,_SYSTEMD_USER_UNIT,CODE_FILE,CODE_FUNCTION,CODE_LINE,ERRNO,MESSAGE_ID,RESULT,UNIT,_KERNEL_DEVICE,_KERNEL_SUBSYSTEM,_UDEV_SYSNAME,_UDEV_DEVNODE,_UDEV_DEVLINK,SYSLOG_FACILITY,SYSLOG_IDENTIFIER,SYSLOG_PID
|
536
|
+
</formatter>
|
537
|
+
pipeline_type collector
|
538
|
+
')
|
539
|
+
assert_equal(normal_output_t, rec['systemd']['t'])
|
540
|
+
assert_equal(normal_output_u, rec['systemd']['u'])
|
541
|
+
assert_equal(normal_output_k, rec['systemd']['k'])
|
542
|
+
assert_equal('ADDED', rec['kubernetes']['event']['verb'])
|
543
|
+
assert_equal('event message', rec['message'])
|
544
|
+
assert_equal('hello world', rec['pipeline_metadata']['collector']['original_raw_message'])
|
545
|
+
assert_equal('info', rec['level'])
|
546
|
+
assert_equal('myhost', rec['hostname'])
|
547
|
+
assert_equal('2017-07-27T17:23:46.216527+00:00', rec['@timestamp'])
|
548
|
+
assert_equal('127.0.0.1', rec['pipeline_metadata']['collector']['ipaddr4'])
|
549
|
+
assert_equal('::1', rec['pipeline_metadata']['collector']['ipaddr6'])
|
550
|
+
assert_equal('fluent-plugin-systemd', rec['pipeline_metadata']['collector']['inputname'])
|
551
|
+
assert_equal('fluentd', rec['pipeline_metadata']['collector']['name'])
|
552
|
+
assert_equal('fversion dversion', rec['pipeline_metadata']['collector']['version'])
|
553
|
+
assert_equal(@timestamp_str, rec['pipeline_metadata']['collector']['received_at'])
|
554
|
+
dellist = 'log,stream,MESSAGE,_SOURCE_REALTIME_TIMESTAMP,__REALTIME_TIMESTAMP,CONTAINER_ID,CONTAINER_ID_FULL,CONTAINER_NAME,PRIORITY,_BOOT_ID,_CAP_EFFECTIVE,_CMDLINE,_COMM,_EXE,_GID,_HOSTNAME,_MACHINE_ID,_PID,_SELINUX_CONTEXT,_SYSTEMD_CGROUP,_SYSTEMD_SLICE,_SYSTEMD_UNIT,_TRANSPORT,_UID,_AUDIT_LOGINUID,_AUDIT_SESSION,_SYSTEMD_OWNER_UID,_SYSTEMD_SESSION,_SYSTEMD_USER_UNIT,CODE_FILE,CODE_FUNCTION,CODE_LINE,ERRNO,MESSAGE_ID,RESULT,UNIT,_KERNEL_DEVICE,_KERNEL_SUBSYSTEM,_UDEV_SYSNAME,_UDEV_DEVNODE,_UDEV_DEVLINK,SYSLOG_FACILITY,SYSLOG_IDENTIFIER,SYSLOG_PID,event,verb'.split(',')
|
555
|
+
dellist.each{|field| assert_nil(rec[field])}
|
556
|
+
end
|
557
|
+
test 'process a kubernetes journal record with event from eventrouter, disable event processing' do
|
558
|
+
ENV['IPADDR4'] = '127.0.0.1'
|
559
|
+
ENV['IPADDR6'] = '::1'
|
560
|
+
ENV['FLUENTD_VERSION'] = 'fversion'
|
561
|
+
ENV['DATA_VERSION'] = 'dversion'
|
562
|
+
input = add_event(normal_input)
|
563
|
+
rec = emit_with_tag('kubernetes.journal.container', input, '
|
564
|
+
<formatter>
|
565
|
+
tag "kubernetes.journal.container**"
|
566
|
+
type k8s_journal
|
567
|
+
remove_keys log,stream,MESSAGE,_SOURCE_REALTIME_TIMESTAMP,__REALTIME_TIMESTAMP,CONTAINER_ID,CONTAINER_ID_FULL,CONTAINER_NAME,PRIORITY,_BOOT_ID,_CAP_EFFECTIVE,_CMDLINE,_COMM,_EXE,_GID,_HOSTNAME,_MACHINE_ID,_PID,_SELINUX_CONTEXT,_SYSTEMD_CGROUP,_SYSTEMD_SLICE,_SYSTEMD_UNIT,_TRANSPORT,_UID,_AUDIT_LOGINUID,_AUDIT_SESSION,_SYSTEMD_OWNER_UID,_SYSTEMD_SESSION,_SYSTEMD_USER_UNIT,CODE_FILE,CODE_FUNCTION,CODE_LINE,ERRNO,MESSAGE_ID,RESULT,UNIT,_KERNEL_DEVICE,_KERNEL_SUBSYSTEM,_UDEV_SYSNAME,_UDEV_DEVNODE,_UDEV_DEVLINK,SYSLOG_FACILITY,SYSLOG_IDENTIFIER,SYSLOG_PID
|
568
|
+
</formatter>
|
569
|
+
process_kubernetes_events false
|
570
|
+
pipeline_type collector
|
571
|
+
')
|
572
|
+
assert_equal('ADDED', rec['verb'])
|
573
|
+
assert_equal({'message'=>'event message','metadata'=>{'creationTimestamp'=>'2017-07-27T17:23:46.216527+00:00'}}, rec['event'])
|
574
|
+
assert_equal(normal_output_t, rec['systemd']['t'])
|
575
|
+
assert_equal(normal_output_u, rec['systemd']['u'])
|
576
|
+
assert_equal(normal_output_k, rec['systemd']['k'])
|
577
|
+
assert_equal('hello world', rec['message'])
|
578
|
+
assert_equal('info', rec['level'])
|
579
|
+
assert_equal('myhost', rec['hostname'])
|
580
|
+
assert_equal('2017-07-27T17:27:46.216527+00:00', rec['@timestamp'])
|
581
|
+
assert_equal('127.0.0.1', rec['pipeline_metadata']['collector']['ipaddr4'])
|
582
|
+
assert_equal('::1', rec['pipeline_metadata']['collector']['ipaddr6'])
|
583
|
+
assert_equal('fluent-plugin-systemd', rec['pipeline_metadata']['collector']['inputname'])
|
584
|
+
assert_equal('fluentd', rec['pipeline_metadata']['collector']['name'])
|
585
|
+
assert_equal('fversion dversion', rec['pipeline_metadata']['collector']['version'])
|
586
|
+
assert_equal(@timestamp_str, rec['pipeline_metadata']['collector']['received_at'])
|
587
|
+
dellist = 'log,stream,MESSAGE,_SOURCE_REALTIME_TIMESTAMP,__REALTIME_TIMESTAMP,CONTAINER_ID,CONTAINER_ID_FULL,CONTAINER_NAME,PRIORITY,_BOOT_ID,_CAP_EFFECTIVE,_CMDLINE,_COMM,_EXE,_GID,_HOSTNAME,_MACHINE_ID,_PID,_SELINUX_CONTEXT,_SYSTEMD_CGROUP,_SYSTEMD_SLICE,_SYSTEMD_UNIT,_TRANSPORT,_UID,_AUDIT_LOGINUID,_AUDIT_SESSION,_SYSTEMD_OWNER_UID,_SYSTEMD_SESSION,_SYSTEMD_USER_UNIT,CODE_FILE,CODE_FUNCTION,CODE_LINE,ERRNO,MESSAGE_ID,RESULT,UNIT,_KERNEL_DEVICE,_KERNEL_SUBSYSTEM,_UDEV_SYSNAME,_UDEV_DEVNODE,_UDEV_DEVLINK,SYSLOG_FACILITY,SYSLOG_IDENTIFIER,SYSLOG_PID'.split(',')
|
588
|
+
dellist.each{|field| assert_nil(rec[field])}
|
589
|
+
assert_nil(rec['pipeline_metadata']['collector']['original_raw_message'])
|
590
|
+
end
|
519
591
|
test 'disable kubernetes journal record processing' do
|
520
592
|
ENV['IPADDR4'] = '127.0.0.1'
|
521
593
|
ENV['IPADDR6'] = '::1'
|
@@ -717,6 +789,35 @@ class ViaqDataModelFilterTest < Test::Unit::TestCase
|
|
717
789
|
dellist = 'host,pid,ident'.split(',')
|
718
790
|
dellist.each{|field| assert_nil(rec[field])}
|
719
791
|
end
|
792
|
+
test 'process a k8s json-file record with event from eventrouter, default settings' do
|
793
|
+
ENV['IPADDR4'] = '127.0.0.1'
|
794
|
+
ENV['IPADDR6'] = '::1'
|
795
|
+
ENV['FLUENTD_VERSION'] = 'fversion'
|
796
|
+
ENV['DATA_VERSION'] = 'dversion'
|
797
|
+
input = {'kubernetes'=>{'host'=>'k8shost'},'stream'=>'stderr','time'=>@timestamp_str,'log'=>'mymessage'}
|
798
|
+
input = add_event(input)
|
799
|
+
rec = emit_with_tag('kubernetes.var.log.containers.name.name_this_that_other_log', input, '
|
800
|
+
<formatter>
|
801
|
+
tag "kubernetes.var.log.containers**"
|
802
|
+
type k8s_json_file
|
803
|
+
remove_keys log,stream
|
804
|
+
</formatter>
|
805
|
+
pipeline_type collector
|
806
|
+
')
|
807
|
+
assert_equal('ADDED', rec['kubernetes']['event']['verb'])
|
808
|
+
assert_equal('event message', rec['message'])
|
809
|
+
assert_equal('mymessage', rec['pipeline_metadata']['collector']['original_raw_message'])
|
810
|
+
assert_equal('err', rec['level'])
|
811
|
+
assert_equal('2017-07-27T17:23:46.216527+00:00', rec['@timestamp'])
|
812
|
+
assert_equal('127.0.0.1', rec['pipeline_metadata']['collector']['ipaddr4'])
|
813
|
+
assert_equal('::1', rec['pipeline_metadata']['collector']['ipaddr6'])
|
814
|
+
assert_equal('fluent-plugin-systemd', rec['pipeline_metadata']['collector']['inputname'])
|
815
|
+
assert_equal('fluentd', rec['pipeline_metadata']['collector']['name'])
|
816
|
+
assert_equal('fversion dversion', rec['pipeline_metadata']['collector']['version'])
|
817
|
+
assert_equal(@timestamp_str, rec['pipeline_metadata']['collector']['received_at'])
|
818
|
+
dellist = 'host,pid,ident,event,verb'.split(',')
|
819
|
+
dellist.each{|field| assert_nil(rec[field])}
|
820
|
+
end
|
720
821
|
test 'process a k8s json-file record with a string valued timestamp' do
|
721
822
|
ENV['IPADDR4'] = '127.0.0.1'
|
722
823
|
ENV['IPADDR6'] = '::1'
|
@@ -1126,6 +1227,31 @@ class ViaqDataModelFilterTest < Test::Unit::TestCase
|
|
1126
1227
|
</elasticsearch_index_name>
|
1127
1228
|
')
|
1128
1229
|
assert_equal('.operations.2017.07.27', rec['viaq_index_name'])
|
1129
|
-
|
1230
|
+
end
|
1231
|
+
test 'construct an operations index name from a kubernetes record in an operations namespace' do
|
1232
|
+
input = normal_input.merge({})
|
1233
|
+
input['kubernetes'] = {'namespace_name'=>'default', 'namespace_id'=>'uuid'}
|
1234
|
+
rec = emit_with_tag('kubernetes.journal.container._default_', input, '
|
1235
|
+
<formatter>
|
1236
|
+
tag "journal.system**"
|
1237
|
+
type sys_journal
|
1238
|
+
remove_keys log,stream,MESSAGE,_SOURCE_REALTIME_TIMESTAMP,__REALTIME_TIMESTAMP,CONTAINER_ID,CONTAINER_ID_FULL,CONTAINER_NAME,PRIORITY,_BOOT_ID,_CAP_EFFECTIVE,_CMDLINE,_COMM,_EXE,_GID,_HOSTNAME,_MACHINE_ID,_PID,_SELINUX_CONTEXT,_SYSTEMD_CGROUP,_SYSTEMD_SLICE,_SYSTEMD_UNIT,_TRANSPORT,_UID,_AUDIT_LOGINUID,_AUDIT_SESSION,_SYSTEMD_OWNER_UID,_SYSTEMD_SESSION,_SYSTEMD_USER_UNIT,CODE_FILE,CODE_FUNCTION,CODE_LINE,ERRNO,MESSAGE_ID,RESULT,UNIT,_KERNEL_DEVICE,_KERNEL_SUBSYSTEM,_UDEV_SYSNAME,_UDEV_DEVNODE,_UDEV_DEVLINK,SYSLOG_FACILITY,SYSLOG_IDENTIFIER,SYSLOG_PID
|
1239
|
+
</formatter>
|
1240
|
+
<formatter>
|
1241
|
+
tag "kubernetes.journal.container**"
|
1242
|
+
type k8s_journal
|
1243
|
+
remove_keys log,stream,MESSAGE,_SOURCE_REALTIME_TIMESTAMP,__REALTIME_TIMESTAMP,CONTAINER_ID,CONTAINER_ID_FULL,CONTAINER_NAME,PRIORITY,_BOOT_ID,_CAP_EFFECTIVE,_CMDLINE,_COMM,_EXE,_GID,_HOSTNAME,_MACHINE_ID,_PID,_SELINUX_CONTEXT,_SYSTEMD_CGROUP,_SYSTEMD_SLICE,_SYSTEMD_UNIT,_TRANSPORT,_UID,_AUDIT_LOGINUID,_AUDIT_SESSION,_SYSTEMD_OWNER_UID,_SYSTEMD_SESSION,_SYSTEMD_USER_UNIT,CODE_FILE,CODE_FUNCTION,CODE_LINE,ERRNO,MESSAGE_ID,RESULT,UNIT,_KERNEL_DEVICE,_KERNEL_SUBSYSTEM,_UDEV_SYSNAME,_UDEV_DEVNODE,_UDEV_DEVLINK,SYSLOG_FACILITY,SYSLOG_IDENTIFIER,SYSLOG_PID
|
1244
|
+
</formatter>
|
1245
|
+
<elasticsearch_index_name>
|
1246
|
+
tag "journal.system** system.var.log** **_default_** **_openshift_** **_openshift-infra_** mux.ops"
|
1247
|
+
name_type operations_full
|
1248
|
+
</elasticsearch_index_name>
|
1249
|
+
<elasticsearch_index_name>
|
1250
|
+
tag "**"
|
1251
|
+
name_type project_full
|
1252
|
+
</elasticsearch_index_name>
|
1253
|
+
')
|
1254
|
+
assert_equal('.operations.2017.07.27', rec['viaq_index_name'])
|
1255
|
+
end
|
1130
1256
|
end
|
1131
1257
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fluent-plugin-viaq_data_model
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.11
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Rich Megginson
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-09-
|
11
|
+
date: 2017-09-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: fluentd
|
@@ -147,7 +147,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
147
147
|
version: '0'
|
148
148
|
requirements: []
|
149
149
|
rubyforge_project:
|
150
|
-
rubygems_version: 2.
|
150
|
+
rubygems_version: 2.6.13
|
151
151
|
signing_key:
|
152
152
|
specification_version: 4
|
153
153
|
summary: Filter plugin to ensure data is in the ViaQ common data model
|