fluent-plugin-multiprocess 0.1.2 → 0.2.0
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.
- checksums.yaml +5 -13
- data/README.md +14 -7
- data/VERSION +1 -1
- data/fluent-plugin-multiprocess.gemspec +2 -2
- data/lib/fluent/plugin/in_multiprocess.rb +16 -0
- metadata +16 -17
checksums.yaml
CHANGED
@@ -1,15 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
|
5
|
-
data.tar.gz: !binary |-
|
6
|
-
MzQ1ZTUyOGE3NTdhMDE1NTkyODM0YjZkOWZjOGVlNDBjMTFlNzg0Nw==
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: e48192b877aec8789d3f5b8cf783809230b04995
|
4
|
+
data.tar.gz: e5a6014ced8cc68e46dfb46e1d7a9cf46ec8ea11
|
7
5
|
SHA512:
|
8
|
-
metadata.gz:
|
9
|
-
|
10
|
-
MWZlOThiMDdiZTZhOTljMjhhM2EyYjhjYjkzMjhkMjEyNjgzM2NlMTFkMjMx
|
11
|
-
OGU5MjA3ZGRmN2EyN2Q0OTliNTQ3MjA3NTg3Y2YxMzMyYmJhN2I=
|
12
|
-
data.tar.gz: !binary |-
|
13
|
-
NDZiZTZiZDk2ZjU3NGFhMzg3MTk3NmU4ZDU4YjFhZjA2ZjgwYWRjMGJjMzY5
|
14
|
-
M2E3MjlmZmZhYjk2Mzk5ZDEyNzFjOWE5ZmNhMzY4MWY5ODVjYTM5MmRmYjJk
|
15
|
-
OGQ5MDQ5ODEyNGY3YTg3NWZkMmIyZDkwNTA4NjU4NTRjODYxYWE=
|
6
|
+
metadata.gz: 3188545bc5a4d78367f297a6d37ebddead7051c24e54b3774b9a08bb339c131013454af251bd40bbd0d0c6a5fd329153ae8eb2b45b339dae1a13f53f06561ec0
|
7
|
+
data.tar.gz: 6ae0935a863b11210207409e7fc430a15018e0785ea0714ab540528449a61c734cfa54e91791254a753d744781e86afec072a913927e4870aed3d6c3e7c0bb2c
|
data/README.md
CHANGED
@@ -20,20 +20,27 @@ This plugin just controls start & shutdown of child processes.
|
|
20
20
|
#graceful_kill_timeout 60s
|
21
21
|
|
22
22
|
<process>
|
23
|
-
cmdline -c /etc/fluent/fluentd_child1.conf
|
23
|
+
cmdline -c /etc/fluent/fluentd_child1.conf --log /var/log/fluent/fluentd_child1.log
|
24
|
+
pid_file /var/run/fluentd_child1.pid
|
24
25
|
</process>
|
25
26
|
<process>
|
26
|
-
cmdline -c /etc/fluent/fluentd_child2.conf
|
27
|
+
cmdline -c /etc/fluent/fluentd_child2.conf --log /var/log/fluent/fluentd_child2.log
|
27
28
|
sleep_before_start 5s
|
29
|
+
pid_file /var/run/fluentd_child2.pid
|
28
30
|
</process>
|
29
31
|
<process>
|
30
|
-
cmdline -c /etc/fluent/fluentd_child3.conf
|
32
|
+
cmdline -c /etc/fluent/fluentd_child3.conf --log /var/log/fluent/fluentd_child3.log
|
31
33
|
sleep_before_shutdown 5s
|
34
|
+
pid_file /var/run/fluentd_child3.pid
|
32
35
|
</process>
|
33
36
|
</source>
|
34
37
|
|
35
|
-
- **process
|
36
|
-
- **cmdline
|
37
|
-
- **sleep\_before\_start
|
38
|
-
- **sleep\_before\_shutdown
|
38
|
+
- **process**: section sets command line arguments of a child process. This plugin creates one child process for each \<process\> section
|
39
|
+
- **cmdline**: This parameter is required in a \<process\> section
|
40
|
+
- **sleep\_before\_start**: Optional. Sets wait time before starting the process. Note that child processes **start from last to first** (`fluentd_child3` -\> `sleep 5` -\> { `fluentd_child2`, `fluentd_child1` } in this case)
|
41
|
+
- **sleep\_before\_shutdown**: Optional. Sets wait time before shutting down the process. Note that child processes **shutdown from first to last** ({ `fluentd_child1`, `fluentd_child2` } -\> `sleep 5` -> `fluentd_child3` in this case)
|
42
|
+
- **pid_file**: Optional. Writes child process id to this file. This is useful for sending a signal to child processes.
|
39
43
|
|
44
|
+
### Logs for daemonized processes
|
45
|
+
|
46
|
+
Daemonized fluentd closes its STDOUT. So child processes on daemonized fluentd & in_multiprocess doesn't put its logs without `--log` option. Specifing `--log` option always is best practice to help this situation.
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.
|
1
|
+
0.2.0
|
@@ -17,7 +17,7 @@ Gem::Specification.new do |gem|
|
|
17
17
|
gem.require_paths = ['lib']
|
18
18
|
gem.license = "Apache 2.0"
|
19
19
|
|
20
|
-
gem.add_dependency "fluentd", [">= 0.10.0", "<
|
21
|
-
gem.add_dependency "serverengine", "~> 1.
|
20
|
+
gem.add_dependency "fluentd", [">= 0.10.0", "< 2"]
|
21
|
+
gem.add_dependency "serverengine", "~> 1.6"
|
22
22
|
gem.add_development_dependency "rake", ">= 0.9.2"
|
23
23
|
end
|
@@ -35,6 +35,7 @@ module Fluent
|
|
35
35
|
config_param :sleep_before_start, :time, :default => 0
|
36
36
|
config_param :sleep_before_shutdown, :time, :default => 0
|
37
37
|
config_param :keep_file_descriptors, :bool, :default => nil
|
38
|
+
config_param :pid_file, :string, :default => nil
|
38
39
|
|
39
40
|
attr_accessor :process_monitor
|
40
41
|
end
|
@@ -72,6 +73,8 @@ module Fluent
|
|
72
73
|
keep_file_descriptors = pe.keep_file_descriptors.nil? ? @keep_file_descriptors : pe.keep_file_descriptors
|
73
74
|
options = {:close_others => !keep_file_descriptors}
|
74
75
|
pe.process_monitor = @pm.spawn(cmd, options)
|
76
|
+
|
77
|
+
create_pid_file(pe) if pe.pid_file
|
75
78
|
end
|
76
79
|
end
|
77
80
|
|
@@ -84,6 +87,19 @@ module Fluent
|
|
84
87
|
@processes.each {|pe|
|
85
88
|
pe.process_monitor.join
|
86
89
|
}
|
90
|
+
@processes.each { |pe|
|
91
|
+
delete_pid_file(pe) if pe.pid_file
|
92
|
+
}
|
93
|
+
end
|
94
|
+
|
95
|
+
def create_pid_file(pe)
|
96
|
+
File.open(pe.pid_file, "w") { |f|
|
97
|
+
f.write pe.process_monitor.pid
|
98
|
+
}
|
99
|
+
end
|
100
|
+
|
101
|
+
def delete_pid_file(pe)
|
102
|
+
File.unlink(pe.pid_file) if File.exist?(pe.pid_file)
|
87
103
|
end
|
88
104
|
end
|
89
105
|
|
metadata
CHANGED
@@ -1,61 +1,61 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fluent-plugin-multiprocess
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sadayuki Furuhashi
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2016-03-17 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.0
|
20
|
-
- - <
|
20
|
+
- - "<"
|
21
21
|
- !ruby/object:Gem::Version
|
22
|
-
version:
|
22
|
+
version: '2'
|
23
23
|
type: :runtime
|
24
24
|
prerelease: false
|
25
25
|
version_requirements: !ruby/object:Gem::Requirement
|
26
26
|
requirements:
|
27
|
-
- -
|
27
|
+
- - ">="
|
28
28
|
- !ruby/object:Gem::Version
|
29
29
|
version: 0.10.0
|
30
|
-
- - <
|
30
|
+
- - "<"
|
31
31
|
- !ruby/object:Gem::Version
|
32
|
-
version:
|
32
|
+
version: '2'
|
33
33
|
- !ruby/object:Gem::Dependency
|
34
34
|
name: serverengine
|
35
35
|
requirement: !ruby/object:Gem::Requirement
|
36
36
|
requirements:
|
37
|
-
- - ~>
|
37
|
+
- - "~>"
|
38
38
|
- !ruby/object:Gem::Version
|
39
|
-
version: 1.
|
39
|
+
version: '1.6'
|
40
40
|
type: :runtime
|
41
41
|
prerelease: false
|
42
42
|
version_requirements: !ruby/object:Gem::Requirement
|
43
43
|
requirements:
|
44
|
-
- - ~>
|
44
|
+
- - "~>"
|
45
45
|
- !ruby/object:Gem::Version
|
46
|
-
version: 1.
|
46
|
+
version: '1.6'
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: rake
|
49
49
|
requirement: !ruby/object:Gem::Requirement
|
50
50
|
requirements:
|
51
|
-
- -
|
51
|
+
- - ">="
|
52
52
|
- !ruby/object:Gem::Version
|
53
53
|
version: 0.9.2
|
54
54
|
type: :development
|
55
55
|
prerelease: false
|
56
56
|
version_requirements: !ruby/object:Gem::Requirement
|
57
57
|
requirements:
|
58
|
-
- -
|
58
|
+
- - ">="
|
59
59
|
- !ruby/object:Gem::Version
|
60
60
|
version: 0.9.2
|
61
61
|
description: Multiprocess agent plugin for Fluentd event collector
|
@@ -82,12 +82,12 @@ require_paths:
|
|
82
82
|
- lib
|
83
83
|
required_ruby_version: !ruby/object:Gem::Requirement
|
84
84
|
requirements:
|
85
|
-
- -
|
85
|
+
- - ">="
|
86
86
|
- !ruby/object:Gem::Version
|
87
87
|
version: '0'
|
88
88
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
89
89
|
requirements:
|
90
|
-
- -
|
90
|
+
- - ">="
|
91
91
|
- !ruby/object:Gem::Version
|
92
92
|
version: '0'
|
93
93
|
requirements: []
|
@@ -97,4 +97,3 @@ signing_key:
|
|
97
97
|
specification_version: 4
|
98
98
|
summary: Multiprocess agent plugin for Fluentd event collector
|
99
99
|
test_files: []
|
100
|
-
has_rdoc: false
|