log_weasel 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
data/Gemfile.lock CHANGED
@@ -1,7 +1,8 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- log_weasel (0.0.3)
4
+ log_weasel (0.0.4)
5
+ activesupport (~> 3.0)
5
6
 
6
7
  GEM
7
8
  remote: http://rubygems.org/
data/README.md CHANGED
@@ -16,6 +16,39 @@ Use bundler to install it:
16
16
  bundle install
17
17
  </pre>
18
18
 
19
+ ## Rack
20
+
21
+ Log Weasel provides Rack middleware to create and destroy a transaction for every HTTP request.
22
+
23
+ ### Rails 3
24
+
25
+ To see Log Weasel transaction IDs in your Rails logs, you need to add the Rack middleware and
26
+ either use the BufferedLogger provided or customize the formatting of your logger to include
27
+ <code>LogWeasel::Transaction.id</code>.
28
+
29
+ <pre>
30
+ YourApp::Application.configure do
31
+ logger = LogWeasel::BufferedLogger.new "#{Rails.root}/log/#{Rails.env}.log"
32
+ config.logger = logger
33
+ config.action_controller.logger = logger
34
+ config.active_record.logger = logger
35
+
36
+ config.middleware.insert_before Rails::Rack::Logger,
37
+ LogWeasel::Middleware, :key => 'YOUR_APP'
38
+ end
39
+ </pre>
40
+
41
+ ## Resque
42
+
43
+ To see Log Weasel transaction IDs in your Resque logs, you need to need to initialize Log Weasel
44
+ when you configure Resque, for example in a Rails initializer.
45
+
46
+ <pre>
47
+ LogWeasel::Resque.initialize! 'YOUR_APP'
48
+ </pre>
49
+
50
+
51
+
19
52
  ## LICENSE
20
53
 
21
54
  Released under the MIT License. See the LICENSE file for further details.
@@ -2,7 +2,7 @@ require 'active_support/buffered_logger'
2
2
 
3
3
  class LogWeasel::BufferedLogger < ::ActiveSupport::BufferedLogger
4
4
  def add(severity, message = nil, progname = nil, &block)
5
- super(severity, "[#{LogWeasel::Transaction.id}] #$$: #{format_severity(severity)} #{message}", progname, &block)
5
+ super(severity, "[#{DateTime.now.strftime('%Y-%m-%d %H:%M:%S')}] #{LogWeasel::Transaction.id} #$$ #{format_severity(severity)} #{message}", progname, &block)
6
6
  end
7
7
 
8
8
  private
@@ -1,8 +1,10 @@
1
+ require 'active_support/secure_random'
2
+
1
3
  module LogWeasel
2
4
  module Transaction
3
5
 
4
6
  def self.create(key = nil)
5
- Thread.current[:log_weasel_id] = "#{key ? "#{key}_" : ""}#{SecureRandom.hex(10)}"
7
+ Thread.current[:log_weasel_id] = "#{key ? "#{key}-" : ""}#{SecureRandom.hex(10)}"
6
8
  end
7
9
 
8
10
  def self.destroy
@@ -1,5 +1,5 @@
1
1
  module Log
2
2
  module Weasel
3
- VERSION = "0.0.3"
3
+ VERSION = "0.0.4"
4
4
  end
5
5
  end
data/lib/log_weasel.rb CHANGED
@@ -6,4 +6,5 @@ require 'log_weasel/resque'
6
6
 
7
7
  class << ::HoptoadNotifier
8
8
  include LogWeasel::HoptoadNotifier;
9
- end if defined? ::HoptoadNotifier
9
+ end if defined? ::HoptoadNotifier
10
+
data/log_weasel.gemspec CHANGED
@@ -17,8 +17,9 @@ Gem::Specification.new do |s|
17
17
  s.add_development_dependency('rspec')
18
18
  s.add_development_dependency('mocha')
19
19
  s.add_development_dependency('resque', ['~> 1.0'])
