Module: Fluent::FileOutput::SymlinkBufferMixin

Defined in:
lib/fluent/plugin/out_file.rb

Instance Method Summary collapse

Instance Method Details

#generate_chunk(metadata) ⇒ Object



60
61
62
63
64
65
66
67
68
69
70
71
# File 'lib/fluent/plugin/out_file.rb', line 60

def generate_chunk()
  chunk = super
  # "symlink" feature is to link from symlink_path to the latest file chunk. Records with latest
  # timekey will be appended into that file chunk. On the other side, resumed file chunks might NOT
  # have timekey, especially in the cases that resumed file chunks are generated by Fluentd v0.12.
  # These chunks will be enqueued immediately, and will be flushed soon.
  latest_chunk = .select{|m| m.timekey }.sort_by(&:timekey).last
  if chunk. == latest_chunk
    FileUtils.ln_sf(chunk.path, @_symlink_path)
  end
  chunk
end


56
57
58
# File 'lib/fluent/plugin/out_file.rb', line 56

def symlink_path=(path)
  @_symlink_path = path
end