Sha256: 2ace4e335eb19e5a77aa7bebae8873874126d65332e6f9098fc207efae360252

Contents?: true

Size: 1.68 KB

Versions: 15

Compression:

Stored size: 1.68 KB

Contents

class Fluentd
  module Setting
    class OutS3
      include ActiveModel::Model
      include Common

      KEYS = [
        :match,
        :aws_key_id, :aws_sec_key, :s3_bucket, :s3_region, :path,
        # :reduced_redundancy, :check_apikey_on_start, :command_parameter, # not configurable?
        :format, :include_time_key, :time_key, :delimiter, :label_delimiter,
        :time_slice_format, :time_slice_wait, :time_format, :utc, :store_as, :proxy_uri, :use_ssl,
        :buffer_type, :buffer_path, :buffer_queue_limit, :buffer_chunk_limit, :flush_interval,
        :retry_wait, :retry_limit, :max_retry_wait, :num_threads,
      ].freeze

      attr_accessor(*KEYS)

      choice :format, %w(out_file json ltsv single_value)
      choice :store_as, %w(gzip lzo lzma2 json txt)
      choice :buffer_type, %w(memory file)
      booleans :include_time_key, :use_ssl
      flags :utc

      validates :match, presence: true
      validates :s3_bucket, presence: true
      validates :buffer_path, presence: true, if: ->{ buffer_type == "file" }

      def self.initial_params
        {
          s3_region: "us-west-1",
          use_ssl: true,
        }
      end

      def common_options
        [
          :match, :aws_key_id, :aws_sec_key,
          :s3_region, :s3_bucket, :use_ssl, :path,
        ]
      end

      def advanced_options
        [
          :format, :include_time_key, :time_key, :delimiter, :label_delimiter,
          :utc, :time_slice_format, :time_slice_wait, :store_as, :proxy_uri,
          :buffer_type, :buffer_path, :buffer_queue_limit, :buffer_chunk_limit, :flush_interval,
          :retry_wait, :retry_limit, :max_retry_wait, :num_threads,
        ]
      end
    end
  end
end

Version data entries

15 entries across 15 versions & 1 rubygems

Version Path
fluentd-ui-1.0.0.alpha.2 app/models/fluentd/setting/out_s3.rb
fluentd-ui-1.0.0.alpha.1 app/models/fluentd/setting/out_s3.rb
fluentd-ui-0.4.5 app/models/fluentd/setting/out_s3.rb
fluentd-ui-0.4.4 app/models/fluentd/setting/out_s3.rb
fluentd-ui-0.4.3 app/models/fluentd/setting/out_s3.rb
fluentd-ui-0.4.2 app/models/fluentd/setting/out_s3.rb
fluentd-ui-0.4.1 app/models/fluentd/setting/out_s3.rb
fluentd-ui-0.4.0 app/models/fluentd/setting/out_s3.rb
fluentd-ui-0.3.21 app/models/fluentd/setting/out_s3.rb
fluentd-ui-0.3.20 app/models/fluentd/setting/out_s3.rb
fluentd-ui-0.3.19 app/models/fluentd/setting/out_s3.rb
fluentd-ui-0.3.18 app/models/fluentd/setting/out_s3.rb
fluentd-ui-0.3.17 app/models/fluentd/setting/out_s3.rb
fluentd-ui-0.3.16 app/models/fluentd/setting/out_s3.rb
fluentd-ui-0.3.15 app/models/fluentd/setting/out_s3.rb