fluent-plugin-tail-multiline 0.1.2 → 0.1.3
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/README.md +2 -0
- data/fluent-plugin-tail-multiline.gemspec +1 -1
- data/lib/fluent/plugin/in_tail_multiline.rb +14 -0
- metadata +9 -5
- checksums.yaml +0 -7
data/README.md
CHANGED
@@ -24,9 +24,11 @@ Tail-Multiline extends [tail plugin](http://docs.fluentd.org/categories/in_tail)
|
|
24
24
|
### Additional Parameters
|
25
25
|
name | type | description
|
26
26
|
----------------------|---------------------------------|---------------------------
|
27
|
+
type | string (required) | type of plugin should be **tail_multiline**
|
27
28
|
format_firstline | string(default = format) | RegEx to detect first line of multiple line log, no name capture required
|
28
29
|
rawdata_key | string(default = null) | Store raw data with given key
|
29
30
|
format{1..20} | string(default = null) | The substitute for too long `format`
|
31
|
+
read_newfile_from_head| bool(default = false) | Read new logfile from head
|
30
32
|
|
31
33
|
## Examples
|
32
34
|
### Java log with exception
|
@@ -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-tail-multiline"
|
7
|
-
gem.version = "0.1.
|
7
|
+
gem.version = "0.1.3"
|
8
8
|
gem.authors = ["Tomohisa Ota"]
|
9
9
|
gem.email = ["tomohisa.ota+github@gmail.com"]
|
10
10
|
gem.description = "Extend tail plugin to support log with multiple line"
|
@@ -52,6 +52,7 @@ module Fluent
|
|
52
52
|
config_param :format_firstline, :string, :default => nil
|
53
53
|
config_param :rawdata_key, :string, :default => nil
|
54
54
|
config_param :auto_flush_sec, :integer, :default => 1
|
55
|
+
config_param :read_newfile_from_head, :bool, :default => false
|
55
56
|
(1..FORMAT_MAX_NUM).each do |i|
|
56
57
|
config_param "format#{i}".to_sym, :string, :default => nil
|
57
58
|
end
|
@@ -83,6 +84,19 @@ module Fluent
|
|
83
84
|
conf['format'] = '/' + formats + '/'
|
84
85
|
end
|
85
86
|
super
|
87
|
+
if read_newfile_from_head and @pf
|
88
|
+
# Tread new file as rotated file
|
89
|
+
# Use temp file inode number as previos logfile
|
90
|
+
@paths.map {|path|
|
91
|
+
pe = @pf[path]
|
92
|
+
if pe.read_inode == 0
|
93
|
+
require 'tempfile'
|
94
|
+
tmpfile = Tempfile.new('gettempinode')
|
95
|
+
pe.update(File.stat(tmpfile).ino, 0)
|
96
|
+
tmpfile.unlink
|
97
|
+
end
|
98
|
+
}
|
99
|
+
end
|
86
100
|
end
|
87
101
|
|
88
102
|
def configure_parser(conf)
|
metadata
CHANGED
@@ -1,18 +1,20 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fluent-plugin-tail-multiline
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.3
|
5
|
+
prerelease:
|
5
6
|
platform: ruby
|
6
7
|
authors:
|
7
8
|
- Tomohisa Ota
|
8
9
|
autorequire:
|
9
10
|
bindir: bin
|
10
11
|
cert_chain: []
|
11
|
-
date: 2013-07
|
12
|
+
date: 2013-08-07 00:00:00.000000000 Z
|
12
13
|
dependencies:
|
13
14
|
- !ruby/object:Gem::Dependency
|
14
15
|
name: fluentd
|
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: :runtime
|
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
|
@@ -42,26 +45,27 @@ files:
|
|
42
45
|
- test/plugin/test_in_tail_multiline.rb
|
43
46
|
homepage: http://github.com/tomohisaota/fluent-plugin-tail-multiline
|
44
47
|
licenses: []
|
45
|
-
metadata: {}
|
46
48
|
post_install_message:
|
47
49
|
rdoc_options: []
|
48
50
|
require_paths:
|
49
51
|
- lib
|
50
52
|
required_ruby_version: !ruby/object:Gem::Requirement
|
53
|
+
none: false
|
51
54
|
requirements:
|
52
55
|
- - ! '>='
|
53
56
|
- !ruby/object:Gem::Version
|
54
57
|
version: '0'
|
55
58
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
59
|
+
none: false
|
56
60
|
requirements:
|
57
61
|
- - ! '>='
|
58
62
|
- !ruby/object:Gem::Version
|
59
63
|
version: '0'
|
60
64
|
requirements: []
|
61
65
|
rubyforge_project:
|
62
|
-
rubygems_version:
|
66
|
+
rubygems_version: 1.8.25
|
63
67
|
signing_key:
|
64
|
-
specification_version:
|
68
|
+
specification_version: 3
|
65
69
|
summary: Extend tail plugin to support log with multiple line
|
66
70
|
test_files:
|
67
71
|
- test/helper.rb
|
checksums.yaml
DELETED
@@ -1,7 +0,0 @@
|
|
1
|
-
---
|
2
|
-
SHA1:
|
3
|
-
metadata.gz: dff2631e00656f109380d6b27c4f145d8149dc45
|
4
|
-
data.tar.gz: 1a14e17bae8ef5f85754e766321354e9d6620351
|
5
|
-
SHA512:
|
6
|
-
metadata.gz: f0205218e761d286422953179e61bcce121b89af151a5e277ae7a4ae9c84198bf9d127ed24d6942a830e0b9b2229a65c587298c2cac8ac37e59b5af18dbe38de
|
7
|
-
data.tar.gz: fa0c1f06d70ad1a08bf25644f8804085ecb07e33a186f2db9e575706f4a66af69696d72c4c549e1ca581d0afdc7ca888c910e31520f5599f5a9dc1d55e98056b
|