Class: ShopifyClient::Client::Logging

Inherits:
Faraday::Middleware
  • Object
show all
Defined in:
lib/shopify-client/client/logging.rb

Instance Method Summary collapse

Instance Method Details

#on_complete(env) ⇒ Object

Parameters:

  • env (Faraday::Env)


25
26
27
28
29
30
31
32
33
34
35
# File 'lib/shopify-client/client/logging.rb', line 25

def on_complete(env)
  ShopifyClient.config.logger.info({
    source: 'shopify-client',
    type: 'response',
    info: {
      transaction_id: env[:uuid],
      status: env[:status],
      api_call_limit: env[:response_headers]['X-Shopify-Shop-Api-Call-Limit'],
    },
  }.to_json)
end

#on_request(env) ⇒ Object

Parameters:

  • env (Faraday::Env)


10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/shopify-client/client/logging.rb', line 10

def on_request(env)
  env[:uuid] = SecureRandom.uuid

  ShopifyClient.config.logger.info({
    source: 'shopify-client',
    type: 'request',
    info: {
      transaction_id: env[:uuid],
      method: env[:method].to_s,
      url: env[:url].to_s,
    },
  }.to_json)
end