logging-logstash 0.0.2 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 8be6f29db171613698af78c05dee795682bdc7ba
4
- data.tar.gz: dbd7284c59aa0111f3b31940a156afe0c3673576
3
+ metadata.gz: 3a316c5f95c57af6cdf6823171c577490ee71110
4
+ data.tar.gz: 35f32e28f098a894100fec91f90f92d11594dfa3
5
5
  SHA512:
6
- metadata.gz: c7cfbe6363720c234c0b6d9f426d0a566eff32a21897a69afe8ec7d4c79a0ad5341b53444132fef216d88b6b926402ade56849349d76adfebe982036c1e5ea8e
7
- data.tar.gz: c7963f2a0b17e52bea7e41441f30a807b7a4f605d93f849a1b1def0b09ad95de9767f756be7ed02c134c55d487734d672fcd8af1890c8a0077c296e040b8f2c8
6
+ metadata.gz: e36d5c56f8fea9370cd319554d4de9f700dfc3a3e5c40f5c27776e96aa8b2ef616746e65c56a067edae7475d3740a91041f0e4b9831ed7f2f8c4e2e7cd8ff1b9
7
+ data.tar.gz: 1bfe51cf438c0bb4306c61c43b8799cb378553a5c958826aa37fda7f05d6fd897c8f5484e4d5482ba1713dedf13156aae4b10a40ef213a798e59534e6589c9b2
@@ -8,6 +8,7 @@ module Logging
8
8
  # This class provides an Appender that can write to remote syslog.
9
9
  #
10
10
  class Logstash < Logging::Appender
11
+ ID_REG_EXP=/_id$/
11
12
 
12
13
  def self.num_to_level(level_num)
13
14
  @level_nums ||= Loggin::LEVELS..inject({}) do |hash, kv|
@@ -61,16 +62,16 @@ module Logging
61
62
  stash_event['@host'] ||= @host
62
63
  stash_event['@log_name'] ||= @name
63
64
 
64
- #we don't overrdide given things from any context (mdc/ndc)
65
+ #context values don't override given values
65
66
  Logging.mdc.context.each do |key, value|
66
67
  stash_event[key] ||= value
67
68
  end
68
69
 
69
70
  Logging.ndc.context.each do |ctx|
70
71
  if ctx.respond_to?(:each)
71
- ctx.each do |key, value|
72
- stash_event[key] ||= value
73
- end
72
+ ctx.each do |key, value|
73
+ stash_event[key] ||= value
74
+ end
74
75
  else
75
76
  stash_event[ctx] ||= true #
76
77
  end
@@ -80,6 +81,14 @@ module Logging
80
81
  if stash_event.timestamp.is_a?(Time)
81
82
  stash_event.timestamp = stash_event.timestamp.iso8601(3)
82
83
  end
84
+
85
+
86
+ stash_event.to_hash.each do |key,value|
87
+ if key =~ ID_REG_EXP
88
+ stash_event[key]=value.to_s
89
+ end
90
+ end
91
+
83
92
  stash_event
84
93
  end
85
94
 
@@ -1,5 +1,5 @@
1
1
  module Logging
2
2
  module Logstash
3
- VERSION = "0.0.2"
3
+ VERSION = "0.1.0"
4
4
  end
5
5
  end
@@ -74,6 +74,19 @@ RSpec.describe 'Logging::Appenders::Logstash' do
74
74
  })
75
75
  end
76
76
 
77
+ it "turns _ids to string" do
78
+ logger.happy("test_id" => 1, "test2_id" => "ok")
79
+ expect(log_content).to eq({
80
+ "test2_id" => "ok",
81
+ "test_id" => "1",
82
+ "@timestamp" => "2014-12-10T10:20:19.000Z",
83
+ "@version" => "1",
84
+ "@severity" => "HAPPY",
85
+ "@host" => "pa-dev",
86
+ "@log_name" => "logstash"
87
+ })
88
+ end
89
+
77
90
 
78
91
  it "escapes multilines correctly" do
79
92
  logger.happy("test\ntest2")
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: logging-logstash
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter Schrammel
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-12-12 00:00:00.000000000 Z
11
+ date: 2015-09-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -114,3 +114,4 @@ summary: A loggstash appender for the logging framework.
114
114
  test_files:
115
115
  - spec/lib/logging/appenders/logstash_spec.rb
116
116
  - spec/spec_helper.rb
117
+ has_rdoc: