sensible_logging 0.2.0 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/examples/app.rb +10 -0
- data/examples/config.ru +1 -8
- data/lib/sensible_logging/middlewares/tagged_logger.rb +7 -6
- data/lib/sensible_logging/version.rb +1 -1
- data/lib/sensible_logging.rb +21 -9
- data/sensible_logging.gemspec +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 40ddd14f9217b3c9465bf528d8a1a2befb3ff17177340d119533e58d16e208de
|
4
|
+
data.tar.gz: 5a20a67b1f01cc7fdd4f7ec7959472086e2d73987ab5c2d6d54f1cbc823d4183
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0f17b47325de077896ae98001452e19a02df1ba12fce8734139ec47d665a1dc8db77609c15d127ff74c8da57e1aebd0f2464c5fa63d530b1e6443d47e37a8c7a
|
7
|
+
data.tar.gz: cea09e17ded5de488a701a7aa5e737320ab9c6e444493669d996e57c4979a14199b979eac44cc2f8232a6c5cc6e58619205393a7f43b1436db1f9fa7aadae440
|
data/examples/app.rb
CHANGED
@@ -1,7 +1,17 @@
|
|
1
1
|
require 'sinatra/base'
|
2
2
|
require 'logger'
|
3
3
|
|
4
|
+
require_relative '../lib/sensible_logging'
|
5
|
+
|
4
6
|
class App < Sinatra::Base
|
7
|
+
register Sinatra::SensibleLogging
|
8
|
+
|
9
|
+
sensible_logging(
|
10
|
+
logger: Logger.new(STDOUT),
|
11
|
+
log_tags: [lambda { |req| [req.port] }],
|
12
|
+
exclude_params: ['two']
|
13
|
+
)
|
14
|
+
|
5
15
|
configure do
|
6
16
|
set :log_level, Logger::DEBUG
|
7
17
|
end
|
data/examples/config.ru
CHANGED
@@ -1,11 +1,4 @@
|
|
1
1
|
#\ --quiet
|
2
|
-
require 'logger'
|
3
2
|
require_relative './app'
|
4
|
-
require_relative '../lib/sensible_logging'
|
5
3
|
|
6
|
-
run
|
7
|
-
app: App,
|
8
|
-
logger: Logger.new(STDOUT),
|
9
|
-
log_tags: TaggedLogger.default_tags + [lambda { |req| [req.port] }],
|
10
|
-
exclude_params: ['two']
|
11
|
-
)
|
4
|
+
run App
|
@@ -2,12 +2,13 @@ require 'active_support/tagged_logging'
|
|
2
2
|
require_relative '../helpers/subdomain_parser'
|
3
3
|
|
4
4
|
class TaggedLogger
|
5
|
-
def initialize(app, logger = Logger.new(STDOUT), tags = [], tld_length = 1)
|
5
|
+
def initialize(app, logger = Logger.new(STDOUT), tags = [], use_default_log_tags = true, tld_length = 1)
|
6
6
|
@app = app
|
7
7
|
@logger = ActiveSupport::TaggedLogging.new(logger)
|
8
8
|
|
9
|
-
@tags =
|
10
|
-
@tags
|
9
|
+
@tags = []
|
10
|
+
@tags += default_tags(tld_length: tld_length) if use_default_log_tags
|
11
|
+
@tags += tags
|
11
12
|
end
|
12
13
|
|
13
14
|
def call(env)
|
@@ -17,7 +18,9 @@ class TaggedLogger
|
|
17
18
|
end
|
18
19
|
end
|
19
20
|
|
20
|
-
|
21
|
+
private
|
22
|
+
|
23
|
+
def default_tags(tld_length: 1)
|
21
24
|
[lambda { |req|
|
22
25
|
subdomain_parser = SubdomainParser.new(tld_length: tld_length)
|
23
26
|
subdomain = subdomain_parser.parse(req.host)
|
@@ -26,8 +29,6 @@ class TaggedLogger
|
|
26
29
|
}]
|
27
30
|
end
|
28
31
|
|
29
|
-
private
|
30
|
-
|
31
32
|
def generate_tags(env)
|
32
33
|
req = Rack::Request.new(env)
|
33
34
|
tags = @tags.map do |tag|
|
data/lib/sensible_logging.rb
CHANGED
@@ -1,18 +1,30 @@
|
|
1
|
+
require 'sinatra/base'
|
2
|
+
|
1
3
|
require_relative './sensible_logging/middlewares/request_id'
|
2
4
|
require_relative './sensible_logging/middlewares/tagged_logger'
|
3
5
|
require_relative './sensible_logging/middlewares/request_logger'
|
4
6
|
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
7
|
+
module Sinatra
|
8
|
+
module SensibleLogging
|
9
|
+
def sensible_logging(
|
10
|
+
logger:,
|
11
|
+
log_tags: [],
|
12
|
+
use_default_log_tags: true,
|
13
|
+
exclude_params: [],
|
14
|
+
tld_length: 1
|
15
|
+
)
|
16
|
+
use RequestId
|
17
|
+
use TaggedLogger, logger, log_tags, use_default_log_tags, tld_length
|
18
|
+
use RequestLogger, exclude_params
|
9
19
|
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
20
|
+
before do
|
21
|
+
env['rack.errors'] = env['rack.logger'] = env['logger']
|
22
|
+
if settings.log_level != nil
|
23
|
+
logger.level = settings.log_level
|
24
|
+
end
|
25
|
+
end
|
14
26
|
end
|
15
27
|
end
|
16
28
|
|
17
|
-
|
29
|
+
register SensibleLogging
|
18
30
|
end
|
data/sensible_logging.gemspec
CHANGED
@@ -6,7 +6,7 @@ require 'sensible_logging/version'
|
|
6
6
|
Gem::Specification.new do |spec|
|
7
7
|
spec.name = 'sensible_logging'
|
8
8
|
spec.version = SensibleLogging::VERSION
|
9
|
-
spec.authors = ['David Winter', 'Mark Sta Ana']
|
9
|
+
spec.authors = ['David Winter', 'Mark Sta Ana', 'Anthony King']
|
10
10
|
spec.email = ['sre@madetech.com']
|
11
11
|
|
12
12
|
spec.summary = 'Sensible logging defaults for your Sinatra app'
|
metadata
CHANGED
@@ -1,15 +1,16 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sensible_logging
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- David Winter
|
8
8
|
- Mark Sta Ana
|
9
|
+
- Anthony King
|
9
10
|
autorequire:
|
10
11
|
bindir: bin
|
11
12
|
cert_chain: []
|
12
|
-
date: 2019-01-
|
13
|
+
date: 2019-01-08 00:00:00.000000000 Z
|
13
14
|
dependencies:
|
14
15
|
- !ruby/object:Gem::Dependency
|
15
16
|
name: rack
|