Sha256: e64ecfcfcc839457d854581491562abe9d7b69061f47fd5efe98704d3b21f0d3
Contents?: true
Size: 956 Bytes
Versions: 9
Compression:
Stored size: 956 Bytes
Contents
# frozen_string_literal: true require 'logger' require 'rainbow' module Gitlab module QA # Common test logger implementation # class TestLogger LEVEL_COLORS = { "DEBUG" => :magenta, "INFO" => :green, "WARN" => :yellow, "ERROR" => :red, "FATAL" => :indianred }.freeze Rainbow.enabled = Runtime::Env.colorized_logs? def self.logger(level: ::Logger::INFO, source: 'Gitlab QA') ::Logger.new($stdout).tap do |logger| logger.level = level logger.formatter = proc do |severity, datetime, progname, msg| date_format = datetime.strftime("%Y-%m-%d %H:%M:%S") msg_prefix = "[date=#{date_format} from=#{source}] #{severity.ljust(5)} -- " Rainbow(msg_prefix).public_send(LEVEL_COLORS.fetch(severity, :silver)) + "#{msg}\n" # rubocop:disable GitlabSecurity/PublicSend end end end end end end
Version data entries
9 entries across 9 versions & 1 rubygems