logstasher 0.2.8 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,15 @@
1
+ ---
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ NmZkYWVkNWMxYzM5M2ViOWUyM2NhODE5NWY5YTc2YjA1ZWM4OWYyZA==
5
+ data.tar.gz: !binary |-
6
+ NzIzYjFjZDQ3ZWFmMmQzZTJkMzA5MzBhMGM4OGRhN2Q0MzBlMDM2OA==
7
+ SHA512:
8
+ metadata.gz: !binary |-
9
+ MzVhODE3ZGZjNWYwNDUzMmMzZWNmMDk0Njg2NDMyYzhjOGM4OTlkYzNlNmJh
10
+ MGE2MjA4N2JjODM4YWYwYzdhMzhlZDc2OTM2NWI1ZTgzZmNmN2MwODUwMzgz
11
+ ZDA0ZTM0MTAyNjBmYzllNGM0NjA0ZjYyNzg3Yjk2ODQ3MTM0Njk=
12
+ data.tar.gz: !binary |-
13
+ YjJlY2FiZmJlYTMyY2M5NThjMzQyNjU5MTFiOTU4ODJhZGU0Y2NkZDM1YWE4
14
+ OWE5NDA5M2EwZjBlZTAyN2MxMGQyMDcyMDk0NWZlNTQzMmViYTMwMDdkMzA4
15
+ NjBlNDdiM2JiYTdiNDI0ZTBkZGU5MGM4MmIwMDJhNGM0YzQyYzE=
data/README.md CHANGED
@@ -1,6 +1,7 @@
1
- # Logstasher - Awesome Logging for Rails [![Build Status](https://secure.travis-ci.org/shadabahmed/logstasher.png)](https://secure.travis-ci.org/shadabahmed/logstasher)
1
+ # Logstasher [![Gem Version](https://badge.fury.io/rb/logstasher.png)](http://badge.fury.io/rb/logstasher) [![Build Status](https://secure.travis-ci.org/shadabahmed/logstasher.png)](https://secure.travis-ci.org/shadabahmed/logstasher)
2
+ ### Awesome Logging for Rails !!
2
3
 