20
- s.add_development_dependency('activesupport', ['~> 3.0'])
21
- s.add_development_dependency('hoptoad_notifier',)
20
+ s.add_development_dependency('hoptoad_notifier')
21
+
22
+ s.add_dependency('activesupport', ['~> 3.0'])
22
23
 
23
24
  s.files = `git ls-files`.split("\n")
24
25
  s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
@@ -10,6 +10,6 @@ describe LogWeasel::BufferedLogger do
10
10
 
11
11
  it "logs transaction id" do
12
12
  @logger.info 'message'
13
- @stringio.string.should =~ /\[123\]/
13
+ @stringio.string.should =~ / 123 /
14
14
  end
15
15
  end
@@ -34,7 +34,7 @@ describe LogWeasel::Transaction do
34
34
 
35
35
  it 'creates a transaction id with a key' do
36
36
  id = LogWeasel::Transaction.create 'KEY'
37
- id.should == 'KEY_94b2'
37
+ id.should == 'KEY-94b2'
38
38
  LogWeasel::Transaction.id.should == id
39
39
  end
40
40
 
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 0
8
- - 3
9
- version: 0.0.3
8
+ - 4
9
+ version: 0.0.4
10
10
  platform: ruby
11
11
  authors:
12
12
  - Alon Salant
@@ -14,7 +14,7 @@ autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
16
 
17
- date: 2011-02-11 00:00:00 -08:00
17
+ date: 2011-02-14 00:00:00 -08:00
18
18
  default_executable:
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
@@ -58,30 +58,30 @@ dependencies:
58
58
  prerelease: false
59
59
  version_requirements: *id003
60
60
  - !ruby/object:Gem::Dependency
61
- name: activesupport
61
+ name: hoptoad_notifier
62
62
  requirement: &id004 !ruby/object:Gem::Requirement
63
63
  none: false
64
64
  requirements:
65
- - - ~>
65
+ - - ">="
66
66
  - !ruby/object:Gem::Version
67
67
  segments:
68
- - 3
69
68
  - 0
70
- version: "3.0"
69
+ version: "0"
71
70
  type: :development
72
71
  prerelease: false
73
72
  version_requirements: *id004
74
73
  - !ruby/object:Gem::Dependency
75
- name: hoptoad_notifier
74
+ name: activesupport
76
75
  requirement: &id005 !ruby/object:Gem::Requirement
77
76
  none: false
78
77
  requirements:
79
- - - ">="
78
+ - - ~>
80
79
  - !ruby/object:Gem::Version
81
80
  segments:
81
+ - 3
82
82
  - 0
83
- version: "0"
84
- type: :development
83
+ version: "3.0"
84
+ type: :runtime
85
85
  prerelease: false
86
86
  version_requirements: *id005
87
87
  description: Instrument Rails and Resque with shared transaction IDs so that you trace execution across instances.
@@ -128,7 +128,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
128
128
  requirements:
129
129
  - - ">="
130
130
  - !ruby/object:Gem::Version
131
- hash: -3932380171388894158
131
+ hash: 2275441745027611327
132
132
  segments:
133
133
  - 0
134
134
  version: "0"
@@ -137,7 +137,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
137
137
  requirements:
138
138
  - - ">="
139
139
  - !ruby/object:Gem::Version
140
- hash: -3932380171388894158
140
+ hash: 2275441745027611327
141
141
  segments:
142
142
  - 0
143
143
  version: "0"
@@ -147,7 +147,7 @@ rubyforge_project: log_weasel
147
147
  rubygems_version: 1.3.7
148
148
  signing_key:
149
149
  specification_version: 3
150
- summary: log_weasel-0.0.3
150
+ summary: log_weasel-0.0.4
151
151
  test_files:
152
152
  - spec/log_weasel/buffered_logger_spec.rb
153
153
  - spec/log_weasel/hoptoad_notifier_spec.rb