Sha256: 41b8e85e9d90772b0a15b433c187ede67774d1a96bc6bd99007a3723355c0ae0
Contents?: true
Size: 1.23 KB
Versions: 5
Compression:
Stored size: 1.23 KB
Contents
# encoding: utf-8 require 'one_apm/agent/datastore/mongo/obfuscator' module OneApm module Agent module Datastore module Mongo module StatementFormatter OA_PLAINTEXT_KEYS = [ :database, :collection, :operation, :fields, :skip, :limit, :order ] OA_OBFUSCATE_KEYS = [ :selector ] def self.format(statement, operation) return nil unless OneApm::Manager.config[:'mongo.capture_queries'] result = { :operation => operation } OA_PLAINTEXT_KEYS.each do |key| result[key] = statement[key] if statement.key?(key) end OA_OBFUSCATE_KEYS.each do |key| if statement.key?(key) && statement[key] obfuscated = obfuscate(statement[key]) result[key] = obfuscated if obfuscated end end result end def self.obfuscate(statement) statement = Obfuscator.obfuscate_statement(statement) if OneApm::Manager.config[:'mongo.obfuscate_queries'] statement end end end end end end
Version data entries
5 entries across 5 versions & 1 rubygems