Sha256: e7f0ca353a4c72a1c3b671377016670dbde5eb244ef803ff2768a82ea9ed1bd0

Contents?: true

Size: 487 Bytes

Versions: 1

Compression:

Stored size: 487 Bytes

Contents

# frozen_string_literal: false

require 'logger'
require_relative '../data_filters/log_data_filter'

##
# This Aspect is responsible for logging
# the input and output of every endpoint called
# in the framework.
module LoggingAspect
  def call_endpoint(logger, *args)
    return super(*args) if logger.nil?

    begin
      response = super(*args)
    rescue StandardError => e
      logger.error("#{e.message}\n#{e.backtrace.join("\n")}")
      raise e
    end

    response
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
macaw_framework-1.3.21 lib/macaw_framework/aspects/logging_aspect.rb