lograge 0.5.1 → 0.6.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/lograge.rb +13 -1
- data/lib/lograge/log_subscriber.rb +10 -8
- data/lib/lograge/ordered_options.rb +9 -0
- data/lib/lograge/railtie.rb +1 -1
- data/lib/lograge/version.rb +1 -1
- metadata +17 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6b484346cdeb170f3d4a180e7d9b4c3d15285fbe
|
4
|
+
data.tar.gz: 799da82f5ca643edd61a67b6733edd8dddd46cbf
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6718376476946cee57fe6761d334a105cf3f6d3aa3b74519c314ba4a54344a4bca6130dc216702a7745ab46f6d30fbd15119ab7c006b119df082ff2a927a76e9
|
7
|
+
data.tar.gz: fbbab8b00be5c385447ee2da45a157c8fcfbd1e2e4170ff56f95a16246d12a3f0a8496ff3e0920a82374e15c62aa7f3c1eb60b4b7f431a544507415d4842de18
|
data/lib/lograge.rb
CHANGED
@@ -9,9 +9,9 @@ require 'lograge/formatters/logstash'
|
|
9
9
|
require 'lograge/formatters/ltsv'
|
10
10
|
require 'lograge/formatters/raw'
|
11
11
|
require 'lograge/log_subscriber'
|
12
|
+
require 'lograge/ordered_options'
|
12
13
|
require 'active_support/core_ext/module/attribute_accessors'
|
13
14
|
require 'active_support/core_ext/string/inflections'
|
14
|
-
require 'active_support/ordered_options'
|
15
15
|
|
16
16
|
# rubocop:disable ModuleLength
|
17
17
|
module Lograge
|
@@ -123,6 +123,7 @@ module Lograge
|
|
123
123
|
|
124
124
|
attach_to_action_controller
|
125
125
|
set_lograge_log_options
|
126
|
+
setup_custom_payload
|
126
127
|
support_deprecated_config # TODO: Remove with version 1.0
|
127
128
|
set_formatter
|
128
129
|
set_ignores
|
@@ -141,6 +142,17 @@ module Lograge
|
|
141
142
|
Lograge::RequestLogSubscriber.attach_to :action_controller
|
142
143
|
end
|
143
144
|
|
145
|
+
def setup_custom_payload
|
146
|
+
return unless lograge_config.custom_payload_method.respond_to?(:call)
|
147
|
+
append_payload_method = ActionController::Base.instance_method(:append_info_to_payload)
|
148
|
+
custom_payload_method = lograge_config.custom_payload_method
|
149
|
+
|
150
|
+
ActionController::Base.send(:define_method, :append_info_to_payload) do |payload|
|
151
|
+
append_payload_method.bind(self).call(payload)
|
152
|
+
payload[:custom_payload] = custom_payload_method.call(self)
|
153
|
+
end
|
154
|
+
end
|
155
|
+
|
144
156
|
def set_lograge_log_options
|
145
157
|
Lograge.logger = lograge_config.logger
|
146
158
|
Lograge.custom_options = lograge_config.custom_options
|
@@ -2,6 +2,7 @@ require 'json'
|
|
2
2
|
require 'action_pack'
|
3
3
|
require 'active_support/core_ext/class/attribute'
|
4
4
|
require 'active_support/log_subscriber'
|
5
|
+
require 'request_store'
|
5
6
|
|
6
7
|
module Lograge
|
7
8
|
class RequestLogSubscriber < ActiveSupport::LogSubscriber
|
@@ -16,12 +17,12 @@ module Lograge
|
|
16
17
|
end
|
17
18
|
|
18
19
|
def redirect_to(event)
|
19
|
-
|
20
|
+
RequestStore.store[:lograge_location] = event.payload[:location]
|
20
21
|
end
|
21
22
|
|
22
23
|
def unpermitted_parameters(event)
|
23
|
-
|
24
|
-
|
24
|
+
RequestStore.store[:lograge_unpermitted_params] ||= []
|
25
|
+
RequestStore.store[:lograge_unpermitted_params].concat(event.payload[:keys])
|
25
26
|
end
|
26
27
|
|
27
28
|
def logger
|
@@ -83,7 +84,8 @@ module Lograge
|
|
83
84
|
end
|
84
85
|
|
85
86
|
def custom_options(event)
|
86
|
-
Lograge.custom_options(event) || {}
|
87
|
+
options = Lograge.custom_options(event) || {}
|
88
|
+
options.merge event.payload[:custom_payload] || {}
|
87
89
|
end
|
88
90
|
|
89
91
|
def before_format(data, payload)
|
@@ -98,18 +100,18 @@ module Lograge
|
|
98
100
|
end
|
99
101
|
|
100
102
|
def extract_location
|
101
|
-
location =
|
103
|
+
location = RequestStore.store[:lograge_location]
|
102
104
|
return {} unless location
|
103
105
|
|
104
|
-
|
106
|
+
RequestStore.store[:lograge_location] = nil
|
105
107
|
{ location: location }
|
106
108
|
end
|
107
109
|
|
108
110
|
def extract_unpermitted_params
|
109
|
-
unpermitted_params =
|
111
|
+
unpermitted_params = RequestStore.store[:lograge_unpermitted_params]
|
110
112
|
return {} unless unpermitted_params
|
111
113
|
|
112
|
-
|
114
|
+
RequestStore.store[:lograge_unpermitted_params] = nil
|
113
115
|
{ unpermitted_params: unpermitted_params }
|
114
116
|
end
|
115
117
|
end
|
data/lib/lograge/railtie.rb
CHANGED
data/lib/lograge/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: lograge
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mathias Meyer
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2017-
|
12
|
+
date: 2017-08-04 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rspec
|
@@ -99,6 +99,20 @@ dependencies:
|
|
99
99
|
- - <
|
100
100
|
- !ruby/object:Gem::Version
|
101
101
|
version: '5.2'
|
102
|
+
- !ruby/object:Gem::Dependency
|
103
|
+
name: request_store
|
104
|
+
requirement: !ruby/object:Gem::Requirement
|
105
|
+
requirements:
|
106
|
+
- - ~>
|
107
|
+
- !ruby/object:Gem::Version
|
108
|
+
version: '1.0'
|
109
|
+
type: :runtime
|
110
|
+
prerelease: false
|
111
|
+
version_requirements: !ruby/object:Gem::Requirement
|
112
|
+
requirements:
|
113
|
+
- - ~>
|
114
|
+
- !ruby/object:Gem::Version
|
115
|
+
version: '1.0'
|
102
116
|
description: Tame Rails' multi-line logging into a single line per request
|
103
117
|
email:
|
104
118
|
- meyer@paperplanes.de
|
@@ -118,6 +132,7 @@ files:
|
|
118
132
|
- lib/lograge/formatters/ltsv.rb
|
119
133
|
- lib/lograge/formatters/raw.rb
|
120
134
|
- lib/lograge/log_subscriber.rb
|
135
|
+
- lib/lograge/ordered_options.rb
|
121
136
|
- lib/lograge/rails_ext/rack/logger.rb
|
122
137
|
- lib/lograge/railtie.rb
|
123
138
|
- lib/lograge/version.rb
|