Module: Lograge::Sql

Defined in:
lib/lograge/sql.rb,
lib/lograge/sql/railtie.rb,
lib/lograge/sql/version.rb,
lib/lograge/sql/extension.rb

Overview

Main gem module

Defined Under Namespace

Modules: Extension Classes: Railtie

Constant Summary collapse

VERSION =

Gem version

'1.3.0'

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.extract_eventObject

Extract information from SQL event



13
14
15
# File 'lib/lograge/sql.rb', line 13

def extract_event
  @extract_event
end

.formatterObject

Format SQL log



11
12
13
# File 'lib/lograge/sql.rb', line 11

def formatter
  @formatter
end

Class Method Details

.setup(config) ⇒ Object

Initialise configuration with fallback to default values



16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/lograge/sql.rb', line 16

def setup(config)
  Lograge::Sql.formatter     = config.formatter     || default_formatter
  Lograge::Sql.extract_event = config.extract_event || default_extract_event

  return if config.keep_default_active_record_log

  # Disable existing ActiveRecord logging
  ActiveSupport::LogSubscriber.log_subscribers.each do |subscriber|
    Lograge.unsubscribe(:active_record, subscriber) if subscriber.is_a?(ActiveRecord::LogSubscriber)
  end

  Lograge::ActiveRecordLogSubscriber.attach_to :active_record
end

.storeHash, Thread

Gets the store, preferring RequestStore if the gem is found.

Returns:

  • (Hash, Thread)

    the RequestStore or the current Thread.



32
33
34
# File 'lib/lograge/sql.rb', line 32

def store
  defined?(RequestStore) ? RequestStore.store : Thread.current
end