module Fluent::Plugin::ElasticsearchTLS

Constants

DEFAULT_VERSION
METHODS_MAP
SUPPORTED_TLS_VERSIONS

Public Class Methods

included(mod) click to toggle source
# File lib/fluent/plugin/elasticsearch_tls.rb, line 43
def self.included(mod)
  mod.include ElasticsearchTLSParams
end

Public Instance Methods

set_tls_minmax_version_config(ssl_version, ssl_max_version, ssl_min_version) click to toggle source
# File lib/fluent/plugin/elasticsearch_tls.rb, line 47
def set_tls_minmax_version_config(ssl_version, ssl_max_version, ssl_min_version)
  if USE_TLS_MINMAX_VERSION
    case
    when ssl_min_version.nil? && ssl_max_version.nil?
      ssl_min_version = METHODS_MAP[:TLSv1_2]
      ssl_max_version = METHODS_MAP[:TLSv1_3]
    when ssl_min_version && ssl_max_version.nil?
      raise Fluent::ConfigError, "When you set 'ssl_min_version', must set 'ssl_max_version' together."
    when ssl_min_version.nil? && ssl_max_version
      raise Fluent::ConfigError, "When you set 'ssl_max_version', must set 'ssl_min_version' together."
    else
      ssl_min_version = METHODS_MAP[ssl_min_version]
      ssl_max_version = METHODS_MAP[ssl_max_version]
    end

    {max_version: ssl_max_version, min_version: ssl_min_version}
  else
    log.warn "'ssl_min_version' does not have any effect in this environment. Use 'ssl_version' instead." unless ssl_min_version.nil?
    log.warn "'ssl_max_version' does not have any effect in this environment. Use 'ssl_version' instead." unless ssl_max_version.nil?
    {version: ssl_version}
  end
end