fluent-plugin-mysql-load 0.0.1 → 0.0.2
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.md +10 -0
- data/README.md +158 -28
- data/fluent-plugin-mysql-load.gemspec +4 -4
- data/lib/fluent/plugin/out_mysql_load.rb +21 -24
- data/test/plugin/test_out_mysql_load.rb +68 -11
- metadata +26 -15
- checksums.yaml +0 -7
data/CHANGELOG.md
ADDED
data/README.md
CHANGED
@@ -3,22 +3,119 @@
|
|
3
3
|
|
4
4
|
# Overview
|
5
5
|
|
6
|
-
|
6
|
+
BufferedOutput plugin to mysql import.
|
7
|
+
Internal processing uses the **"LOAD DATA LOCAL INFILE"**.
|
7
8
|
|
8
|
-
|
9
|
-
Internal processing uses the "LOAD DATA INFILE".
|
9
|
+
[Buffer Plugin Overview is here](http://docs.fluentd.org/articles/buffer-plugin-overview#buffer-plugin-overview)
|
10
10
|
|
11
11
|
[MySQL Manual of LOAD DATA is here](http://dev.mysql.com/doc/refman/5.6/en/load-data.html)
|
12
12
|
|
13
13
|
# Configuration
|
14
|
-
|
14
|
+
|
15
|
+
## Ex1.
|
16
|
+
```
|
17
|
+
<match loaddata.**>
|
18
|
+
type mysql_load
|
19
|
+
host localhost
|
20
|
+
port 3306
|
21
|
+
username taro
|
22
|
+
password abcdefg
|
23
|
+
database fluentd
|
24
|
+
column_names id,txt,txt2,txt3,created_at
|
25
|
+
|
26
|
+
buffer_type file
|
27
|
+
buffer_path /var/log/fluent/test.*.buffer
|
28
|
+
flush_interval 60s
|
29
|
+
</match>
|
30
|
+
```
|
31
|
+
|
32
|
+
### In.
|
33
|
+
```
|
34
|
+
loaddata.test: {"id":111,"txt":"hoge","txt2":"foo","txt3":"bar","created_at":"2014-01-01 00:00:00"}
|
35
|
+
loaddata.test: {"id":112,"txt":"hoge2","txt2":"foo2","txt3":"bar2","created_at":"2014-01-01 00:00:01"}
|
36
|
+
loaddata.test: {"id":123,"txt":"hoge3","txt2":"foo3","txt3":"bar3","created_at":"2014-01-01 00:00:02"}
|
37
|
+
```
|
38
|
+
|
39
|
+
### Out.
|
40
|
+
```
|
41
|
+
mysql> desc test;
|
42
|
+
+------------+----------+------+-----+---------+----------------+
|
43
|
+
| Field | Type | Null | Key | Default | Extra |
|
44
|
+
+------------+----------+------+-----+---------+----------------+
|
45
|
+
| id | int(11) | NO | PRI | NULL | auto_increment |
|
46
|
+
| txt | text | YES | | NULL | |
|
47
|
+
| txt2 | text | YES | | NULL | |
|
48
|
+
| txt3 | text | YES | | NULL | |
|
49
|
+
| created_at | datetime | YES | | NULL | |
|
50
|
+
+------------+----------+------+-----+---------+----------------+
|
51
|
+
mysql> select * from test;
|
52
|
+
+---------------+------------------+---------------------+---------------------+---------------------+
|
53
|
+
| id | txt | txt2 | txt3 |created_at |
|
54
|
+
+---------------+------------------+---------------------+---------------------+---------------------+
|
55
|
+
| 111 | hoge | foo | bar |2014-01-01 00:00:00 |
|
56
|
+
| 112 | hoge2 | foo2 | bar2 |2014-01-01 00:00:01 |
|
57
|
+
| 113 | hoge3 | foo3 | bar3 |2014-01-01 00:00:02 |
|
58
|
+
+---------------+------------------+---------------------+---------------------+---------------------+
|
59
|
+
```
|
60
|
+
|
61
|
+
## Ex2.
|
62
|
+
```
|
63
|
+
<match loaddata.**>
|
64
|
+
type mysql_load
|
65
|
+
host localhost
|
66
|
+
port 3306
|
67
|
+
username taro
|
68
|
+
password abcdefg
|
69
|
+
database fluentd
|
70
|
+
key_names dummy1,dummy2,dummy3,create_d
|
71
|
+
column_names txt,txt2,txt3,created_at
|
72
|
+
|
73
|
+
buffer_type file
|
74
|
+
buffer_path /var/log/fluent/test.*.buffer
|
75
|
+
flush_interval 60s
|
76
|
+
</match>
|
77
|
+
```
|
78
|
+
|
79
|
+
### In.
|
80
|
+
```
|
81
|
+
loaddata.test: {"dummy1":"hoge","dummy2":"foo","dummy3":"bar","create_d":"2014-01-01 00:00:00"}
|
82
|
+
loaddata.test: {"dummy1":"hoge2","dummy2":"foo2","dummy3":"bar2","create_d":"2014-01-01 00:00:01"}
|
83
|
+
loaddata.test: {"dummy1":"hoge3","dummy2":"foo3","dummy3":"bar3","create_d":"2014-01-01 00:00:02"}
|
84
|
+
```
|
85
|
+
|
86
|
+
### Out.
|
87
|
+
```
|
88
|
+
mysql> desc test;
|
89
|
+
+------------+----------+------+-----+---------+----------------+
|
90
|
+
| Field | Type | Null | Key | Default | Extra |
|
91
|
+
+------------+----------+------+-----+---------+----------------+
|
92
|
+
| id | int(11) | NO | PRI | NULL | auto_increment |
|
93
|
+
| txt | text | YES | | NULL | |
|
94
|
+
| txt2 | text | YES | | NULL | |
|
95
|
+
| txt3 | text | YES | | NULL | |
|
96
|
+
| created_at | datetime | YES | | NULL | |
|
97
|
+
+------------+----------+------+-----+---------+----------------+
|
98
|
+
mysql> select * from test;
|
99
|
+
+---------------+------------------+---------------------+---------------------+---------------------+
|
100
|
+
| id | txt | txt2 | txt3 |created_at |
|
101
|
+
+---------------+------------------+---------------------+---------------------+---------------------+
|
102
|
+
| 1 | hoge | foo | bar |2014-01-01 00:00:00 |
|
103
|
+
| 2 | hoge2 | foo2 | bar2 |2014-01-01 00:00:01 |
|
104
|
+
| 3 | hoge3 | foo3 | bar3 |2014-01-01 00:00:02 |
|
105
|
+
+---------------+------------------+---------------------+---------------------+---------------------+
|
106
|
+
```
|
107
|
+
|
108
|
+
## Ex3.
|
15
109
|
```
|
16
110
|
<match loaddata.**>
|
17
111
|
type mysql_load
|
18
|
-
|
112
|
+
host localhost
|
113
|
+
port 3306
|
114
|
+
username taro
|
115
|
+
password abcdefg
|
19
116
|
database fluentd
|
20
|
-
|
21
|
-
|
117
|
+
key_names dummy1,dummy2,dummy3,${time}
|
118
|
+
column_names txt,txt2,txt3,created_at
|
22
119
|
|
23
120
|
buffer_type file
|
24
121
|
buffer_path /var/log/fluent/test.*.buffer
|
@@ -26,58 +123,91 @@ Internal processing uses the "LOAD DATA INFILE".
|
|
26
123
|
</match>
|
27
124
|
```
|
28
125
|
|
29
|
-
|
126
|
+
### In.
|
30
127
|
```
|
31
|
-
loaddata.test: {"
|
32
|
-
loaddata.test: {"
|
33
|
-
loaddata.test: {"
|
128
|
+
loaddata.test: {"dummy1":"hoge","dummy2":"foo","dummy3":"bar"}
|
129
|
+
loaddata.test: {"dummy1":"hoge2","dummy2":"foo2","dummy3":"bar2"}
|
130
|
+
loaddata.test: {"dummy1":"hoge3","dummy2":"foo3","dummy3":"bar3"}
|
34
131
|
```
|
35
132
|
|
36
|
-
|
133
|
+
### Out.
|
37
134
|
```
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
|
43
|
-
|
44
|
-
|
135
|
+
mysql> desc test;
|
136
|
+
+------------+----------+------+-----+---------+----------------+
|
137
|
+
| Field | Type | Null | Key | Default | Extra |
|
138
|
+
+------------+----------+------+-----+---------+----------------+
|
139
|
+
| id | int(11) | NO | PRI | NULL | auto_increment |
|
140
|
+
| txt | text | YES | | NULL | |
|
141
|
+
| txt2 | text | YES | | NULL | |
|
142
|
+
| txt3 | text | YES | | NULL | |
|
143
|
+
| created_at | datetime | YES | | NULL | |
|
144
|
+
+------------+----------+------+-----+---------+----------------+
|
145
|
+
mysql> select * from test;
|
146
|
+
+---------------+------------------+---------------------+---------------------+---------------------+
|
147
|
+
| id | txt | txt2 | txt3 |created_at |
|
148
|
+
+---------------+------------------+---------------------+---------------------+---------------------+
|
149
|
+
| 1 | hoge | foo | bar |2014-01-01 00:00:00 |
|
150
|
+
| 2 | hoge2 | foo2 | bar2 |2014-01-01 00:00:01 |
|
151
|
+
| 3 | hoge3 | foo3 | bar3 |2014-01-01 00:00:02 |
|
152
|
+
+---------------+------------------+---------------------+---------------------+---------------------+
|
45
153
|
```
|
46
154
|
|
47
155
|
# Parameters
|
48
156
|
|
49
|
-
* host(option)
|
157
|
+
* **host** (option)
|
50
158
|
|
51
159
|
Set the host name of MySQL Server.The default is "localhost".
|
52
160
|
|
53
|
-
* port(option)
|
161
|
+
* **port** (option)
|
54
162
|
|
55
163
|
Set the port of MySQL Server.The default is "3306".
|
56
164
|
|
57
|
-
* username(option)
|
165
|
+
* **username** (option)
|
58
166
|
|
59
167
|
Set the user of MySQL Server.The default is "root".
|
60
168
|
|
61
|
-
* password(option)
|
169
|
+
* **password** (option)
|
62
170
|
|
63
171
|
Set the password of MySQL Server.The default is ""(blank).
|
64
172
|
|
65
|
-
* database(required)
|
173
|
+
* **database** (required)
|
66
174
|
|
67
175
|
Set the database of MySQL Server.
|
68
176
|
|
69
|
-
* tablename(required)
|
177
|
+
* **tablename** (required)
|
70
178
|
|
71
179
|
Set the table name of the import data.
|
72
180
|
|
73
|
-
*
|
181
|
+
* **key_names** (option)
|
74
182
|
|
75
|
-
|
183
|
+
It is possible to specify the key for JSON input.
|
76
184
|
|
77
|
-
|
185
|
+
Will be converted to a format in this embedding ${time}. (Format:'%Y-%m-%d %H:%M:%S')
|
186
|
+
|
187
|
+
|
188
|
+
* **column_names** (required)
|
189
|
+
|
190
|
+
Set if you want to specify the column of the table of data import destination.
|
191
|
+
|
192
|
+
If you do not specify a "key_names" parameters, to be used as a key input value of JSON the parameters specified in the "column_names".
|
193
|
+
|
194
|
+
* **encoding** (option)
|
78
195
|
|
79
196
|
Set the encode of MySQL Server.The default is "utf8".
|
80
197
|
|
198
|
+
And Buffer Plugin Parameters...
|
199
|
+
|
200
|
+
* [memory Buffer Plugin](http://docs.fluentd.org/articles/buf_memory)
|
201
|
+
* [file Buffer Plugin](http://docs.fluentd.org/articles/buf_file)
|
202
|
+
|
203
|
+
And Logging of Fluentd Parameters...(>=v0.10.43)
|
204
|
+
|
205
|
+
* [Logging of Fluentd](http://docs.fluentd.org/articles/logging#per-plugin-log-fluentd-v01043-and-above)
|
206
|
+
|
207
|
+
|
208
|
+
# ChangeLog
|
209
|
+
|
210
|
+
See [CHANGELOG.md](https://github.com/fukuiretu/fluent-plugin-mysql-load/blob/master/CHANGELOG.md) for details.
|
81
211
|
|
82
212
|
# Copyright
|
83
213
|
Copyright:: Copyright (c) 2014- Fukui ReTu License:: Apache License, Version 2.0
|
@@ -1,11 +1,11 @@
|
|
1
1
|
# coding: utf-8
|
2
2
|
Gem::Specification.new do |spec|
|
3
3
|
spec.name = "fluent-plugin-mysql-load"
|
4
|
-
spec.version = "0.0.
|
4
|
+
spec.version = "0.0.2"
|
5
5
|
spec.authors = ["Fukui ReTu"]
|
6
6
|
spec.email = ["s0232101@gmail.com"]
|
7
|
-
spec.description = %q{
|
8
|
-
spec.summary = %q{
|
7
|
+
spec.description = %q{BufferedOutput plugin to mysql import}
|
8
|
+
spec.summary = %q{BufferedOutput plugin to mysql import}
|
9
9
|
spec.homepage = "https://github.com/fukuiretu/fluent-plugin-mysql-load"
|
10
10
|
spec.license = "APL2.0"
|
11
11
|
|
@@ -19,4 +19,4 @@ Gem::Specification.new do |spec|
|
|
19
19
|
spec.add_development_dependency "rake"
|
20
20
|
spec.add_runtime_dependency "fluentd"
|
21
21
|
spec.add_runtime_dependency "mysql2"
|
22
|
-
end
|
22
|
+
end
|
@@ -21,17 +21,19 @@ module Fluent
|
|
21
21
|
config_param :password, :string, :default => nil
|
22
22
|
config_param :database, :string, :default => nil
|
23
23
|
config_param :tablename, :string, :default => nil
|
24
|
-
config_param :
|
24
|
+
config_param :key_names, :string, :default => nil
|
25
|
+
config_param :column_names, :string, :default => nil
|
25
26
|
config_param :encoding, :string, :default => 'utf8'
|
26
27
|
|
27
28
|
def configure(conf)
|
28
29
|
super
|
29
|
-
if @database.nil? || @tablename.nil?
|
30
|
-
raise Fluent::ConfigError, "database and tablename is required
|
30
|
+
if @database.nil? || @tablename.nil? || @column_names.nil?
|
31
|
+
raise Fluent::ConfigError, "database and tablename and column_names is required."
|
31
32
|
end
|
32
33
|
|
33
|
-
|
34
|
-
|
34
|
+
@key_names = @key_names.nil? ? @column_names.split(',') : @key_names.split(',')
|
35
|
+
unless @column_names.split(',').count == @key_names.count
|
36
|
+
raise Fluent::ConfigError, "It does not take the integrity of the key_names and column_names."
|
35
37
|
end
|
36
38
|
end
|
37
39
|
|
@@ -44,36 +46,30 @@ module Fluent
|
|
44
46
|
end
|
45
47
|
|
46
48
|
def format(tag, time, record)
|
47
|
-
|
49
|
+
values = @key_names.map { |k|
|
50
|
+
k == '${time}' ? Time.at(time).strftime('%Y-%m-%d %H:%M:%S') : record[k]
|
51
|
+
}
|
52
|
+
values.to_msgpack
|
48
53
|
end
|
49
54
|
|
50
55
|
def write(chunk)
|
51
|
-
|
52
|
-
|
56
|
+
data_count = 0
|
57
|
+
tmp = Tempfile.new("mysql-loaddata")
|
53
58
|
chunk.msgpack_each { |record|
|
54
|
-
|
55
|
-
|
56
|
-
# columnsが指定されている場合はそっちを有効にする
|
57
|
-
keys = @columns.nil? ? record.keys : @columns
|
58
|
-
end
|
59
|
-
|
60
|
-
values = []
|
61
|
-
keys.each{ |key|
|
62
|
-
values << record[key]
|
63
|
-
}
|
64
|
-
|
65
|
-
tmp.write values.join("\t") + "\n"
|
59
|
+
tmp.write record.join("\t") + "\n"
|
60
|
+
data_count += 1
|
66
61
|
}
|
67
62
|
tmp.close
|
68
63
|
|
69
|
-
query = QUERY_TEMPLATE % ([tmp.path, @tablename, keys.join(",")])
|
70
|
-
|
71
64
|
conn = get_connection
|
72
|
-
conn.query(
|
65
|
+
conn.query(QUERY_TEMPLATE % ([tmp.path, @tablename, @column_names]))
|
73
66
|
conn.close
|
67
|
+
|
68
|
+
log.info "number that is registered in the \"%s:%s\" table is %d" % ([@database, @tablename, data_count])
|
74
69
|
end
|
75
70
|
|
76
71
|
private
|
72
|
+
|
77
73
|
def get_connection
|
78
74
|
Mysql2::Client.new({
|
79
75
|
:host => @host,
|
@@ -81,7 +77,8 @@ module Fluent
|
|
81
77
|
:username => @username,
|
82
78
|
:password => @password,
|
83
79
|
:database => @database,
|
84
|
-
:encoding => @encoding
|
80
|
+
:encoding => @encoding,
|
81
|
+
:local_infile => true
|
85
82
|
})
|
86
83
|
end
|
87
84
|
end
|
@@ -8,6 +8,7 @@ class MysqlLoadOutputTest < Test::Unit::TestCase
|
|
8
8
|
CONFIG = %[
|
9
9
|
database fluentd
|
10
10
|
tablename test
|
11
|
+
column_names a,b,c,d,e
|
11
12
|
]
|
12
13
|
|
13
14
|
def create_driver(conf = CONFIG, tag='test')
|
@@ -16,7 +17,7 @@ class MysqlLoadOutputTest < Test::Unit::TestCase
|
|
16
17
|
|
17
18
|
def test_configure_default
|
18
19
|
d = create_driver
|
19
|
-
|
20
|
+
|
20
21
|
assert_equal 'localhost', d.instance.host
|
21
22
|
assert_equal 3306, d.instance.port
|
22
23
|
assert_equal 'root', d.instance.username
|
@@ -32,9 +33,31 @@ class MysqlLoadOutputTest < Test::Unit::TestCase
|
|
32
33
|
database db
|
33
34
|
encoding sjis
|
34
35
|
tablename test
|
35
|
-
|
36
|
+
column_names a,b,c,d,e
|
37
|
+
]
|
38
|
+
|
39
|
+
assert_equal 'abcde', d.instance.host
|
40
|
+
assert_equal 33306, d.instance.port
|
41
|
+
assert_equal 'taro', d.instance.username
|
42
|
+
assert_equal 'pldoeudku', d.instance.password
|
43
|
+
assert_equal 'db', d.instance.database
|
44
|
+
assert_equal 'sjis', d.instance.encoding
|
45
|
+
assert_equal 'test', d.instance.tablename
|
46
|
+
assert_equal 'a,b,c,d,e', d.instance.column_names
|
47
|
+
assert_equal ['a', 'b', 'c', 'd', 'e'], d.instance.key_names
|
48
|
+
|
49
|
+
d = create_driver %[
|
50
|
+
host abcde
|
51
|
+
port 33306
|
52
|
+
username taro
|
53
|
+
password pldoeudku
|
54
|
+
database db
|
55
|
+
encoding sjis
|
56
|
+
tablename test
|
57
|
+
column_names a,b,c,d,e
|
58
|
+
key_names f,g,h,i,j
|
36
59
|
]
|
37
|
-
|
60
|
+
|
38
61
|
assert_equal 'abcde', d.instance.host
|
39
62
|
assert_equal 33306, d.instance.port
|
40
63
|
assert_equal 'taro', d.instance.username
|
@@ -42,7 +65,8 @@ class MysqlLoadOutputTest < Test::Unit::TestCase
|
|
42
65
|
assert_equal 'db', d.instance.database
|
43
66
|
assert_equal 'sjis', d.instance.encoding
|
44
67
|
assert_equal 'test', d.instance.tablename
|
45
|
-
assert_equal
|
68
|
+
assert_equal 'a,b,c,d,e', d.instance.column_names
|
69
|
+
assert_equal ['f', 'g', 'h', 'i', 'j'], d.instance.key_names
|
46
70
|
end
|
47
71
|
|
48
72
|
def test_configure_error
|
@@ -54,7 +78,31 @@ class MysqlLoadOutputTest < Test::Unit::TestCase
|
|
54
78
|
password pldoeudku
|
55
79
|
encoding sjis
|
56
80
|
tablename test
|
57
|
-
|
81
|
+
column_names a,b,c,d,e
|
82
|
+
]
|
83
|
+
end
|
84
|
+
|
85
|
+
assert_raise(Fluent::ConfigError) do
|
86
|
+
create_driver %[
|
87
|
+
host abcde
|
88
|
+
port 33306
|
89
|
+
username taro
|
90
|
+
password pldoeudku
|
91
|
+
database db
|
92
|
+
encoding sjis
|
93
|
+
column_names a,b,c,d,e
|
94
|
+
]
|
95
|
+
end
|
96
|
+
|
97
|
+
assert_raise(Fluent::ConfigError) do
|
98
|
+
create_driver %[
|
99
|
+
host abcde
|
100
|
+
port 33306
|
101
|
+
username taro
|
102
|
+
password pldoeudku
|
103
|
+
database db
|
104
|
+
tablename test
|
105
|
+
encoding sjis
|
58
106
|
]
|
59
107
|
end
|
60
108
|
|
@@ -65,25 +113,34 @@ class MysqlLoadOutputTest < Test::Unit::TestCase
|
|
65
113
|
username taro
|
66
114
|
password pldoeudku
|
67
115
|
database db
|
116
|
+
tablename test
|
117
|
+
column_names a,b,c,d,e
|
118
|
+
key_names a,b,c,d,e,f,g
|
68
119
|
encoding sjis
|
69
|
-
columns a,b,c,d,e
|
70
120
|
]
|
71
121
|
end
|
72
122
|
end
|
73
123
|
|
74
124
|
def test_format
|
75
|
-
d = create_driver
|
125
|
+
d = create_driver %[
|
126
|
+
host localhost
|
127
|
+
port 3306
|
128
|
+
username root
|
129
|
+
database fluentd
|
130
|
+
tablename test
|
131
|
+
column_names id,txt,txt2
|
132
|
+
]
|
76
133
|
|
77
134
|
d.emit({"id"=>1, "txt" => "hoge", "txt2" => "foo"})
|
78
135
|
d.emit({"id"=>2, "txt" => "hoge2", "txt2" => "foo2"})
|
79
136
|
|
80
|
-
d.expect_format(
|
81
|
-
d.expect_format(
|
137
|
+
d.expect_format([1, "hoge", "foo"].to_msgpack)
|
138
|
+
d.expect_format([2, "hoge2", "foo2"].to_msgpack)
|
82
139
|
|
83
|
-
|
140
|
+
d.run
|
84
141
|
end
|
85
142
|
|
86
143
|
def test_write
|
87
144
|
# TODO
|
88
145
|
end
|
89
|
-
end
|
146
|
+
end
|
metadata
CHANGED
@@ -1,18 +1,20 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fluent-plugin-mysql-load
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.2
|
5
|
+
prerelease:
|
5
6
|
platform: ruby
|
6
7
|
authors:
|
7
8
|
- Fukui ReTu
|
8
9
|
autorequire:
|
9
10
|
bindir: bin
|
10
11
|
cert_chain: []
|
11
|
-
date: 2014-05-
|
12
|
+
date: 2014-05-17 00:00:00.000000000 Z
|
12
13
|
dependencies:
|
13
14
|
- !ruby/object:Gem::Dependency
|
14
15
|
name: bundler
|
15
16
|
requirement: !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
16
18
|
requirements:
|
17
19
|
- - ~>
|
18
20
|
- !ruby/object:Gem::Version
|
@@ -20,6 +22,7 @@ dependencies:
|
|
20
22
|
type: :development
|
21
23
|
prerelease: false
|
22
24
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
23
26
|
requirements:
|
24
27
|
- - ~>
|
25
28
|
- !ruby/object:Gem::Version
|
@@ -27,46 +30,52 @@ dependencies:
|
|
27
30
|
- !ruby/object:Gem::Dependency
|
28
31
|
name: rake
|
29
32
|
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
30
34
|
requirements:
|
31
|
-
- - '>='
|
35
|
+
- - ! '>='
|
32
36
|
- !ruby/object:Gem::Version
|
33
37
|
version: '0'
|
34
38
|
type: :development
|
35
39
|
prerelease: false
|
36
40
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
37
42
|
requirements:
|
38
|
-
- - '>='
|
43
|
+
- - ! '>='
|
39
44
|
- !ruby/object:Gem::Version
|
40
45
|
version: '0'
|
41
46
|
- !ruby/object:Gem::Dependency
|
42
47
|
name: fluentd
|
43
48
|
requirement: !ruby/object:Gem::Requirement
|
49
|
+
none: false
|
44
50
|
requirements:
|
45
|
-
- - '>='
|
51
|
+
- - ! '>='
|
46
52
|
- !ruby/object:Gem::Version
|
47
53
|
version: '0'
|
48
54
|
type: :runtime
|
49
55
|
prerelease: false
|
50
56
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
51
58
|
requirements:
|
52
|
-
- - '>='
|
59
|
+
- - ! '>='
|
53
60
|
- !ruby/object:Gem::Version
|
54
61
|
version: '0'
|
55
62
|
- !ruby/object:Gem::Dependency
|
56
63
|
name: mysql2
|
57
64
|
requirement: !ruby/object:Gem::Requirement
|
65
|
+
none: false
|
58
66
|
requirements:
|
59
|
-
- - '>='
|
67
|
+
- - ! '>='
|
60
68
|
- !ruby/object:Gem::Version
|
61
69
|
version: '0'
|
62
70
|
type: :runtime
|
63
71
|
prerelease: false
|
64
72
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
65
74
|
requirements:
|
66
|
-
- - '>='
|
75
|
+
- - ! '>='
|
67
76
|
- !ruby/object:Gem::Version
|
68
77
|
version: '0'
|
69
|
-
description:
|
78
|
+
description: BufferedOutput plugin to mysql import
|
70
79
|
email:
|
71
80
|
- s0232101@gmail.com
|
72
81
|
executables: []
|
@@ -75,6 +84,7 @@ extra_rdoc_files: []
|
|
75
84
|
files:
|
76
85
|
- .gitignore
|
77
86
|
- .travis.yml
|
87
|
+
- CHANGELOG.md
|
78
88
|
- Gemfile
|
79
89
|
- LICENSE.txt
|
80
90
|
- README.md
|
@@ -89,27 +99,28 @@ files:
|
|
89
99
|
homepage: https://github.com/fukuiretu/fluent-plugin-mysql-load
|
90
100
|
licenses:
|
91
101
|
- APL2.0
|
92
|
-
metadata: {}
|
93
102
|
post_install_message:
|
94
103
|
rdoc_options: []
|
95
104
|
require_paths:
|
96
105
|
- lib
|
97
106
|
required_ruby_version: !ruby/object:Gem::Requirement
|
107
|
+
none: false
|
98
108
|
requirements:
|
99
|
-
- - '>='
|
109
|
+
- - ! '>='
|
100
110
|
- !ruby/object:Gem::Version
|
101
111
|
version: '0'
|
102
112
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
113
|
+
none: false
|
103
114
|
requirements:
|
104
|
-
- - '>='
|
115
|
+
- - ! '>='
|
105
116
|
- !ruby/object:Gem::Version
|
106
117
|
version: '0'
|
107
118
|
requirements: []
|
108
119
|
rubyforge_project: fluent-plugin-mysql-load
|
109
|
-
rubygems_version:
|
120
|
+
rubygems_version: 1.8.23
|
110
121
|
signing_key:
|
111
|
-
specification_version:
|
112
|
-
summary:
|
122
|
+
specification_version: 3
|
123
|
+
summary: BufferedOutput plugin to mysql import
|
113
124
|
test_files:
|
114
125
|
- test/helper.rb
|
115
126
|
- test/plugin/test_out_mysql_load.rb
|
checksums.yaml
DELETED
@@ -1,7 +0,0 @@
|
|
1
|
-
---
|
2
|
-
SHA1:
|
3
|
-
metadata.gz: 694e88114b2538b250ecbf498b4351f06fdda1d0
|
4
|
-
data.tar.gz: 0d9d81e11ca091d49b1fd8620902d71a8740dcae
|
5
|
-
SHA512:
|
6
|
-
metadata.gz: b93240239bcaac9cb8ab02480a73cb55bd873e60f686a6cee1b6a81d571d0aa097ace435c5c2a57c74ff261168c9c52e11542dd44787bebb1906e1d6ba449aa1
|
7
|
-
data.tar.gz: b32a77a8148fe0b9dea6daebfbb448eeb8b63a5c233657fb670de6922230e66eba3030b6e1f23fa9c91d2d614bb04925c5a249b14136c133042f4c71bb85a88d
|