3
- This gem is heavily inspired from [lograge](https://github.com/roidrage/lograge) but it's focused on one thing and one thing only. That's making your logs awesome like this:
4
+ This gem is heavily inspired from [lograge](https://github.com/roidrage/lograge), but it's focused on one thing and one thing only. That's making your logs awesome like this:
4
5
 
5
6
  [![Awesome Logs](http://i.imgur.com/zZXWQNp.png)](http://i.imgur.com/zZXWQNp.png)
6
7
 
data/lib/logstasher.rb CHANGED
@@ -47,7 +47,7 @@ module LogStasher
47
47
  app.config.action_dispatch.rack_cache[:verbose] = false if app.config.action_dispatch.rack_cache
48
48
  # Path instrumentation class to insert our hook
49
49
  require 'logstasher/rails_ext/action_controller/metal/instrumentation'
50
- require 'logstash/event'
50
+ require 'logstash-event'
51
51
  self.suppress_app_logs(app)
52
52
  LogStasher::RequestLogSubscriber.attach_to :action_controller
53
53
  self.logger = app.config.logstasher.logger || Logger.new("#{Rails.root}/log/logstash_#{Rails.env}.log")
@@ -13,8 +13,9 @@ module LogStasher
13
13
  data.merge! extract_exception(payload)
14
14
  data.merge! extract_custom_fields(payload)
15
15
 
16
- event = LogStash::Event.new('@fields' => data, '@tags' => ['request'])
17
- event.tags << 'exception' if payload[:exception]
16
+ tags = ['request']
17
+ tags.push('exception') if payload[:exception]
18
+ event = LogStash::Event.new('@fields' => data, '@tags' => tags)
18
19
  LogStasher.logger << event.to_json + "\n"
19
20
  end
20
21
 
@@ -1,3 +1,3 @@
1
1
  module LogStasher
2
- VERSION = "0.2.8"
2
+ VERSION = "0.3.0"
3
3
  end
data/logstasher.gemspec CHANGED
@@ -17,7 +17,7 @@ Gem::Specification.new do |s|
17
17
  s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
18
18
  s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
19
19
  s.require_paths = ["lib"]
20
- s.add_runtime_dependency "logstash-event"
20
+ s.add_runtime_dependency "logstash-event", ["~> 1.1.0"]
21
21
 
22
22
  # specify any dependencies here; for example:
23
23
  s.add_development_dependency "rspec"
@@ -37,8 +37,8 @@ describe LogStasher::RequestLogSubscriber do
37
37
  describe '.process_action' do
38
38
  let!(:request_subscriber) { @request_subscriber ||= LogStasher::RequestLogSubscriber.new() }
39
39
  let(:payload) { {} }
40
- let(:event) { mock(:payload => payload) }
41
- let(:logger) { mock }
40
+ let(:event) { double(:payload => payload) }
41
+ let(:logger) { double }
42
42
  let(:json) { "{\"@source\":\"unknown\",\"@tags\":[\"request\"],\"@fields\":{\"request\":true,\"status\":true,\"runtimes\":true,\"location\":true,\"exception\":true,\"custom\":true},\"@timestamp\":\"timestamp\"}\n" }
43
43
  before do
44
44
  LogStasher.stub(:logger => logger)
@@ -148,7 +148,7 @@ describe LogStasher::RequestLogSubscriber do
148
148
  end
149
149
 
150
150
  describe "with append_custom_params block specified" do
151
- let(:request) { mock(:remote_ip => '10.0.0.1')}
151
+ let(:request) { double(:remote_ip => '10.0.0.1')}
152
152
  it "should add default custom data to the output" do
153
153
  request.stub(:params => event.payload[:params])
154
154
  LogStasher.add_default_fields_to_payload(event.payload, request)
@@ -35,7 +35,7 @@ describe LogStasher do
35
35
  describe '.appened_default_info_to_payload' do
36
36
  let(:params) { {'a' => '1', 'b' => 2, 'action' => 'action', 'controller' => 'test'}.with_indifferent_access }
37
37
  let(:payload) { {:params => params} }
38
- let(:request) { mock(:params => params, :remote_ip => '10.0.0.1')}
38
+ let(:request) { double(:params => params, :remote_ip => '10.0.0.1')}
39
39
  after do
40
40
  LogStasher.custom_fields = []
41
41
  end
@@ -58,16 +58,16 @@ describe LogStasher do
58
58
  end
59
59
 
60
60
  describe '.setup' do
61
- let(:logger) { mock }
62
- let(:logstasher_config) { mock(:logger => logger,:log_level => 'warn') }
63
- let(:config) { mock(:logstasher => logstasher_config) }
64
- let(:app) { mock(:config => config) }
61
+ let(:logger) { double }
62
+ let(:logstasher_config) { double(:logger => logger,:log_level => 'warn') }
63
+ let(:config) { double(:logstasher => logstasher_config) }
64
+ let(:app) { double(:config => config) }
65
65
  before do
66
- config.stub(:action_dispatch => mock(:rack_cache => false))
66
+ config.stub(:action_dispatch => double(:rack_cache => false))
67
67
  end
68
68
  it 'defines a method in ActionController::Base' do
69
69
  LogStasher.should_receive(:require).with('logstasher/rails_ext/action_controller/metal/instrumentation')
70
- LogStasher.should_receive(:require).with('logstash/event')
70
+ LogStasher.should_receive(:require).with('logstash-event')
71
71
  LogStasher.should_receive(:suppress_app_logs).with(app)
72
72
  LogStasher::RequestLogSubscriber.should_receive(:attach_to).with(:action_controller)
73
73
  logger.should_receive(:level=).with('warn')
@@ -78,8 +78,8 @@ describe LogStasher do
78
78
  end
79
79
 
80
80
  describe '.suppress_app_logs' do
81
- let(:logstasher_config){ mock(:logstasher => mock(:suppress_app_log => true))}
82
- let(:app){ mock(:config => logstasher_config)}
81
+ let(:logstasher_config){ double(:logstasher => double(:suppress_app_log => true))}
82
+ let(:app){ double(:config => logstasher_config)}
83
83
  it 'removes existing subscription if enabled' do
84
84
  LogStasher.should_receive(:require).with('logstasher/rails_ext/rack/logger')
85
85
  LogStasher.should_receive(:remove_existing_log_subscriptions)
@@ -87,7 +87,7 @@ describe LogStasher do
87
87
  end
88
88
 
89
89
  context 'when disabled' do
90
- let(:logstasher_config){ mock(:logstasher => mock(:suppress_app_log => false)) }
90
+ let(:logstasher_config){ double(:logstasher => double(:suppress_app_log => false)) }
91
91
  it 'does not remove existing subscription' do
92
92
  LogStasher.should_not_receive(:remove_existing_log_subscriptions)
93
93
  LogStasher.suppress_app_logs(app)
@@ -95,7 +95,7 @@ describe LogStasher do
95
95
 
96
96
  describe "backward compatibility" do
97
97
  context 'with spelling "supress_app_log"' do
98
- let(:logstasher_config){ mock(:logstasher => mock(:suppress_app_log => nil, :supress_app_log => false)) }
98
+ let(:logstasher_config){ double(:logstasher => double(:suppress_app_log => nil, :supress_app_log => false)) }
99
99
  it 'does not remove existing subscription' do
100
100
  LogStasher.should_not_receive(:remove_existing_log_subscriptions)
101
101
  LogStasher.suppress_app_logs(app)
@@ -120,7 +120,7 @@ describe LogStasher do
120
120
  end
121
121
 
122
122
  describe '.log' do
123
- let(:logger) { mock() }
123
+ let(:logger) { double() }
124
124
  before do
125
125
  LogStasher.logger = logger
126
126
  LogStash::Time.stub(:now => 'timestamp')
data/spec/spec_helper.rb CHANGED
@@ -10,7 +10,7 @@ if ENV['COVERAGE']
10
10
  end
11
11
  end
12
12
 
13
- # Modify load path so you can require 'multi_config' directly.
13
+ # Modify load path so you can require 'ogstasher directly.
14
14
  $LOAD_PATH.unshift(File.expand_path('../../lib', __FILE__))
15
15
 
16
16
  require 'rubygems'
metadata CHANGED
@@ -1,36 +1,32 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: logstasher
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.8
5
- prerelease:
4
+ version: 0.3.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Shadab Ahmed
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-08-17 00:00:00.000000000 Z
11
+ date: 2013-10-15 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: logstash-event
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - ~>
20
18
  - !ruby/object:Gem::Version
21
- version: '0'
19
+ version: 1.1.0
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ! '>='
24
+ - - ~>
28
25
  - !ruby/object:Gem::Version
29
- version: '0'
26
+ version: 1.1.0
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: rspec
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
31
  - - ! '>='
36
32
  - !ruby/object:Gem::Version
@@ -38,7 +34,6 @@ dependencies:
38
34
  type: :development
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
38
  - - ! '>='
44
39
  - !ruby/object:Gem::Version
@@ -46,7 +41,6 @@ dependencies:
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: bundler
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
45
  - - ! '>='
52
46
  - !ruby/object:Gem::Version
@@ -54,7 +48,6 @@ dependencies:
54
48
  type: :development
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
52
  - - ! '>='
60
53
  - !ruby/object:Gem::Version
@@ -62,7 +55,6 @@ dependencies:
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: rails
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
59
  - - ! '>='
68
60
  - !ruby/object:Gem::Version
@@ -70,7 +62,6 @@ dependencies:
70
62
  type: :development
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
66
  - - ! '>='
76
67
  - !ruby/object:Gem::Version
@@ -101,33 +92,26 @@ files:
101
92
  - spec/spec_helper.rb
102
93
  homepage: https://github.com/shadabahmed/logstasher
103
94
  licenses: []
95
+ metadata: {}
104
96
  post_install_message:
105
97
  rdoc_options: []
106
98
  require_paths:
107
99
  - lib
108
100
  required_ruby_version: !ruby/object:Gem::Requirement
109
- none: false
110
101
  requirements:
111
102
  - - ! '>='
112
103
  - !ruby/object:Gem::Version
113
104
  version: '0'
114
- segments:
115
- - 0
116
- hash: -3954603627372273553
117
105
  required_rubygems_version: !ruby/object:Gem::Requirement
118
- none: false
119
106
  requirements:
120
107
  - - ! '>='
121
108
  - !ruby/object:Gem::Version
122
109
  version: '0'
123
- segments:
124
- - 0
125
- hash: -3954603627372273553
126
110
  requirements: []
127
111
  rubyforge_project: logstasher
128
- rubygems_version: 1.8.25
112
+ rubygems_version: 2.1.4
129
113
  signing_key:
130
- specification_version: 3
114
+ specification_version: 4
131
115
  summary: Awesome rails logs
132
116
  test_files:
133
117
  - spec/logstasher_logsubscriber_spec.rb