diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2020-01-14 00:07:39 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2020-01-14 00:07:39 +0300 |
commit | 74a89b1221eaf780374bd1d4c5b2ee4a0f488908 (patch) | |
tree | 27dbcfdbc4216e9bee04b9be9c974d86744d51ba /lib/gitlab | |
parent | b0abae12affecc466aeb10889e8a6c000d6f67f5 (diff) |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'lib/gitlab')
-rw-r--r-- | lib/gitlab/app_json_logger.rb | 9 | ||||
-rw-r--r-- | lib/gitlab/app_logger.rb | 12 | ||||
-rw-r--r-- | lib/gitlab/app_text_logger.rb | 13 | ||||
-rw-r--r-- | lib/gitlab/multi_destination_logger.rb | 49 |
4 files changed, 78 insertions, 5 deletions
diff --git a/lib/gitlab/app_json_logger.rb b/lib/gitlab/app_json_logger.rb new file mode 100644 index 00000000000..e29b205e1bf --- /dev/null +++ b/lib/gitlab/app_json_logger.rb @@ -0,0 +1,9 @@ +# frozen_string_literal: true + +module Gitlab + class AppJsonLogger < Gitlab::JsonLogger + def self.file_name_noext + 'application_json' + end + end +end diff --git a/lib/gitlab/app_logger.rb b/lib/gitlab/app_logger.rb index 5edec8b3efe..3f5e9adf925 100644 --- a/lib/gitlab/app_logger.rb +++ b/lib/gitlab/app_logger.rb @@ -1,13 +1,15 @@ # frozen_string_literal: true module Gitlab - class AppLogger < Gitlab::Logger - def self.file_name_noext - 'application' + class AppLogger < Gitlab::MultiDestinationLogger + LOGGERS = [Gitlab::AppTextLogger, Gitlab::AppJsonLogger].freeze + + def self.loggers + LOGGERS end - def format_message(severity, timestamp, progname, msg) - "#{timestamp.to_s(:long)}: #{msg}\n" + def self.primary_logger + Gitlab::AppTextLogger end end end diff --git a/lib/gitlab/app_text_logger.rb b/lib/gitlab/app_text_logger.rb new file mode 100644 index 00000000000..59ac57b2bb4 --- /dev/null +++ b/lib/gitlab/app_text_logger.rb @@ -0,0 +1,13 @@ +# frozen_string_literal: true + +module Gitlab + class AppTextLogger < Gitlab::Logger + def self.file_name_noext + 'application' + end + + def format_message(severity, timestamp, progname, msg) + "#{timestamp.to_s(:long)}: #{msg}\n" + end + end +end diff --git a/lib/gitlab/multi_destination_logger.rb b/lib/gitlab/multi_destination_logger.rb new file mode 100644 index 00000000000..b6b19e81389 --- /dev/null +++ b/lib/gitlab/multi_destination_logger.rb @@ -0,0 +1,49 @@ +# frozen_string_literal: true + +module Gitlab + class MultiDestinationLogger < ::Logger + def close + loggers.each(&:close) + end + + def self.debug(message) + loggers.each { |logger| logger.build.debug(message) } + end + + def self.error(message) + loggers.each { |logger| logger.build.error(message) } + end + + def self.warn(message) + loggers.each { |logger| logger.build.warn(message) } + end + + def self.info(message) + loggers.each { |logger| logger.build.info(message) } + end + + def self.read_latest + primary_logger.read_latest + end + + def self.file_name + primary_logger.file_name + end + + def self.full_log_path + primary_logger.full_log_path + end + + def self.file_name_noext + primary_logger.file_name_noext + end + + def self.loggers + raise NotImplementedError + end + + def self.primary_logger + raise NotImplementedError + end + end +end |