module Gapic::LoggingConcerns
def normalize_service input
- Private: -
def normalize_service input case input when String input when Class mod = input.name.split("::")[..-2].inject(Object) { |m, n| m.const_get n } if mod.const_defined? "Service" mod.const_get("Service").service_name else name_segments = input.name.split("::")[..-3] mod = name_segments.inject(Object) { |m, n| m.const_get n } name_segments.join "." if mod.const_defined? "Rest" end end end
def normalize_system_name input
- Private: -
def normalize_system_name input case input when String input when Class input.name.split("::")[..-3] .map { |elem| elem.scan(/[A-Z][A-Z]*(?=[A-Z][a-z0-9]|$)|[A-Z][a-z0-9]+/).map(&:downcase).join("_") } .join("-") else "googleapis" end end
def random_uuid4
- Private: -
def random_uuid4 ary = Random.bytes 16 ary.setbyte 6, ((ary.getbyte(6) & 0x0f) | 0x40) ary.setbyte 8, ((ary.getbyte(8) & 0x3f) | 0x80) ary.unpack("H8H4H4H4H12").join "-" end
def setup_logging logger: :default,
- Private: -
def setup_logging logger: :default, stream: nil, formatter: nil, level: nil, system_name: nil, service: nil, endpoint: nil, client_id: nil service = LoggingConcerns.normalize_service service system_name = LoggingConcerns.normalize_system_name system_name logging_env = ENV["GOOGLE_SDK_RUBY_LOGGING_GEMS"].to_s.downcase logger = nil if ["false", "none"].include? logging_env if logger == :default logger = nil if ["true", "all"].include?(logging_env) || logging_env.split(",").include?(system_name) stream ||= $stderr level ||= "DEBUG" formatter ||= Google::Logging::StructuredFormatter.new if Google::Cloud::Env.get.logging_agent_expected? logger = Logger.new stream, progname: system_name, level: level, formatter: formatter end end @logger = logger @stub_logger = StubLogger.new logger: logger, system_name: system_name, service: service, endpoint: endpoint, client_id: client_id end