Sha256: 7d6b5f4098679257281488b9c733c3eace0fb2d8dbb86e13be3371c0056ffc35

Contents?: true

Size: 808 Bytes

Versions: 5

Compression:

Stored size: 808 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}")

        Appsignal.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 => e
            Appsignal.set_error(e)
            raise e
          end
        end
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
appsignal-2.1.2 lib/appsignal/integrations/webmachine.rb
appsignal-2.1.1 lib/appsignal/integrations/webmachine.rb
appsignal-2.1.1.beta.1 lib/appsignal/integrations/webmachine.rb
appsignal-2.1.0 lib/appsignal/integrations/webmachine.rb
appsignal-2.1.0.beta.1 lib/appsignal/integrations/webmachine.rb