logstasher 0.2.8 → 0.3.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 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