pier_logging 0.1.5 → 0.1.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile.lock +3 -1
- data/lib/pier_logging.rb +3 -0
- data/lib/pier_logging/helpers/headers.rb +20 -0
- data/lib/pier_logging/request_logger.rb +9 -25
- data/lib/pier_logging/version.rb +1 -1
- data/pier_logging.gemspec +1 -0
- metadata +17 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e873082a51ac0e6d7727295242b351f48c36359f229cd86d88a2cf2ff30dc261
|
4
|
+
data.tar.gz: 18ea7a72b907d6c83c62feddae585c5c0d37488540be4f437b8c8ae7d9427156
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 440474356d2d9bf8f90e2df6474f147706892bb0778dd1d63ba7d6c5d550287f62da83d3f6dd384e073869951adcc117092a55561b0a4938590251e2802bd619
|
7
|
+
data.tar.gz: d80ca3622d92b96503764e77e01d5c02f1ccb32413781b09d9ca46c7751d74d7b25fbb6d4af6360be51319377262843f4ce8ff70a8de6058237d7e70663adf54
|
data/Gemfile.lock
CHANGED
@@ -1,8 +1,9 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
pier_logging (0.1.
|
4
|
+
pier_logging (0.1.7)
|
5
5
|
awesome_print
|
6
|
+
facets
|
6
7
|
ougai
|
7
8
|
rails
|
8
9
|
|
@@ -70,6 +71,7 @@ GEM
|
|
70
71
|
concurrent-ruby (1.1.6)
|
71
72
|
crass (1.0.6)
|
72
73
|
erubi (1.9.0)
|
74
|
+
facets (3.1.0)
|
73
75
|
globalid (0.4.2)
|
74
76
|
activesupport (>= 4.2.0)
|
75
77
|
i18n (1.8.3)
|
data/lib/pier_logging.rb
CHANGED
@@ -1,11 +1,14 @@
|
|
1
1
|
require "rails"
|
2
2
|
require "ougai"
|
3
|
+
require "awesome_print"
|
4
|
+
require "facets/hash/traverse"
|
3
5
|
require "pier_logging/version"
|
4
6
|
require "pier_logging/logger"
|
5
7
|
require "pier_logging/request_logger"
|
6
8
|
require "pier_logging/formatter/base"
|
7
9
|
require "pier_logging/formatter/json"
|
8
10
|
require "pier_logging/formatter/readable"
|
11
|
+
require "pier_logging/helpers/headers"
|
9
12
|
|
10
13
|
module PierLogging
|
11
14
|
def self.logger_configuration
|
@@ -0,0 +1,20 @@
|
|
1
|
+
module PierLogging
|
2
|
+
module Helpers
|
3
|
+
class Headers
|
4
|
+
def self.has_basic_credentials?(headers)
|
5
|
+
auth_header = headers['AUTHENTICATION'].to_s
|
6
|
+
return false if auth_header.blank?
|
7
|
+
# Optimization: https://github.com/JuanitoFatas/fast-ruby#stringcasecmp-vs-stringdowncase---code
|
8
|
+
return false if auth_header.split(' ', 2)[0].casecmp('basic') == 0
|
9
|
+
return false if auth_header.split(' ', 2)[1].blank?
|
10
|
+
return true
|
11
|
+
end
|
12
|
+
|
13
|
+
def self.get_basic_credentials_user(headers)
|
14
|
+
auth_headers = headers['AUTHENTICATION'].to_s
|
15
|
+
credentials = auth_headers.split(' ', 2)[1]
|
16
|
+
::Base64.decode64(credentials).split(':', 2)[0]
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
@@ -67,7 +67,7 @@ module PierLogging
|
|
67
67
|
# We should never fall in this part as the only errors that could result in this are errors
|
68
68
|
# in our logger (inside this same method)
|
69
69
|
@logger.error(error.message)
|
70
|
-
end
|
70
|
+
end
|
71
71
|
|
72
72
|
private
|
73
73
|
def get_request_headers_from_env(env)
|
@@ -87,16 +87,15 @@ module PierLogging
|
|
87
87
|
end
|
88
88
|
|
89
89
|
def parse_body(body)
|
90
|
-
|
91
|
-
|
92
|
-
elsif body.is_a? Array # Grape body
|
93
|
-
Oj.load(body.last, allow_blank: true)
|
94
|
-
elsif body.is_a? ActionDispatch::Response::RackBody # Rails body
|
95
|
-
Oj.load(body.body, allow_blank: true)
|
96
|
-
else
|
97
|
-
body
|
98
|
-
end
|
90
|
+
body_object = get_body_object(body)
|
91
|
+
Oj.load(body_object, allow_blank: true)
|
99
92
|
rescue
|
93
|
+
body_object || body
|
94
|
+
end
|
95
|
+
|
96
|
+
def get_body_object(body)
|
97
|
+
return body.last if body.is_a? Array # Grape body
|
98
|
+
return body.body if body.is_a? ActionDispatch::Response::RackBody # Rails body
|
100
99
|
body
|
101
100
|
end
|
102
101
|
|
@@ -125,20 +124,5 @@ module PierLogging
|
|
125
124
|
rescue
|
126
125
|
500
|
127
126
|
end
|
128
|
-
|
129
|
-
def has_basic_credentials?(headers)
|
130
|
-
auth_header = headers['AUTHENTICATION'].to_s
|
131
|
-
return false if auth_header.blank?
|
132
|
-
# Optimization: https://github.com/JuanitoFatas/fast-ruby#stringcasecmp-vs-stringdowncase---code
|
133
|
-
return false if auth_header.split(' ', 2)[0].casecmp('basic') == 0
|
134
|
-
return false if auth_header.split(' ', 2)[1].blank?
|
135
|
-
return true
|
136
|
-
end
|
137
|
-
|
138
|
-
def get_basic_credentials_user(headers)
|
139
|
-
auth_headers = headers['AUTHENTICATION'].to_s
|
140
|
-
credentials = auth_headers.split(' ', 2)[1]
|
141
|
-
::Base64.decode64(credentials).split(':', 2)[0]
|
142
|
-
end
|
143
127
|
end
|
144
128
|
end
|
data/lib/pier_logging/version.rb
CHANGED
data/pier_logging.gemspec
CHANGED
@@ -26,6 +26,7 @@ Gem::Specification.new do |spec|
|
|
26
26
|
spec.add_dependency "ougai"
|
27
27
|
spec.add_dependency "awesome_print"
|
28
28
|
spec.add_dependency "rails"
|
29
|
+
spec.add_dependency "facets"
|
29
30
|
|
30
31
|
spec.add_development_dependency "bundler", ">= 2.1.4"
|
31
32
|
spec.add_development_dependency "rake", ">= 12.3.3"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pier_logging
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.10
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mauricio Banduk
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-07-
|
11
|
+
date: 2020-07-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: ougai
|
@@ -52,6 +52,20 @@ dependencies:
|
|
52
52
|
- - ">="
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: facets
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ">="
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
type: :runtime
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ">="
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
55
69
|
- !ruby/object:Gem::Dependency
|
56
70
|
name: bundler
|
57
71
|
requirement: !ruby/object:Gem::Requirement
|
@@ -135,6 +149,7 @@ files:
|
|
135
149
|
- lib/pier_logging/formatter/base.rb
|
136
150
|
- lib/pier_logging/formatter/json.rb
|
137
151
|
- lib/pier_logging/formatter/readable.rb
|
152
|
+
- lib/pier_logging/helpers/headers.rb
|
138
153
|
- lib/pier_logging/logger.rb
|
139
154
|
- lib/pier_logging/request_logger.rb
|
140
155
|
- lib/pier_logging/version.rb
|