Class: MergeRequests::Mergeability::Logger
- Inherits:
-
Object
- Object
- MergeRequests::Mergeability::Logger
- Includes:
- Gitlab::Utils::StrongMemoize
- Defined in:
- app/services/merge_requests/mergeability/logger.rb
Instance Method Summary collapse
- #commit ⇒ Object
-
#initialize(merge_request:, destination: Gitlab::AppJsonLogger) ⇒ Logger
constructor
A new instance of Logger.
- #instrument(mergeability_name:) ⇒ Object
Constructor Details
#initialize(merge_request:, destination: Gitlab::AppJsonLogger) ⇒ Logger
Returns a new instance of Logger.
8 9 10 11 |
# File 'app/services/merge_requests/mergeability/logger.rb', line 8 def initialize(merge_request:, destination: Gitlab::AppJsonLogger) @destination = destination @merge_request = merge_request end |
Instance Method Details
#commit ⇒ Object
13 14 15 |
# File 'app/services/merge_requests/mergeability/logger.rb', line 13 def commit commit_logs end |
#instrument(mergeability_name:) ⇒ Object
17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'app/services/merge_requests/mergeability/logger.rb', line 17 def instrument(mergeability_name:) raise ArgumentError, 'block not given' unless block_given? op_start_db_counters = current_db_counter_payload op_started_at = current_monotonic_time result = yield observe_result(mergeability_name, result) observe("mergeability.#{mergeability_name}.duration_s", current_monotonic_time - op_started_at) observe_sql_counters(mergeability_name, op_start_db_counters, current_db_counter_payload) result end |