Class: Queris::QueryProfilerBase

Inherits:
Profiler show all
Defined in:
lib/queris/profiler.rb

Direct Known Subclasses

QueryProfiler, QueryProfilerLite

Constant Summary

Constants included from Queris

VERSION

Instance Attribute Summary

Attributes inherited from Profiler

#last_sample

Attributes inherited from Model

#id, #query_score

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Profiler

#attribute_diff, average, default_statistic, #finish, #increment, #initialize, #load, named_stat, #record, sample, #sample_unit, #samples, samples, #save, #start, stats, unit

Methods inherited from Model

#as_json, attr_val_block, attribute, #attribute_diff, attributes, attrs, #changed, #changed?, #delete, #deleted?, expire, find_all, get, #hash_key, #import, #increment, #initialize, keyf, #load, #load_missing, #loaded?, #noload, #noload?, prefix, #redis, redis, #redis=, restore, #save, #to_json, #while_loading

Methods included from QuerisModelMixin

included

Methods included from ObjectMixin

#get_cached_attribute, included

Methods included from Queris

add_redis, all_redises, build_missing_indices!, clear!, clear_cache!, clear_queries!, debug?, digest, disconnect, duplicate_redis_client, from_redis_float, import_lua_script, included, info, load_lua_script, #log_stats_per_request!, #log_stats_per_request?, model, rebuild!, reconnect, redis, redis_prefix, redis_role, redises, register_model, run_script, script, script_hash, #stats, to_redis_float, #track_stats!, #track_stats?

Constructor Details

This class inherits a constructor from Queris::Profiler

Class Method Details

.find(query, opt = {}) ⇒ Object



211
212
213
214
215
216
# File 'lib/queris/profiler.rb', line 211

def self.find(query, opt={})
  if redis.nil?
    opt[:redis]=query.model.redis
  end
  super query_profile_id(query), opt
end

.query_profile_id(query) ⇒ Object



218
219
220
# File 'lib/queris/profiler.rb', line 218

def self.query_profile_id(query)
  "#{query.model.name}:#{query.structure}"
end

Instance Method Details

#set_id(query, *rest) ⇒ Object



221
222
223
224
# File 'lib/queris/profiler.rb', line 221

def set_id(query, *rest)
  @query = query
  set_id self.class.query_profile_id(query, *rest), true
end