Sha256: 5eee1c22a077bbb158304d903f499c7cfbd0d078b57ef628653573cdd0d871a8

Contents?: true

Size: 813 Bytes

Versions: 44

Compression:

Stored size: 813 Bytes

Contents

# (c) Copyright IBM Corp. 2021
# (c) Copyright Instana Inc. 2021

module Instana
  module Instrumentation
    class SNS < Seahorse::Client::Plugin
      class Handler < Seahorse::Client::Handler
        def call(context)
          sns_tags = {
            topic: context.params[:topic_arn],
            target: context.params[:target_arn],
            phone: context.params[:phone_number],
            subject: context.params[:subject]
          }.reject { |_, v| v.nil? }

          if context.operation_name == :publish
            ::Instana.tracer.trace(:sns, {sns: sns_tags}) { @handler.call(context) }
          else
            @handler.call(context)
          end
        end
      end

      def add_handlers(handlers, _config)
        handlers.add(Handler, step: :initialize)
      end
    end
  end
end

Version data entries

44 entries across 44 versions & 1 rubygems

Version Path
instana-1.209.6 lib/instana/instrumentation/aws_sdk_sns.rb
instana-1.209.5 lib/instana/instrumentation/aws_sdk_sns.rb
instana-1.209.4 lib/instana/instrumentation/aws_sdk_sns.rb
instana-1.209.3 lib/instana/instrumentation/aws_sdk_sns.rb
instana-1.209.2 lib/instana/instrumentation/aws_sdk_sns.rb
instana-1.209.1 lib/instana/instrumentation/aws_sdk_sns.rb
instana-1.209.0.pre3 lib/instana/instrumentation/aws_sdk_sns.rb
instana-1.209.0.pre2 lib/instana/instrumentation/aws_sdk_sns.rb
instana-1.209.0.pre1 lib/instana/instrumentation/aws_sdk_sns.rb
instana-1.208.0 lib/instana/instrumentation/aws_sdk_sns.rb
instana-1.207.0 lib/instana/instrumentation/aws_sdk_sns.rb
instana-1.206.0 lib/instana/instrumentation/aws_sdk_sns.rb
instana-1.205.0 lib/instana/instrumentation/aws_sdk_sns.rb
instana-1.204.0 lib/instana/instrumentation/aws_sdk_sns.rb
instana-1.204.0.pre3 lib/instana/instrumentation/aws_sdk_sns.rb
instana-1.204.0.pre2 lib/instana/instrumentation/aws_sdk_sns.rb
instana-1.204.0.pre1 lib/instana/instrumentation/aws_sdk_sns.rb
instana-1.203.2 lib/instana/instrumentation/aws_sdk_sns.rb
instana-1.203.1 lib/instana/instrumentation/aws_sdk_sns.rb
instana-1.203.0 lib/instana/instrumentation/aws_sdk_sns.rb