logjam_agent 0.3.6 → 0.4.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.
- data/lib/logjam_agent/buffered_logger.rb +17 -5
- data/lib/logjam_agent/railtie.rb +9 -7
- data/lib/logjam_agent/version.rb +1 -1
- metadata +9 -7
@@ -9,8 +9,8 @@ module LogjamAgent
|
|
9
9
|
|
10
10
|
def initialize(*args)
|
11
11
|
super(*args)
|
12
|
-
# stupid bug in the buffered logger code
|
13
|
-
@log.write "\n"
|
12
|
+
# stupid bug in the buffered logger code (Rails::VERSION::STRING < "3.2")
|
13
|
+
@log.write "\n" if respond_to?(:buffer)
|
14
14
|
@formatter = lambda{|_, _, _, message| message}
|
15
15
|
end
|
16
16
|
|
@@ -47,15 +47,27 @@ module LogjamAgent
|
|
47
47
|
end
|
48
48
|
end
|
49
49
|
time = Time.now
|
50
|
-
|
51
|
-
|
50
|
+
formatted_message = formatter.call(severity, time, progname, message)
|
51
|
+
if respond_to?(:buffer)
|
52
|
+
buffer << formatted_message << "\n"
|
53
|
+
auto_flush
|
54
|
+
else # @log is a logger
|
55
|
+
@log << "#{formatted_message}\n"
|
56
|
+
end
|
52
57
|
request.add_line(severity, time, message) if request
|
53
58
|
message
|
54
59
|
end
|
55
60
|
|
56
61
|
def logdev=(log_device)
|
57
62
|
raise "cannot connect logger to new log device" unless log_device.respond_to?(:write)
|
58
|
-
|
63
|
+
if respond_to?(:buffer)
|
64
|
+
@log = log_device
|
65
|
+
else
|
66
|
+
@log.instance_eval do
|
67
|
+
raise "cannot set log device" unless defined?(@logdev)
|
68
|
+
@logdev = log_device
|
69
|
+
end
|
70
|
+
end
|
59
71
|
end
|
60
72
|
|
61
73
|
private
|
data/lib/logjam_agent/railtie.rb
CHANGED
@@ -1,14 +1,21 @@
|
|
1
1
|
require 'logjam_agent'
|
2
2
|
module LogjamAgent
|
3
|
+
|
4
|
+
module Rack
|
5
|
+
autoload :Logger, 'logjam_agent/rack/logger'
|
6
|
+
end
|
7
|
+
autoload :Middleware, 'logjam_agent/middleware'
|
8
|
+
|
3
9
|
class Railtie < Rails::Railtie
|
4
10
|
|
5
11
|
initializer "initialize_logjam_agent_logger", :before => :initialize_logger do |app|
|
6
12
|
Rails.logger ||= app.config.logger ||
|
7
13
|
begin
|
8
|
-
|
14
|
+
paths = app.config.paths
|
15
|
+
path = (paths.respond_to?(:log) ? paths.log.to_a : paths['log']).first.to_s
|
9
16
|
logger = LogjamAgent::BufferedLogger.new(path)
|
10
17
|
logger.level = ActiveSupport::BufferedLogger.const_get(app.config.log_level.to_s.upcase)
|
11
|
-
logger.auto_flushing = false if Rails.env.production?
|
18
|
+
logger.auto_flushing = false if Rails.env.production? && Rails::VERSION::STRING < "3.2"
|
12
19
|
logger
|
13
20
|
rescue StandardError => e
|
14
21
|
logger = LogjamAgent::BufferedLogger.new(STDERR)
|
@@ -24,11 +31,6 @@ module LogjamAgent
|
|
24
31
|
initializer "logjam_agent", :after => "time_bandits" do |app|
|
25
32
|
app.config.middleware.swap("TimeBandits::Rack::Logger", "LogjamAgent::Rack::Logger")
|
26
33
|
app.config.middleware.insert_before("LogjamAgent::Rack::Logger", "LogjamAgent::Middleware")
|
27
|
-
|
28
|
-
ActiveSupport.on_load(:action_controller) do
|
29
|
-
require 'logjam_agent/middleware.rb'
|
30
|
-
require 'logjam_agent/rack/logger.rb'
|
31
|
-
end
|
32
34
|
end
|
33
35
|
|
34
36
|
end
|
data/lib/logjam_agent/version.rb
CHANGED
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: logjam_agent
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
5
|
-
prerelease:
|
4
|
+
hash: 15
|
5
|
+
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 0
|
8
|
-
-
|
9
|
-
-
|
10
|
-
version: 0.
|
8
|
+
- 4
|
9
|
+
- 0
|
10
|
+
version: 0.4.0
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Stefan Kaes
|
@@ -15,7 +15,8 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date:
|
18
|
+
date: 2012-04-05 00:00:00 +02:00
|
19
|
+
default_executable:
|
19
20
|
dependencies:
|
20
21
|
- !ruby/object:Gem::Dependency
|
21
22
|
name: rake
|
@@ -116,6 +117,7 @@ files:
|
|
116
117
|
- lib/logjam_agent/version.rb
|
117
118
|
- logjam_agent.gemspec
|
118
119
|
- rails/init.rb
|
120
|
+
has_rdoc: true
|
119
121
|
homepage: ""
|
120
122
|
licenses: []
|
121
123
|
|
@@ -145,7 +147,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
145
147
|
requirements: []
|
146
148
|
|
147
149
|
rubyforge_project: logjam_agent
|
148
|
-
rubygems_version: 1.
|
150
|
+
rubygems_version: 1.3.7
|
149
151
|
signing_key:
|
150
152
|
specification_version: 3
|
151
153
|
summary: Logjam client library to be used with logjam
|