logstash-logger 0.24.1 → 0.25.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 +4 -4
- data/.travis.yml +8 -24
- data/Appraisals +7 -3
- data/CHANGELOG.md +5 -0
- data/README.md +18 -5
- data/gemfiles/rails_4.0.gemfile +3 -3
- data/gemfiles/rails_4.1.gemfile +3 -3
- data/gemfiles/rails_4.2.gemfile +3 -3
- data/gemfiles/rails_5.0.gemfile +3 -3
- data/gemfiles/rails_5.1.gemfile +9 -0
- data/lib/logstash-logger/formatter.rb +4 -4
- data/lib/logstash-logger/formatter/base.rb +7 -0
- data/lib/logstash-logger/logger.rb +1 -1
- data/lib/logstash-logger/version.rb +1 -1
- data/logstash-logger.gemspec +1 -12
- data/spec/logger_spec.rb +10 -0
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5e1ac7a22d1e29a706c724c69e31f6d8481af909
|
4
|
+
data.tar.gz: 87a7b265d354455021af800ae4c22bf28ee8e3cf
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9ed6a184198bde25c4a0fdbe0e4b563642e4b62ac343ae9996b07511d1b9295d37d7a5f38bcf950790b92ee1bfc1ababee32631db1f0bfcf5032f092bfd9128c
|
7
|
+
data.tar.gz: cac8e3fd8a892e38b1f1a01e201bbeb51bad6cb2669adbd5c317b1cedbcf208c60cdd89445e18e16b38e1576473fac104d72f2aa0ead8113455c48f8152e31bf
|
data/.travis.yml
CHANGED
@@ -5,40 +5,24 @@ cache: bundler
|
|
5
5
|
after_success:
|
6
6
|
bundle exec codeclimate-test-reporter
|
7
7
|
rvm:
|
8
|
-
-
|
9
|
-
- 2.
|
10
|
-
- 2.1
|
11
|
-
- 2.2.6
|
12
|
-
- 2.3.3
|
13
|
-
- 2.4.0
|
14
|
-
- jruby-19mode
|
8
|
+
- 2.2.7
|
9
|
+
- 2.3.4
|
10
|
+
- 2.4.1
|
15
11
|
- jruby-9.1.5.0
|
16
12
|
- rubinius-3
|
17
13
|
gemfile:
|
18
|
-
- gemfiles/rails_3.2.gemfile
|
19
14
|
- gemfiles/rails_4.0.gemfile
|
20
15
|
- gemfiles/rails_4.1.gemfile
|
21
16
|
- gemfiles/rails_4.2.gemfile
|
22
17
|
- gemfiles/rails_5.0.gemfile
|
18
|
+
- gemfiles/rails_5.1.gemfile
|
23
19
|
matrix:
|
24
|
-
exclude:
|
25
|
-
- rvm: 1.9.3
|
26
|
-
gemfile: gemfiles/rails_5.0.gemfile
|
27
|
-
- rvm: jruby-19mode
|
28
|
-
gemfile: gemfiles/rails_5.0.gemfile
|
29
|
-
- rvm: 2.0.0
|
30
|
-
gemfile: gemfiles/rails_5.0.gemfile
|
31
|
-
- rvm: 2.1.9
|
32
|
-
gemfile: gemfiles/rails_5.0.gemfile
|
33
|
-
- rvm: 2.2.5
|
34
|
-
gemfile: gemfiles/rails_3.2.gemfile
|
35
|
-
- rvm: 2.3.1
|
36
|
-
gemfile: gemfiles/rails_3.2.gemfile
|
37
20
|
allow_failures:
|
38
21
|
- rvm: rubinius-3
|
39
|
-
- rvm: 2.4.
|
40
|
-
|
41
|
-
- rvm:
|
22
|
+
- rvm: 2.4.1
|
23
|
+
gemfile: gemfiles/rails_4.0.gemfile
|
24
|
+
- rvm: 2.4.1
|
25
|
+
gemfile: gemfiles/rails_4.1.gemfile
|
42
26
|
addons:
|
43
27
|
code_climate:
|
44
28
|
repo_token: 4d712355fa2863c0f33f413eeede4e52cc221c4bc989a692d97574b1f6010b69
|
data/Appraisals
CHANGED
@@ -1,6 +1,6 @@
|
|
1
|
-
appraise "rails-3.2" do
|
2
|
-
gem "rails", "~> 3.2.18"
|
3
|
-
end
|
1
|
+
#appraise "rails-3.2" do
|
2
|
+
#gem "rails", "~> 3.2.18"
|
3
|
+
#end
|
4
4
|
|
5
5
|
appraise "rails-4.0" do
|
6
6
|
gem "rails", "~> 4.0.0"
|
@@ -17,3 +17,7 @@ end
|
|
17
17
|
appraise "rails-5.0" do
|
18
18
|
gem "rails", "~> 5.0.0"
|
19
19
|
end
|
20
|
+
|
21
|
+
appraise "rails-5.1" do
|
22
|
+
gem "rails", "~> 5.1.0"
|
23
|
+
end
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,8 @@
|
|
1
|
+
## 0.25.0
|
2
|
+
|
3
|
+
- Drops support for Rails 3.2, MRI Ruby < 2.2, and JRuby 1.7, since these have been EOL'ed.
|
4
|
+
- Adds support for customizing events on a per-logger level. [#113](https://github.com/dwbutler/logstash-logger/pull/113)
|
5
|
+
|
1
6
|
## 0.24.1
|
2
7
|
|
3
8
|
- Fixes logging of a hash with symbol keys. [#116](https://github.com/dwbutler/logstash-logger/pull/116)
|
data/README.md
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
# LogStashLogger
|
2
|
-
[](https://travis-ci.org/dwbutler/logstash-logger) [](https://codeclimate.com/github/dwbutler/logstash-logger) [](http://codecov.io/github/dwbutler/logstash-logger?branch=master)
|
2
|
+
[](https://travis-ci.org/dwbutler/logstash-logger) [](https://codeclimate.com/github/dwbutler/logstash-logger) [](http://codecov.io/github/dwbutler/logstash-logger?branch=master) [](https://badge.fury.io/rb/logstash-logger)
|
3
3
|
|
4
4
|
LogStashLogger extends Ruby's `Logger` class to log directly to
|
5
5
|
[Logstash](https://www.elastic.co/products/logstash).
|
@@ -306,6 +306,13 @@ config = LogStashLogger.configure do |config|
|
|
306
306
|
end
|
307
307
|
```
|
308
308
|
|
309
|
+
You can also customize events on a per-logger basis by passing a callable object
|
310
|
+
(lambda or proc) to the `customize_event` option when creating a logger:
|
311
|
+
|
312
|
+
```ruby
|
313
|
+
LogStashLogger.new(customize_event: ->(event){ event['other_field'] = 'other_field' })
|
314
|
+
```
|
315
|
+
|
309
316
|
## Buffering / Automatic Retries
|
310
317
|
|
311
318
|
For devices that establish a connection to a remote service, log messages are buffered internally
|
@@ -394,7 +401,7 @@ end
|
|
394
401
|
|
395
402
|
## Rails Integration
|
396
403
|
|
397
|
-
|
404
|
+
Supports Rails 4 and 5.
|
398
405
|
|
399
406
|
By default, every Rails log message will be written to logstash in `LogStash::Event` JSON format.
|
400
407
|
|
@@ -690,11 +697,11 @@ end
|
|
690
697
|
|
691
698
|
Verified to work with:
|
692
699
|
|
693
|
-
* MRI Ruby
|
694
|
-
* JRuby
|
700
|
+
* MRI Ruby 2.2 - 2.4
|
701
|
+
* JRuby 9.x
|
695
702
|
* Rubinius
|
696
703
|
|
697
|
-
Ruby
|
704
|
+
Ruby versions < 2.2 are EOL'ed and no longer supported.
|
698
705
|
|
699
706
|
## What type of logger should I use?
|
700
707
|
|
@@ -760,6 +767,11 @@ for other fields.
|
|
760
767
|
|
761
768
|
## Breaking changes
|
762
769
|
|
770
|
+
### Version 0.25+
|
771
|
+
|
772
|
+
Rails 3.2, MRI Ruby < 2.2, and JRuby 1.7 are no longer supported, since they have been
|
773
|
+
EOL'ed. If you are on an older version of Ruby, you will need to use 0.24 or below.
|
774
|
+
|
763
775
|
### Version 0.5+
|
764
776
|
* The `source` event key has been replaced with `host` to better match the latest logstash.
|
765
777
|
* The `(host, port, type)` constructor has been deprecated in favor of an options hash constructor.
|
@@ -804,6 +816,7 @@ logger = LogStashLogger.new('localhost', 5228, :tcp)
|
|
804
816
|
* [glaszig](https://github.com/glaszig)
|
805
817
|
* [Bin Lan](https://github.com/lanxx019)
|
806
818
|
* [Joao Fernandes](https://github.com/jcmfernandes)
|
819
|
+
* [CoolElvis](https://github.com/coolelvis)
|
807
820
|
|
808
821
|
## Contributing
|
809
822
|
|
data/gemfiles/rails_4.0.gemfile
CHANGED
@@ -2,8 +2,8 @@
|
|
2
2
|
|
3
3
|
source "https://rubygems.org"
|
4
4
|
|
5
|
-
gem "codecov", :
|
6
|
-
gem "codeclimate-test-reporter", :
|
5
|
+
gem "codecov", require: false, group: :test
|
6
|
+
gem "codeclimate-test-reporter", group: :test, require: nil
|
7
7
|
gem "rails", "~> 4.0.0"
|
8
8
|
|
9
|
-
gemspec :
|
9
|
+
gemspec path: "../"
|
data/gemfiles/rails_4.1.gemfile
CHANGED
@@ -2,8 +2,8 @@
|
|
2
2
|
|
3
3
|
source "https://rubygems.org"
|
4
4
|
|
5
|
-
gem "codecov", :
|
6
|
-
gem "codeclimate-test-reporter", :
|
5
|
+
gem "codecov", require: false, group: :test
|
6
|
+
gem "codeclimate-test-reporter", group: :test, require: nil
|
7
7
|
gem "rails", "~> 4.1.1"
|
8
8
|
|
9
|
-
gemspec :
|
9
|
+
gemspec path: "../"
|
data/gemfiles/rails_4.2.gemfile
CHANGED
@@ -2,8 +2,8 @@
|
|
2
2
|
|
3
3
|
source "https://rubygems.org"
|
4
4
|
|
5
|
-
gem "codecov", :
|
6
|
-
gem "codeclimate-test-reporter", :
|
5
|
+
gem "codecov", require: false, group: :test
|
6
|
+
gem "codeclimate-test-reporter", group: :test, require: nil
|
7
7
|
gem "rails", "~> 4.2.0"
|
8
8
|
|
9
|
-
gemspec :
|
9
|
+
gemspec path: "../"
|
data/gemfiles/rails_5.0.gemfile
CHANGED
@@ -2,8 +2,8 @@
|
|
2
2
|
|
3
3
|
source "https://rubygems.org"
|
4
4
|
|
5
|
-
gem "codecov", :
|
6
|
-
gem "codeclimate-test-reporter", :
|
5
|
+
gem "codecov", require: false, group: :test
|
6
|
+
gem "codeclimate-test-reporter", group: :test, require: nil
|
7
7
|
gem "rails", "~> 5.0.0"
|
8
8
|
|
9
|
-
gemspec :
|
9
|
+
gemspec path: "../"
|
@@ -10,11 +10,11 @@ module LogStashLogger
|
|
10
10
|
autoload :Cee, 'logstash-logger/formatter/cee'
|
11
11
|
autoload :CeeSyslog, 'logstash-logger/formatter/cee_syslog'
|
12
12
|
|
13
|
-
|
14
|
-
|
13
|
+
def self.new(formatter_type, customize_event: nil)
|
14
|
+
build_formatter(formatter_type, customize_event)
|
15
15
|
end
|
16
16
|
|
17
|
-
def self.build_formatter(formatter_type)
|
17
|
+
def self.build_formatter(formatter_type, customize_event)
|
18
18
|
formatter_type ||= DEFAULT_FORMATTER
|
19
19
|
|
20
20
|
formatter = if custom_formatter_instance?(formatter_type)
|
@@ -22,7 +22,7 @@ module LogStashLogger
|
|
22
22
|
elsif custom_formatter_class?(formatter_type)
|
23
23
|
formatter_type.new
|
24
24
|
else
|
25
|
-
formatter_klass(formatter_type).new
|
25
|
+
formatter_klass(formatter_type).new(customize_event: customize_event)
|
26
26
|
end
|
27
27
|
|
28
28
|
formatter.send(:extend, ::LogStashLogger::TaggedLogging::Formatter)
|
@@ -9,6 +9,11 @@ module LogStashLogger
|
|
9
9
|
class Base < ::Logger::Formatter
|
10
10
|
include ::LogStashLogger::TaggedLogging::Formatter
|
11
11
|
|
12
|
+
def initialize(customize_event: nil)
|
13
|
+
@customize_event = customize_event
|
14
|
+
super()
|
15
|
+
end
|
16
|
+
|
12
17
|
def call(severity, time, progname, message)
|
13
18
|
@event = build_event(message, severity, time)
|
14
19
|
end
|
@@ -45,6 +50,8 @@ module LogStashLogger
|
|
45
50
|
|
46
51
|
LogStashLogger.configuration.customize_event_block.call(event) if LogStashLogger.configuration.customize_event_block.respond_to?(:call)
|
47
52
|
|
53
|
+
@customize_event.call(event) if @customize_event
|
54
|
+
|
48
55
|
# In case Time#to_json has been overridden
|
49
56
|
if event.timestamp.is_a?(Time)
|
50
57
|
event.timestamp = event.timestamp.iso8601(3)
|
@@ -46,7 +46,7 @@ module LogStashLogger
|
|
46
46
|
end
|
47
47
|
|
48
48
|
def self.build_logger(opts)
|
49
|
-
formatter = Formatter.new(opts.delete(:formatter))
|
49
|
+
formatter = Formatter.new(opts.delete(:formatter), customize_event: opts.delete(:customize_event))
|
50
50
|
|
51
51
|
logger = case opts[:type]
|
52
52
|
when :multi_logger
|
data/logstash-logger.gemspec
CHANGED
@@ -21,25 +21,14 @@ Gem::Specification.new do |gem|
|
|
21
21
|
gem.add_runtime_dependency 'logstash-event', '~> 1.2'
|
22
22
|
|
23
23
|
gem.add_development_dependency 'rails'
|
24
|
-
if RUBY_VERSION < '2'
|
25
|
-
gem.add_development_dependency 'mime-types', '< 3'
|
26
|
-
end
|
27
24
|
gem.add_development_dependency 'redis'
|
28
25
|
gem.add_development_dependency 'poseidon'
|
29
26
|
gem.add_development_dependency 'aws-sdk'
|
30
27
|
|
31
|
-
if
|
28
|
+
if defined?(JRUBY_VERSION)
|
32
29
|
gem.add_development_dependency 'SyslogLogger'
|
33
30
|
end
|
34
31
|
|
35
|
-
if RUBY_VERSION < '2'
|
36
|
-
gem.add_development_dependency 'json', '~> 1.8'
|
37
|
-
end
|
38
|
-
|
39
|
-
if RUBY_VERSION < '2.1'
|
40
|
-
gem.add_development_dependency 'nokogiri', '~> 1.6.8'
|
41
|
-
end
|
42
|
-
|
43
32
|
gem.add_development_dependency 'rspec', '>= 3'
|
44
33
|
gem.add_development_dependency 'rake'
|
45
34
|
gem.add_development_dependency 'pry'
|
data/spec/logger_spec.rb
CHANGED
@@ -115,4 +115,14 @@ describe LogStashLogger do
|
|
115
115
|
expect(listener_event["test1"]).to eq("response1")
|
116
116
|
end
|
117
117
|
|
118
|
+
describe 'customize_event on instance' do
|
119
|
+
let!(:customize_event) { ->(event){ event['custom'] = 'custom' } }
|
120
|
+
let!(:logger) { LogStashLogger.new(host: host, port: port, type: connection_type, sync: true, customize_event: customize_event)}
|
121
|
+
|
122
|
+
specify 'logger produce messages with custom field' do
|
123
|
+
logger.info('test')
|
124
|
+
expect(listener_event['custom']).to eq('custom')
|
125
|
+
end
|
126
|
+
end
|
127
|
+
|
118
128
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: logstash-logger
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.25.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- David Butler
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-05-
|
11
|
+
date: 2017-05-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: logstash-event
|
@@ -173,6 +173,7 @@ files:
|
|
173
173
|
- gemfiles/rails_4.1.gemfile
|
174
174
|
- gemfiles/rails_4.2.gemfile
|
175
175
|
- gemfiles/rails_5.0.gemfile
|
176
|
+
- gemfiles/rails_5.1.gemfile
|
176
177
|
- lib/logstash-logger.rb
|
177
178
|
- lib/logstash-logger/buffer.rb
|
178
179
|
- lib/logstash-logger/configuration.rb
|