class LogStash::Outputs::Gcs::LogFileFactory

LogFileFactory creates a LogFile according to user specification optionally gzipping it and creating mutexes around modification points.

Public Class Methods

create(path, gzip, synchronize=true, gzip_encoded=false) click to toggle source
# File lib/logstash/outputs/gcs/temp_log_file.rb, line 13
def self.create(path, gzip, synchronize=true, gzip_encoded=false)
  lf = LogStash::Outputs::Gcs::PlainLogFile.new(path)
  lf = LogStash::Outputs::Gcs::GzipLogFile.new(lf) if gzip
  lf = LogStash::Outputs::Gcs::GzipLogFile.new(lf) if gzip_encoded
  lf = LogStash::Outputs::Gcs::SynchronizedLogFile.new(lf) if synchronize

  lf
end