Sha256: fd661d47e3bfe947f05e67b151eb2ac286993d49201121e47c10ddea739d1b9a

Contents?: true

Size: 840 Bytes

Versions: 9

Compression:

Stored size: 840 Bytes

Contents

module Appsignal::Integrations
  module WebmachinePlugin
    module FSM

      def run_with_appsignal
        transaction = Appsignal::Transaction.create(
          SecureRandom.uuid,
          Appsignal::Transaction::HTTP_REQUEST,
          request,
          {:params_method => :query}
        )

        transaction.set_action("#{resource.class.name}##{request.method}")

        ActiveSupport::Notifications.instrument('process_action.webmachine') do
          run_without_appsignal
        end

        Appsignal::Transaction.complete_current!
      end

      private

      def handle_exceptions_with_appsignal
        handle_exceptions_without_appsignal do
          begin
            yield
          rescue Exception => e
            Appsignal.set_error(e)
            raise e
          end
        end
      end
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
appsignal-1.3.5 lib/appsignal/integrations/webmachine.rb
appsignal-1.3.5.beta.1 lib/appsignal/integrations/webmachine.rb
appsignal-1.3.4 lib/appsignal/integrations/webmachine.rb
appsignal-1.3.3 lib/appsignal/integrations/webmachine.rb
appsignal-1.4.0.alpha.2 lib/appsignal/integrations/webmachine.rb
appsignal-1.4.0.alpha.1 lib/appsignal/integrations/webmachine.rb
appsignal-1.3.2 lib/appsignal/integrations/webmachine.rb
appsignal-1.3.1 lib/appsignal/integrations/webmachine.rb
appsignal-1.3.0 lib/appsignal/integrations/webmachine.rb