Sha256: 787a0941d5301f46df4f0938ac9a1185b0b5989ab6bd5580846ba6edcf82e5ac
Contents?: true
Size: 576 Bytes
Versions: 2
Compression:
Stored size: 576 Bytes
Contents
# frozen_string_literal: true module ElasticAPM # @api private class SqlSummarizer REGEXES = { /^SELECT .* FROM ([^ ]+)/i => 'SELECT FROM ', /^INSERT INTO ([^ ]+)/i => 'INSERT INTO ', /^UPDATE ([^ ]+)/i => 'UPDATE ', /^DELETE FROM ([^ ]+)/i => 'DELETE FROM ' }.freeze def self.cache @cache ||= {} end def summarize(sql) self.class.cache[sql] ||= REGEXES.find do |regex, sig| if (match = sql.match(regex)) break format("#{sig}#{match[1]}") end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
elastic-apm-0.2.0 | lib/elastic_apm/sql_summarizer.rb |
elastic-apm-0.1.0 | lib/elastic_apm/sql_summarizer.rb |