Sha256: 4a21ac2c1160a6de17b968934bf0508d4ce2ec05996e2cd9f21380042190e8bf
Contents?: true
Size: 1.33 KB
Versions: 13
Compression:
Stored size: 1.33 KB
Contents
# Licensed to Elasticsearch B.V. under one or more contributor # license agreements. See the NOTICE file distributed with # this work for additional information regarding copyright # ownership. Elasticsearch B.V. licenses this file to you under # the Apache License, Version 2.0 (the "License"); you may # not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, # software distributed under the License is distributed on an # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY # KIND, either express or implied. See the License for the # specific language governing permissions and limitations # under the License. # frozen_string_literal: true module ElasticAPM # @api private module Spies # @api private class RedisSpy def install ::Redis::Client.class_eval do alias call_without_apm call def call(command, &block) name = command[0].upcase return call_without_apm(command, &block) if command[0] == :auth ElasticAPM.with_span(name.to_s, 'db.redis') do call_without_apm(command, &block) end end end end end register 'Redis', 'redis', RedisSpy.new end end
Version data entries
13 entries across 13 versions & 1 rubygems