rails_semantic_logger 4.1.3 → 4.12.0
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 +5 -5
- data/README.md +17 -10
- data/Rakefile +9 -9
- data/lib/rails_semantic_logger/action_controller/log_subscriber.rb +125 -0
- data/lib/rails_semantic_logger/action_mailer/log_subscriber.rb +135 -0
- data/lib/rails_semantic_logger/action_view/log_subscriber.rb +111 -0
- data/lib/rails_semantic_logger/active_job/log_subscriber.rb +126 -0
- data/lib/rails_semantic_logger/active_record/log_subscriber.rb +218 -0
- data/lib/rails_semantic_logger/delayed_job/plugin.rb +11 -0
- data/lib/rails_semantic_logger/engine.rb +189 -194
- data/lib/rails_semantic_logger/extensions/action_cable/tagged_logger_proxy.rb +1 -1
- data/lib/rails_semantic_logger/extensions/action_controller/live.rb +8 -4
- data/lib/rails_semantic_logger/extensions/action_dispatch/debug_exceptions.rb +11 -7
- data/lib/rails_semantic_logger/extensions/action_view/streaming_template_renderer.rb +10 -6
- data/lib/rails_semantic_logger/extensions/active_job/logging.rb +10 -6
- data/lib/rails_semantic_logger/extensions/active_model_serializers/logging.rb +12 -9
- data/lib/rails_semantic_logger/extensions/active_support/logger.rb +24 -0
- data/lib/rails_semantic_logger/extensions/active_support/tagged_logging.rb +8 -0
- data/lib/rails_semantic_logger/extensions/mongoid/config.rb +11 -0
- data/lib/rails_semantic_logger/extensions/rack/server.rb +12 -0
- data/lib/rails_semantic_logger/extensions/rails/server.rb +9 -5
- data/lib/rails_semantic_logger/options.rb +122 -0
- data/lib/rails_semantic_logger/rack/logger.rb +100 -0
- data/lib/rails_semantic_logger/version.rb +2 -2
- data/lib/rails_semantic_logger.rb +58 -3
- metadata +46 -24
- data/lib/rails_semantic_logger/extensions/action_controller/log_subscriber.rb +0 -107
- data/lib/rails_semantic_logger/extensions/action_controller/log_subscriber_processing.rb +0 -28
- data/lib/rails_semantic_logger/extensions/action_view/log_subscriber.rb +0 -12
- data/lib/rails_semantic_logger/extensions/active_record/log_subscriber.rb +0 -44
- data/lib/rails_semantic_logger/extensions/rails/rack/logger.rb +0 -63
- data/lib/rails_semantic_logger/extensions/rails/rack/logger_info_as_debug.rb +0 -30
@@ -1,7 +1,11 @@
|
|
1
1
|
# Log actual exceptions, not a string representation
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
2
|
+
require "action_controller"
|
3
|
+
|
4
|
+
module ActionController
|
5
|
+
module Live
|
6
|
+
undef_method :log_error
|
7
|
+
def log_error(exception)
|
8
|
+
logger.fatal(exception)
|
9
|
+
end
|
6
10
|
end
|
7
11
|
end
|
@@ -1,11 +1,15 @@
|
|
1
1
|
# Log actual exceptions, not a string representation
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
2
|
+
require "action_dispatch"
|
3
|
+
|
4
|
+
module ActionDispatch
|
5
|
+
class DebugExceptions
|
6
|
+
private
|
7
|
+
|
8
|
+
undef_method :log_error
|
9
|
+
def log_error(_request, wrapper)
|
10
|
+
ActiveSupport::Deprecation.silence do
|
11
|
+
ActionController::Base.logger.fatal(wrapper.exception)
|
12
|
+
end
|
8
13
|
end
|
9
14
|
end
|
10
15
|
end
|
11
|
-
|
@@ -1,11 +1,15 @@
|
|
1
1
|
# Log actual exceptions, not a string representation
|
2
|
-
|
2
|
+
require "action_view/renderer/streaming_template_renderer"
|
3
3
|
|
4
|
-
|
5
|
-
class
|
6
|
-
|
7
|
-
|
8
|
-
|
4
|
+
module ActionView
|
5
|
+
class StreamingTemplateRenderer
|
6
|
+
class Body
|
7
|
+
private
|
8
|
+
|
9
|
+
undef_method :log_error
|
10
|
+
def log_error(exception)
|
11
|
+
ActionView::Base.logger.fatal(exception)
|
12
|
+
end
|
9
13
|
end
|
10
14
|
end
|
11
15
|
end
|
@@ -1,11 +1,15 @@
|
|
1
1
|
# Patch ActiveJob logger
|
2
|
-
require
|
2
|
+
require "active_job/logging"
|
3
3
|
|
4
|
-
module ActiveJob
|
5
|
-
|
4
|
+
module ActiveJob
|
5
|
+
module Logging
|
6
|
+
include SemanticLogger::Loggable
|
6
7
|
|
7
|
-
|
8
|
-
|
9
|
-
|
8
|
+
private
|
9
|
+
|
10
|
+
undef_method :tag_logger
|
11
|
+
def tag_logger(*tags, &block)
|
12
|
+
logger.tagged(*tags, &block)
|
13
|
+
end
|
10
14
|
end
|
11
15
|
end
|
@@ -1,15 +1,18 @@
|
|
1
1
|
# Patch ActiveModelSerializers logger
|
2
|
-
require
|
2
|
+
require "active_model_serializers/logging"
|
3
3
|
|
4
|
-
module ActiveModelSerializers
|
5
|
-
|
4
|
+
module ActiveModelSerializers
|
5
|
+
module Logging
|
6
|
+
include SemanticLogger::Loggable
|
6
7
|
|
7
|
-
|
8
|
-
|
9
|
-
|
8
|
+
private
|
9
|
+
|
10
|
+
def tag_logger(*tags, &block)
|
11
|
+
logger.tagged(*tags, &block)
|
12
|
+
end
|
10
13
|
end
|
11
|
-
end
|
12
14
|
|
13
|
-
class
|
14
|
-
|
15
|
+
class SerializableResource
|
16
|
+
include SemanticLogger::Loggable
|
17
|
+
end
|
15
18
|
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
require "active_support/logger"
|
2
|
+
|
3
|
+
module ActiveSupport
|
4
|
+
# More hacks to try and stop Rails from being it's own worst enemy.
|
5
|
+
class Logger
|
6
|
+
class << self
|
7
|
+
undef :logger_outputs_to?, :broadcast
|
8
|
+
end
|
9
|
+
|
10
|
+
# Prevent Console from trying to merge loggers
|
11
|
+
def self.logger_outputs_to?(*args)
|
12
|
+
true
|
13
|
+
end
|
14
|
+
|
15
|
+
# Prevent broadcasting since SemanticLogger already supports multiple loggers
|
16
|
+
def self.broadcast(logger)
|
17
|
+
Module.new
|
18
|
+
end
|
19
|
+
|
20
|
+
def self.new(*args, **kwargs)
|
21
|
+
SemanticLogger[self]
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -1,11 +1,15 @@
|
|
1
1
|
# Patch the Rails::Server log_to_stdout so that it logs via SemanticLogger
|
2
|
-
|
3
|
-
module Rails #:nodoc:
|
4
|
-
class Server #:nodoc:
|
5
|
-
private
|
2
|
+
require "rails"
|
6
3
|
|
4
|
+
module Rails
|
5
|
+
class Server
|
6
|
+
private
|
7
|
+
|
8
|
+
undef_method :log_to_stdout if method_defined?(:log_to_stdout)
|
7
9
|
def log_to_stdout
|
8
|
-
|
10
|
+
wrapped_app # touch the app so the logger is set up
|
11
|
+
|
12
|
+
SemanticLogger.add_appender(io: $stdout, formatter: :color) unless SemanticLogger.appenders.console_output?
|
9
13
|
end
|
10
14
|
end
|
11
15
|
end
|
@@ -0,0 +1,122 @@
|
|
1
|
+
module RailsSemanticLogger
|
2
|
+
# Options for controlling Rails Semantic Logger behavior
|
3
|
+
#
|
4
|
+
# * Convert Action Controller and Active Record text messages to semantic data
|
5
|
+
#
|
6
|
+
# Rails -- Started -- { :ip => "127.0.0.1", :method => "GET", :path => "/dashboards/inquiry_recent_activity" }
|
7
|
+
# UserController -- Completed #index -- { :action => "index", :db_runtime => 54.64, :format => "HTML", :method => "GET", :mongo_runtime => 0.0, :path => "/users", :status => 200, :status_message => "OK", :view_runtime => 709.88 }
|
8
|
+
#
|
9
|
+
# config.rails_semantic_logger.semantic = true
|
10
|
+
#
|
11
|
+
# * Change Rack started message to debug so that it does not appear in production
|
12
|
+
#
|
13
|
+
# config.rails_semantic_logger.started = false
|
14
|
+
#
|
15
|
+
# * Change Processing message to debug so that it does not appear in production
|
16
|
+
#
|
17
|
+
# config.rails_semantic_logger.processing = false
|
18
|
+
#
|
19
|
+
# * Change Action View render log messages to debug so that they do not appear in production
|
20
|
+
#
|
21
|
+
# ActionView::Base -- Rendered data/search/_user.html.haml (46.7ms)
|
22
|
+
#
|
23
|
+
# config.rails_semantic_logger.rendered = false
|
24
|
+
#
|
25
|
+
# * Override the Awesome Print options for logging Hash data as text:
|
26
|
+
#
|
27
|
+
# Any valid AwesomePrint option for rendering data.
|
28
|
+
# The defaults can changed be creating a `~/.aprc` file.
|
29
|
+
# See: https://github.com/michaeldv/awesome_print
|
30
|
+
#
|
31
|
+
# Note: The option :multiline is set to false if not supplied.
|
32
|
+
# Note: Has no effect if Awesome Print is not installed.
|
33
|
+
#
|
34
|
+
# config.rails_semantic_logger.ap_options = {multiline: false}
|
35
|
+
#
|
36
|
+
# * Whether to automatically add an environment specific log file appender.
|
37
|
+
# For Example: 'log/development.log'
|
38
|
+
#
|
39
|
+
# Note:
|
40
|
+
# When Semantic Logger fails to log to an appender it logs the error to an
|
41
|
+
# internal logger, which by default writes to STDERR.
|
42
|
+
# Example, change the default internal logger to log to stdout:
|
43
|
+
# SemanticLogger::Processor.logger = SemanticLogger::Appender::IO.new($stdout, level: :warn)
|
44
|
+
#
|
45
|
+
# config.rails_semantic_logger.add_file_appender = true
|
46
|
+
#
|
47
|
+
# * Silence asset logging
|
48
|
+
#
|
49
|
+
# config.rails_semantic_logger.quiet_assets = false
|
50
|
+
#
|
51
|
+
# * Disable automatic logging to stderr when running a Rails console.
|
52
|
+
#
|
53
|
+
# config.rails_semantic_logger.console_logger = false
|
54
|
+
#
|
55
|
+
# * Override the output format for the primary Rails log file.
|
56
|
+
#
|
57
|
+
# Valid options:
|
58
|
+
# * :default
|
59
|
+
# Plain text output with no color.
|
60
|
+
# * :color
|
61
|
+
# Plain text output with color.
|
62
|
+
# * :json
|
63
|
+
# JSON output format.
|
64
|
+
# * class
|
65
|
+
#
|
66
|
+
# * Proc
|
67
|
+
# A block that will be called to format the output.
|
68
|
+
# It is supplied with the `log` entry and should return the formatted data.
|
69
|
+
#
|
70
|
+
# Note:
|
71
|
+
# * `:default` is automatically changed to `:color` if `config.colorize_logging` is `true`.
|
72
|
+
#
|
73
|
+
# JSON Example, in `application.rb`:
|
74
|
+
# config.rails_semantic_logger.format = :json
|
75
|
+
#
|
76
|
+
# Custom Example, create `app/lib/my_formatter.rb`:
|
77
|
+
#
|
78
|
+
# # My Custom colorized formatter
|
79
|
+
# class MyFormatter < SemanticLogger::Formatters::Color
|
80
|
+
# # Return the complete log level name in uppercase
|
81
|
+
# def level
|
82
|
+
# "#{color}log.level.upcase#{color_map.clear}"
|
83
|
+
# end
|
84
|
+
# end
|
85
|
+
#
|
86
|
+
# # In application.rb:
|
87
|
+
# config.rails_semantic_logger.format = MyFormatter.new
|
88
|
+
#
|
89
|
+
#
|
90
|
+
# config.rails_semantic_logger.format = :default
|
91
|
+
#
|
92
|
+
# * Add a filter to the file logger [Regexp|Proc]
|
93
|
+
# RegExp: Only include log messages where the class name matches the supplied
|
94
|
+
# regular expression. All other messages will be ignored.
|
95
|
+
# Proc: Only include log messages where the supplied Proc returns true.
|
96
|
+
# The Proc must return true or false.
|
97
|
+
#
|
98
|
+
# config.rails_semantic_logger.filter = nil
|
99
|
+
#
|
100
|
+
# * named_tags: *DEPRECATED*
|
101
|
+
# Instead, supply a Hash to config.log_tags
|
102
|
+
# config.rails_semantic_logger.named_tags = nil
|
103
|
+
class Options
|
104
|
+
attr_accessor :semantic, :started, :processing, :rendered, :ap_options, :add_file_appender,
|
105
|
+
:quiet_assets, :format, :named_tags, :filter, :console_logger
|
106
|
+
|
107
|
+
# Setup default values
|
108
|
+
def initialize
|
109
|
+
@semantic = true
|
110
|
+
@started = false
|
111
|
+
@processing = false
|
112
|
+
@rendered = false
|
113
|
+
@ap_options = {multiline: false}
|
114
|
+
@add_file_appender = true
|
115
|
+
@quiet_assets = false
|
116
|
+
@format = :default
|
117
|
+
@named_tags = nil
|
118
|
+
@filter = nil
|
119
|
+
@console_logger = true
|
120
|
+
end
|
121
|
+
end
|
122
|
+
end
|
@@ -0,0 +1,100 @@
|
|
1
|
+
require "active_support/core_ext/time/conversions"
|
2
|
+
require "active_support/core_ext/object/blank"
|
3
|
+
require "active_support/log_subscriber"
|
4
|
+
require "action_dispatch/http/request"
|
5
|
+
require "rack/body_proxy"
|
6
|
+
|
7
|
+
module RailsSemanticLogger
|
8
|
+
module Rack
|
9
|
+
class Logger < ActiveSupport::LogSubscriber
|
10
|
+
class << self
|
11
|
+
attr_reader :logger
|
12
|
+
attr_accessor :started_request_log_level
|
13
|
+
end
|
14
|
+
|
15
|
+
def initialize(app, taggers = nil)
|
16
|
+
@app = app
|
17
|
+
@taggers = taggers || []
|
18
|
+
end
|
19
|
+
|
20
|
+
def call(env)
|
21
|
+
request = ActionDispatch::Request.new(env)
|
22
|
+
|
23
|
+
# Check for named tags (Hash)
|
24
|
+
if @taggers && !@taggers.empty?
|
25
|
+
tags = @taggers.is_a?(Hash) ? compute_named_tags(request) : compute_tags(request)
|
26
|
+
logger.tagged(tags) { call_app(request, env) }
|
27
|
+
else
|
28
|
+
call_app(request, env)
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
private
|
33
|
+
|
34
|
+
@logger = SemanticLogger["Rack"]
|
35
|
+
@started_request_log_level = :debug
|
36
|
+
|
37
|
+
def call_app(request, env)
|
38
|
+
instrumenter = ActiveSupport::Notifications.instrumenter
|
39
|
+
instrumenter_state = instrumenter.start "request.action_dispatch", request: request
|
40
|
+
instrumenter_finish = -> () {
|
41
|
+
instrumenter.finish_with_state(instrumenter_state, "request.action_dispatch", request: request)
|
42
|
+
}
|
43
|
+
|
44
|
+
logger.send(self.class.started_request_log_level) { started_request_message(request) }
|
45
|
+
status, headers, body = @app.call(env)
|
46
|
+
body = ::Rack::BodyProxy.new(body, &instrumenter_finish)
|
47
|
+
[status, headers, body]
|
48
|
+
rescue Exception
|
49
|
+
instrumenter_finish.call
|
50
|
+
raise
|
51
|
+
end
|
52
|
+
|
53
|
+
def started_request_message(request)
|
54
|
+
{
|
55
|
+
message: "Started",
|
56
|
+
payload: {
|
57
|
+
method: request.request_method,
|
58
|
+
path: request.filtered_path,
|
59
|
+
ip: request.remote_ip
|
60
|
+
}
|
61
|
+
}
|
62
|
+
end
|
63
|
+
|
64
|
+
def compute_tags(request)
|
65
|
+
@taggers.collect do |tag|
|
66
|
+
case tag
|
67
|
+
when Proc
|
68
|
+
tag.call(request)
|
69
|
+
when Symbol
|
70
|
+
request.send(tag)
|
71
|
+
else
|
72
|
+
tag
|
73
|
+
end
|
74
|
+
end
|
75
|
+
end
|
76
|
+
|
77
|
+
# Leave out any named tags with a nil value
|
78
|
+
def compute_named_tags(request)
|
79
|
+
tagged = {}
|
80
|
+
@taggers.each_pair do |tag, value|
|
81
|
+
resolved =
|
82
|
+
case value
|
83
|
+
when Proc
|
84
|
+
value.call(request)
|
85
|
+
when Symbol
|
86
|
+
request.send(value)
|
87
|
+
else
|
88
|
+
value
|
89
|
+
end
|
90
|
+
tagged[tag] = resolved unless resolved.nil?
|
91
|
+
end
|
92
|
+
tagged
|
93
|
+
end
|
94
|
+
|
95
|
+
def logger
|
96
|
+
self.class.logger
|
97
|
+
end
|
98
|
+
end
|
99
|
+
end
|
100
|
+
end
|
@@ -1,3 +1,3 @@
|
|
1
|
-
module RailsSemanticLogger
|
2
|
-
VERSION =
|
1
|
+
module RailsSemanticLogger
|
2
|
+
VERSION = "4.12.0".freeze
|
3
3
|
end
|
@@ -1,6 +1,61 @@
|
|
1
|
-
require
|
2
|
-
require
|
3
|
-
require
|
1
|
+
require "semantic_logger"
|
2
|
+
require "rails_semantic_logger/extensions/rails/server" if defined?(Rails::Server)
|
3
|
+
require "rails_semantic_logger/engine"
|
4
4
|
|
5
5
|
module RailsSemanticLogger
|
6
|
+
module ActionController
|
7
|
+
autoload :LogSubscriber, "rails_semantic_logger/action_controller/log_subscriber"
|
8
|
+
end
|
9
|
+
module ActionMailer
|
10
|
+
autoload :LogSubscriber, "rails_semantic_logger/action_mailer/log_subscriber"
|
11
|
+
end
|
12
|
+
module ActionView
|
13
|
+
autoload :LogSubscriber, "rails_semantic_logger/action_view/log_subscriber"
|
14
|
+
end
|
15
|
+
module ActiveJob
|
16
|
+
autoload :LogSubscriber, "rails_semantic_logger/active_job/log_subscriber"
|
17
|
+
end
|
18
|
+
module ActiveRecord
|
19
|
+
autoload :LogSubscriber, "rails_semantic_logger/active_record/log_subscriber"
|
20
|
+
end
|
21
|
+
module Rack
|
22
|
+
autoload :Logger, "rails_semantic_logger/rack/logger"
|
23
|
+
end
|
24
|
+
module DelayedJob
|
25
|
+
autoload :Plugin, "rails_semantic_logger/delayed_job/plugin"
|
26
|
+
end
|
27
|
+
|
28
|
+
autoload :Options, "rails_semantic_logger/options"
|
29
|
+
|
30
|
+
# Swap an existing subscriber with a new one
|
31
|
+
def self.swap_subscriber(old_class, new_class, notifier)
|
32
|
+
subscribers = ActiveSupport::LogSubscriber.subscribers.select { |s| s.is_a?(old_class) }
|
33
|
+
subscribers.each { |subscriber| unattach(subscriber) }
|
34
|
+
|
35
|
+
new_class.attach_to(notifier)
|
36
|
+
end
|
37
|
+
|
38
|
+
def self.unattach(subscriber)
|
39
|
+
subscriber_patterns(subscriber).each do |pattern|
|
40
|
+
ActiveSupport::Notifications.notifier.listeners_for(pattern).each do |sub|
|
41
|
+
next unless sub.instance_variable_get(:@delegate) == subscriber
|
42
|
+
|
43
|
+
ActiveSupport::Notifications.unsubscribe(sub)
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
47
|
+
ActiveSupport::LogSubscriber.subscribers.delete(subscriber)
|
48
|
+
end
|
49
|
+
|
50
|
+
def self.subscriber_patterns(subscriber)
|
51
|
+
subscriber.patterns.respond_to?(:keys) ?
|
52
|
+
subscriber.patterns.keys :
|
53
|
+
subscriber.patterns
|
54
|
+
end
|
55
|
+
|
56
|
+
private_class_method :subscriber_patterns, :unattach
|
6
57
|
end
|
58
|
+
|
59
|
+
require("rails_semantic_logger/extensions/mongoid/config") if defined?(Mongoid)
|
60
|
+
require("rails_semantic_logger/extensions/active_support/logger") if defined?(ActiveSupport::Logger)
|
61
|
+
require("rails_semantic_logger/extensions/rack/server") if defined?(Rack::Server)
|
metadata
CHANGED
@@ -1,46 +1,59 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rails_semantic_logger
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.
|
4
|
+
version: 4.12.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Reid Morrison
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-03-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
|
-
name:
|
14
|
+
name: rack
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
17
|
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '
|
19
|
+
version: '0'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '
|
26
|
+
version: '0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: railties
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '5.1'
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '5.1'
|
27
41
|
- !ruby/object:Gem::Dependency
|
28
42
|
name: semantic_logger
|
29
43
|
requirement: !ruby/object:Gem::Requirement
|
30
44
|
requirements:
|
31
45
|
- - "~>"
|
32
46
|
- !ruby/object:Gem::Version
|
33
|
-
version: '4.
|
47
|
+
version: '4.13'
|
34
48
|
type: :runtime
|
35
49
|
prerelease: false
|
36
50
|
version_requirements: !ruby/object:Gem::Requirement
|
37
51
|
requirements:
|
38
52
|
- - "~>"
|
39
53
|
- !ruby/object:Gem::Version
|
40
|
-
version: '4.
|
41
|
-
description:
|
54
|
+
version: '4.13'
|
55
|
+
description:
|
42
56
|
email:
|
43
|
-
- reidmo@gmail.com
|
44
57
|
executables: []
|
45
58
|
extensions: []
|
46
59
|
extra_rdoc_files: []
|
@@ -49,26 +62,36 @@ files:
|
|
49
62
|
- README.md
|
50
63
|
- Rakefile
|
51
64
|
- lib/rails_semantic_logger.rb
|
65
|
+
- lib/rails_semantic_logger/action_controller/log_subscriber.rb
|
66
|
+
- lib/rails_semantic_logger/action_mailer/log_subscriber.rb
|
67
|
+
- lib/rails_semantic_logger/action_view/log_subscriber.rb
|
68
|
+
- lib/rails_semantic_logger/active_job/log_subscriber.rb
|
69
|
+
- lib/rails_semantic_logger/active_record/log_subscriber.rb
|
70
|
+
- lib/rails_semantic_logger/delayed_job/plugin.rb
|
52
71
|
- lib/rails_semantic_logger/engine.rb
|
53
72
|
- lib/rails_semantic_logger/extensions/action_cable/tagged_logger_proxy.rb
|
54
73
|
- lib/rails_semantic_logger/extensions/action_controller/live.rb
|
55
|
-
- lib/rails_semantic_logger/extensions/action_controller/log_subscriber.rb
|
56
|
-
- lib/rails_semantic_logger/extensions/action_controller/log_subscriber_processing.rb
|
57
74
|
- lib/rails_semantic_logger/extensions/action_dispatch/debug_exceptions.rb
|
58
|
-
- lib/rails_semantic_logger/extensions/action_view/log_subscriber.rb
|
59
75
|
- lib/rails_semantic_logger/extensions/action_view/streaming_template_renderer.rb
|
60
76
|
- lib/rails_semantic_logger/extensions/active_job/logging.rb
|
61
77
|
- lib/rails_semantic_logger/extensions/active_model_serializers/logging.rb
|
62
|
-
- lib/rails_semantic_logger/extensions/
|
63
|
-
- lib/rails_semantic_logger/extensions/
|
64
|
-
- lib/rails_semantic_logger/extensions/
|
78
|
+
- lib/rails_semantic_logger/extensions/active_support/logger.rb
|
79
|
+
- lib/rails_semantic_logger/extensions/active_support/tagged_logging.rb
|
80
|
+
- lib/rails_semantic_logger/extensions/mongoid/config.rb
|
81
|
+
- lib/rails_semantic_logger/extensions/rack/server.rb
|
65
82
|
- lib/rails_semantic_logger/extensions/rails/server.rb
|
83
|
+
- lib/rails_semantic_logger/options.rb
|
84
|
+
- lib/rails_semantic_logger/rack/logger.rb
|
66
85
|
- lib/rails_semantic_logger/version.rb
|
67
|
-
homepage: https://
|
86
|
+
homepage: https://logger.rocketjob.io
|
68
87
|
licenses:
|
69
88
|
- Apache-2.0
|
70
|
-
metadata:
|
71
|
-
|
89
|
+
metadata:
|
90
|
+
bug_tracker_uri: https://github.com/reidmorrison/rails_semantic_logger/issues
|
91
|
+
documentation_uri: https://logger.rocketjob.io
|
92
|
+
source_code_uri: https://github.com/reidmorrison/rails_semantic_logger/tree/4.12.0
|
93
|
+
rubygems_mfa_required: 'true'
|
94
|
+
post_install_message:
|
72
95
|
rdoc_options: []
|
73
96
|
require_paths:
|
74
97
|
- lib
|
@@ -76,16 +99,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
76
99
|
requirements:
|
77
100
|
- - ">="
|
78
101
|
- !ruby/object:Gem::Version
|
79
|
-
version: '2.
|
102
|
+
version: '2.5'
|
80
103
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
81
104
|
requirements:
|
82
105
|
- - ">="
|
83
106
|
- !ruby/object:Gem::Version
|
84
107
|
version: '0'
|
85
108
|
requirements: []
|
86
|
-
|
87
|
-
|
88
|
-
signing_key:
|
109
|
+
rubygems_version: 3.4.9
|
110
|
+
signing_key:
|
89
111
|
specification_version: 4
|
90
|
-
summary:
|
112
|
+
summary: Feature rich logging framework that replaces the Rails logger.
|
91
113
|
test_files: []
|