1# frozen_string_literal: true
2
3module ProjectServicesLoggable
4  def log_info(message, params = {})
5    message = build_message(message, params)
6
7    logger.info(message)
8  end
9
10  def log_error(message, params = {})
11    message = build_message(message, params)
12
13    logger.error(message)
14  end
15
16  def build_message(message, params = {})
17    {
18      service_class: self.class.name,
19      project_id: project&.id,
20      project_path: project&.full_path,
21      message: message
22    }.merge(params)
23  end
24
25  def logger
26    Gitlab::ProjectServiceLogger
27  end
28end
29