fluent-plugin-td 0.10.3 → 0.10.4
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.
- data/ChangeLog +6 -0
- data/VERSION +1 -1
- data/lib/fluent/plugin/out_tdlog.rb +25 -4
- data/test/out_tdlog.rb +11 -0
- metadata +8 -8
data/ChangeLog
CHANGED
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.10.
|
1
|
+
0.10.4
|
@@ -120,10 +120,20 @@ class TreasureDataLogOutput < BufferedOutput
|
|
120
120
|
out = ''
|
121
121
|
off = out.bytesize
|
122
122
|
es.each {|time,record|
|
123
|
-
|
123
|
+
begin
|
124
|
+
record['time'] = time
|
125
|
+
|
126
|
+
if record.size > @key_num_limit
|
127
|
+
raise "Too many number of keys (#{record.size} keys)" # TODO include summary of the record
|
128
|
+
end
|
124
129
|
|
125
|
-
|
126
|
-
|
130
|
+
rescue
|
131
|
+
# TODO (a) Remove the transaction mechanism of fluentd
|
132
|
+
# or (b) keep transaction boundaries in in/out_forward.
|
133
|
+
# This code disables the transaction mechanism (a).
|
134
|
+
$log.error "#{$!}: #{summarize_record(record)}"
|
135
|
+
$log.error_backtrace $!.backtrace
|
136
|
+
next
|
127
137
|
end
|
128
138
|
|
129
139
|
record.to_msgpack(out)
|
@@ -131,13 +141,24 @@ class TreasureDataLogOutput < BufferedOutput
|
|
131
141
|
noff = out.bytesize
|
132
142
|
sz = noff - off
|
133
143
|
if sz > @record_size_limit
|
134
|
-
|
144
|
+
# TODO don't raise error
|
145
|
+
#raise "Size of a record too large (#{sz} bytes)" # TODO include summary of the record
|
146
|
+
$log.warn "Size of a record too large (#{sz} bytes): #{summarize_record(record)}"
|
135
147
|
end
|
136
148
|
off = noff
|
137
149
|
}
|
138
150
|
out
|
139
151
|
end
|
140
152
|
|
153
|
+
def summarize_record(record)
|
154
|
+
json = record.to_json
|
155
|
+
if json.size > 100
|
156
|
+
json[0..97]+"..."
|
157
|
+
else
|
158
|
+
json
|
159
|
+
end
|
160
|
+
end
|
161
|
+
|
141
162
|
def write(chunk)
|
142
163
|
database, table = chunk.key.split('.',2)
|
143
164
|
|
data/test/out_tdlog.rb
CHANGED
@@ -50,5 +50,16 @@ class TreasureDataLogOutputTest < Test::Unit::TestCase
|
|
50
50
|
d.instance.emit("", es, chain)
|
51
51
|
end
|
52
52
|
end
|
53
|
+
|
54
|
+
def test_invalid_data
|
55
|
+
d = create_driver
|
56
|
+
d.instance.start
|
57
|
+
|
58
|
+
es = Fluent::OneEventStream.new(Time.now.to_i, "invalid")
|
59
|
+
chain = Fluent::NullOutputChain.instance
|
60
|
+
assert_nothing_raised do
|
61
|
+
d.instance.emit("test.name", es, chain)
|
62
|
+
end
|
63
|
+
end
|
53
64
|
end
|
54
65
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fluent-plugin-td
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.10.
|
4
|
+
version: 0.10.4
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-02-
|
12
|
+
date: 2012-02-09 00:00:00.000000000Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: fluentd
|
16
|
-
requirement: &
|
16
|
+
requirement: &70147059008180 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: 0.10.6
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70147059008180
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: td-client
|
27
|
-
requirement: &
|
27
|
+
requirement: &70147059007240 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ~>
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: 0.8.7
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70147059007240
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: rake
|
38
|
-
requirement: &
|
38
|
+
requirement: &70147059006560 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,7 +43,7 @@ dependencies:
|
|
43
43
|
version: 0.9.2
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *70147059006560
|
47
47
|
description: Treasure Data output plugin for Fluent event collector
|
48
48
|
email:
|
49
49
|
executables: []
|