fluentd 0.12.3 → 0.12.4

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of fluentd might be problematic. Click here for more details.

checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 5a5677f5a62821f6d9300f21eddded90ff1f0e0a
4
- data.tar.gz: 004b3bb49cd860b6132811b3cf1aa7ef89c4611f
3
+ metadata.gz: 6767a4f2dc914fc96e7d5f0118632a48727316d3
4
+ data.tar.gz: 631b3ffc84b275449c26ceff0fe3d26bb0cc8171
5
5
  SHA512:
6
- metadata.gz: 2aa4d2ef65d85eeb6df07245c6f9459b17d1a8d1546862ad7b96556d413a029dc3fff2514f49ffd1f3f307f11cf117816fcfcf28060f823525a01392c4e342fc
7
- data.tar.gz: ff625fbf8a5b70866d413b6c5e5f1b8d4ebb52acf696ee1416de2cd249ff6ca14c223a312d633027f6c21e2e7a95b150abc3a43baa116ab54b55856543375432
6
+ metadata.gz: f3bfce72a5da88d1698c8820cd3b84452962a8505e3736e9e27ccbe55877e5774cc427bbbd30ed50dfca74bb5d6c2aca4f2a259562aadccb43218300bb15d4d6
7
+ data.tar.gz: d96782300d9d439b35e836e765a4079d256df8bbce494c63309152416283826fe829ec8384fbab1dc658c9cad2643be0b737307743760e5a86ee455c15236e74
data/ChangeLog CHANGED
@@ -1,35 +1,56 @@
1
1
  # v0.12
2
2
 
3
+ ## Release 0.12.4 - 2015/01/23
4
+
5
+ ### New features / Enhancement
6
+
7
+ * Support 64bit inode environment in in_tail
8
+ https://github.com/fluent/fluentd/pull/542
9
+
10
+ ### Bug fixes
11
+
12
+ * Fix ThreadError occuring on Signal.trap SIGHUP
13
+ https://github.com/fluent/fluentd/pull/541
14
+
3
15
  ## Release 0.12.3 - 2015/01/16
4
16
 
5
17
  ### New features / Enhancement
6
18
 
7
19
  * parser: nginx and apache2 format can now parse access log without http-version
20
+ https://github.com/fluent/fluentd/pull/535
8
21
  * filter_record_transformer: Allow non-string values like array / hash
22
+ https://github.com/fluent/fluentd/pull/530
9
23
  * plugin: Add writable check for path related parameter
24
+ https://github.com/fluent/fluentd/pull/401
10
25
  * command: -g and -G now works in embedded Ruby environment like Treasure Agent
26
+ https://github.com/fluent/fluentd/pull/423
11
27
 
12
28
  ### Bug fixes
13
29
 
14
30
  * buffer: Fix to flush a buffer by USR1 signal even on retrying
31
+ https://github.com/fluent/fluentd/pull/531
15
32
  * buffer: Fix TimeSlicedOutput doesn't flush with SIGUSR1
33
+ https://github.com/fluent/fluentd/pull/533
16
34
  * buffer: Fix broken calc_retry_wait if Integer is used for retry_wait parameter
35
+ https://github.com/fluent/fluentd/pull/529
17
36
  * engine: Fix SIGHUP does not reload config
37
+ https://github.com/fluent/fluentd/pull/537
18
38
 
19
39
  ## Release 0.12.2 - 2014/12/20
20
40
 
21
- ### New Features
41
+ ### New Features / Enhancement
22
42
 
23
43
  * filter: Change filter behaviour. If filter method returns nil, its record is removed from stream.
24
-
25
- ### Enhancement
26
-
44
+ https://github.com/fluent/fluentd/pull/515
27
45
  * in_monitor_agent: Render filter plugins
46
+ https://github.com/fluent/fluentd/pull/514
28
47
  * test: FilterTestDriver has run, emit and getting result methods
48
+ https://github.com/fluent/fluentd/pull/519
29
49
 
30
50
  ### Bug fixes
31
51
 
32
52
  * test: Support @label by TestDriver
53
+ https://github.com/fluent/fluentd/pull/517
33
54
 
34
55
  ## Release 0.12.1 - 2014/12/14
35
56
 
@@ -40,7 +61,7 @@
40
61
 
41
62
  ## Release 0.12.0 - 2014/12/12
42
63
 
43
- ### New Features
64
+ ### New Features / Enhancement
44
65
 
45
66
  * config: Introduce @type and @id parameter for system parameter. type and id are still valid.
46
67
  * Filter: old tag trick of "using output plugins as filter" is no longer needed
@@ -67,9 +88,6 @@ Here is the announcement for above new features: http://www.fluentd.org/blog/flu
67
88
  https://github.com/fluent/fluentd/pull/473
68
89
  * output: Add relable output plugin
69
90
  https://github.com/fluent/fluentd/pull/417
70
-
71
- ### Enhancement
72
-
73
91
  * config: Add self.name to configure_proxy error message
74
92
  https://github.com/fluent/fluentd/pull/490
75
93
  * log: --suppress-repeated-stacktrace is true by default
@@ -597,7 +597,7 @@ module Fluent
597
597
  @file.write path
598
598
  @file.write "\t"
599
599
  seek = @file.pos
600
- @file.write "0000000000000000\t00000000\n"
600
+ @file.write "0000000000000000\t0000000000000000\n"
601
601
  @last_pos = @file.pos
602
602
 
603
603
  @map[path] = FilePositionEntry.new(@file, seek)
@@ -623,12 +623,15 @@ module Fluent
623
623
  # Clean up unwatched file entries
624
624
  def self.compact(file)
625
625
  file.pos = 0
626
- existent_entries = file.each_line.select { |line|
626
+ existent_entries = file.each_line.map { |line|
627
627
  m = /^([^\t]+)\t([0-9a-fA-F]+)\t([0-9a-fA-F]+)/.match(line)
628
628
  next unless m
629
+ path = m[1]
629
630
  pos = m[2].to_i(16)
630
- pos == UNWATCHED_POSITION ? nil : line
631
- }
631
+ ino = m[3].to_i(16)
632
+ # 32bit inode converted to 64bit at this phase
633
+ pos == UNWATCHED_POSITION ? nil : ("%s\t%016x\t%016x\n" % [path, pos, ino])
634
+ }.compact
632
635
 
633
636
  file.pos = 0
634
637
  file.truncate(0)
@@ -637,13 +640,13 @@ module Fluent
637
640
  end
638
641
 
639
642
  # pos inode
640
- # ffffffffffffffff\tffffffff\n
643
+ # ffffffffffffffff\tffffffffffffffff\n
641
644
  class FilePositionEntry
642
645
  POS_SIZE = 16
643
646
  INO_OFFSET = 17
644
- INO_SIZE = 8
645
- LN_OFFSET = 25
646
- SIZE = 26
647
+ INO_SIZE = 16
648
+ LN_OFFSET = 33
649
+ SIZE = 34
647
650
 
648
651
  def initialize(file, seek)
649
652
  @file = file
@@ -652,7 +655,7 @@ module Fluent
652
655
 
653
656
  def update(ino, pos)
654
657
  @file.pos = @seek
655
- @file.write "%016x\t%08x" % [pos, ino]
658
+ @file.write "%016x\t%016x" % [pos, ino]
656
659
  end
657
660
 
658
661
  def update_pos(pos)
@@ -662,7 +665,7 @@ module Fluent
662
665
 
663
666
  def read_inode
664
667
  @file.pos = @seek + INO_OFFSET
665
- raw = @file.read(8)
668
+ raw = @file.read(16)
666
669
  raw ? raw.to_i(16) : 0
667
670
  end
668
671
 
@@ -321,12 +321,16 @@ module Fluent
321
321
  trap :HUP do
322
322
  $log.debug "fluentd supervisor process get SIGHUP"
323
323
  $log.info "restarting"
324
- read_config
325
- apply_system_config
326
- if pid = @main_pid
327
- Process.kill(:TERM, pid)
328
- # don't resuce Erro::ESRSH here (invalid status)
329
- end
324
+ # Creating new thread due to mutex can't lock
325
+ # in main thread during trap context
326
+ Thread.new {
327
+ read_config
328
+ apply_system_config
329
+ if pid = @main_pid
330
+ Process.kill(:TERM, pid)
331
+ # don't resuce Erro::ESRSH here (invalid status)
332
+ end
333
+ }.run
330
334
  end
331
335
 
332
336
  trap :USR1 do
@@ -16,6 +16,6 @@
16
16
 
17
17
  module Fluent
18
18
 
19
- VERSION = '0.12.3'
19
+ VERSION = '0.12.4'
20
20
 
21
21
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fluentd
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.12.3
4
+ version: 0.12.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sadayuki Furuhashi
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-01-16 00:00:00.000000000 Z
11
+ date: 2015-01-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: msgpack