loggerstash 0.0.9 → 1.0.1
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/.github/workflows/ci.yml +47 -0
- data/.gitignore +2 -0
- data/.rubocop.yml +6 -3
- data/CONTRIBUTING.md +1 -1
- data/README.md +1 -1
- data/lib/loggerstash.rb +24 -14
- data/loggerstash.gemspec +5 -14
- metadata +19 -33
- data/.travis.yml +0 -11
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c4e961a1a3a243caad2487af5ef9d49ebe675d51cb85c54a615f40785ab8ad6c
|
4
|
+
data.tar.gz: befa0f4bc820cfb8340ac034796f782c72d62205a504e4f41fb7fabdab93f2c5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f67b43b36d38f959b3ebe58fc60cee20ce077813458a8fffd720216e3af123c0df9d598c4aab222a44227272a0a2c43636b7efcd703c2286b2146b4b87e90992
|
7
|
+
data.tar.gz: 5286e5307c1d7c552e08b6301e9d0ef98abd0fac340592bf1b221f7c8de73535d0b54628487bbff005ecd27cdd1501eecc15d72d5396384d3a402a8a33ff34db
|
@@ -0,0 +1,47 @@
|
|
1
|
+
---
|
2
|
+
name: Loggerstash Tests
|
3
|
+
|
4
|
+
"on":
|
5
|
+
pull_request:
|
6
|
+
push:
|
7
|
+
branches:
|
8
|
+
- master
|
9
|
+
tags:
|
10
|
+
- v*
|
11
|
+
|
12
|
+
jobs:
|
13
|
+
build:
|
14
|
+
runs-on: ubuntu-latest
|
15
|
+
name: Ruby ${{ matrix.ruby }}
|
16
|
+
strategy:
|
17
|
+
matrix:
|
18
|
+
ruby: ["2.7", "2.6", "2.5"]
|
19
|
+
steps:
|
20
|
+
- uses: actions/checkout@v2
|
21
|
+
- uses: actions/setup-ruby@v1
|
22
|
+
with:
|
23
|
+
ruby-version: ${{ matrix.ruby }}
|
24
|
+
- name: Bundler cache
|
25
|
+
uses: actions/cache@v2
|
26
|
+
with:
|
27
|
+
path: vendor/bundle
|
28
|
+
key: ${{ runner.os }}-${{ matrix.ruby }}-gems-${{ hashFiles('**/Gemfile.lock') }}
|
29
|
+
restore-keys: |
|
30
|
+
${{ runner.os }}-${{ matrix.ruby }}-gems-
|
31
|
+
- name: Setup gems
|
32
|
+
run: |
|
33
|
+
bundle config path vendor/bundle
|
34
|
+
bundle install --jobs 4
|
35
|
+
- name: Tests
|
36
|
+
run: bundle exec rake
|
37
|
+
|
38
|
+
publish:
|
39
|
+
if: contains(github.ref, 'refs/tags/v')
|
40
|
+
needs: build
|
41
|
+
runs-on: ubuntu-latest
|
42
|
+
steps:
|
43
|
+
- uses: actions/checkout@v2
|
44
|
+
- name: Release Gem
|
45
|
+
uses: discourse/publish-rubygems-action@main
|
46
|
+
env:
|
47
|
+
RUBYGEMS_API_KEY: ${{secrets.RUBYGEMS_API_KEY}}
|
data/.gitignore
CHANGED
data/.rubocop.yml
CHANGED
data/CONTRIBUTING.md
CHANGED
data/README.md
CHANGED
@@ -135,7 +135,7 @@ conduct](CODE_OF_CONDUCT.md).
|
|
135
135
|
Unless otherwise stated, everything in this repo is covered by the following
|
136
136
|
copyright notice:
|
137
137
|
|
138
|
-
Copyright (C) 2018 Civilized Discourse Construction Kit, Inc.
|
138
|
+
Copyright (C) 2018-2021 Civilized Discourse Construction Kit, Inc.
|
139
139
|
|
140
140
|
This program is free software: you can redistribute it and/or modify it
|
141
141
|
under the terms of the GNU General Public License version 3, as
|
data/lib/loggerstash.rb
CHANGED
@@ -157,9 +157,9 @@ class Loggerstash
|
|
157
157
|
end
|
158
158
|
end
|
159
159
|
|
160
|
-
# Mangle the standard sev/time/prog/msg set into a logstash
|
161
|
-
# event.
|
160
|
+
# Mangle the standard sev/time/prog/msg set into a logstash event.
|
162
161
|
#
|
162
|
+
# Caller information is a https://www.rubydoc.info/stdlib/core/Thread/Backtrace/Location
|
163
163
|
def default_loggerstash_formatter
|
164
164
|
->(s, t, p, m) do
|
165
165
|
caller = caller_locations.find { |loc| ! [__FILE__, logger_filename].include? loc.absolute_path }
|
@@ -168,20 +168,30 @@ class Loggerstash
|
|
168
168
|
"@timestamp": t.utc.strftime("%FT%T.%NZ"),
|
169
169
|
"@metadata": { event_type: "loggerstash" },
|
170
170
|
message: m,
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
|
179
|
-
|
180
|
-
|
171
|
+
log: {
|
172
|
+
level: s.downcase,
|
173
|
+
logger: "Loggerstash",
|
174
|
+
origin: {
|
175
|
+
base_function: caller.base_label, # not in ECS
|
176
|
+
file: {
|
177
|
+
line: caller.lineno,
|
178
|
+
name: caller.absolute_path,
|
179
|
+
},
|
180
|
+
function: caller.label,
|
181
|
+
},
|
182
|
+
},
|
183
|
+
host: {
|
184
|
+
hostname: Socket.gethostname,
|
185
|
+
},
|
186
|
+
process: {
|
187
|
+
pid: $$,
|
188
|
+
thread: {
|
189
|
+
id: Thread.current.object_id,
|
190
|
+
},
|
181
191
|
},
|
182
192
|
}.tap do |ev|
|
183
|
-
ev[:
|
184
|
-
ev[:
|
193
|
+
ev[:process][:name] = p if p
|
194
|
+
ev[:process][:thread][:name] = Thread.current.name if Thread.current.name
|
185
195
|
end
|
186
196
|
end
|
187
197
|
end
|
data/loggerstash.gemspec
CHANGED
@@ -1,17 +1,9 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
begin
|
4
|
-
require 'git-version-bump'
|
5
|
-
rescue LoadError
|
6
|
-
nil
|
7
|
-
end
|
8
|
-
|
9
3
|
Gem::Specification.new do |s|
|
10
4
|
s.name = "loggerstash"
|
11
5
|
|
12
|
-
s.version =
|
13
|
-
s.date = GVB.date rescue Time.now.strftime("%Y-%m-%d")
|
14
|
-
|
6
|
+
s.version = "1.0.1"
|
15
7
|
s.platform = Gem::Platform::RUBY
|
16
8
|
|
17
9
|
s.summary = "Monkeypatch Logger to send log entries to logstash"
|
@@ -21,19 +13,17 @@ Gem::Specification.new do |s|
|
|
21
13
|
however the message would have been handled otherwise.
|
22
14
|
EOF
|
23
15
|
|
24
|
-
s.authors = ["
|
25
|
-
s.email = ["
|
16
|
+
s.authors = ["Michael Brown"]
|
17
|
+
s.email = ["michael.brown@discourse.org"]
|
26
18
|
s.homepage = "https://github.com/discourse/loggerstash"
|
27
19
|
|
28
20
|
s.files = `git ls-files -z`.split("\0").reject { |f| f =~ /^(G|spec|Rakefile)/ }
|
29
21
|
|
30
|
-
s.required_ruby_version = ">= 2.
|
22
|
+
s.required_ruby_version = ">= 2.4.0"
|
31
23
|
|
32
24
|
s.add_runtime_dependency "logstash_writer", ">= 0.0.11"
|
33
25
|
|
34
26
|
s.add_development_dependency 'bundler'
|
35
|
-
s.add_development_dependency 'github-release'
|
36
|
-
s.add_development_dependency 'git-version-bump'
|
37
27
|
s.add_development_dependency 'guard-rspec'
|
38
28
|
s.add_development_dependency 'guard-rubocop'
|
39
29
|
s.add_development_dependency 'rack-test'
|
@@ -41,6 +31,7 @@ Gem::Specification.new do |s|
|
|
41
31
|
s.add_development_dependency 'redcarpet'
|
42
32
|
s.add_development_dependency 'rspec'
|
43
33
|
s.add_development_dependency 'rubocop'
|
34
|
+
s.add_development_dependency 'rubocop-discourse'
|
44
35
|
s.add_development_dependency 'simplecov'
|
45
36
|
s.add_development_dependency 'yard'
|
46
37
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: loggerstash
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 1.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
|
-
-
|
7
|
+
- Michael Brown
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-02-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: logstash_writer
|
@@ -39,7 +39,7 @@ dependencies:
|
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
|
-
name:
|
42
|
+
name: guard-rspec
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
45
|
- - ">="
|
@@ -53,7 +53,7 @@ dependencies:
|
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '0'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
|
-
name:
|
56
|
+
name: guard-rubocop
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
59
|
- - ">="
|
@@ -67,7 +67,7 @@ dependencies:
|
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '0'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
|
-
name:
|
70
|
+
name: rack-test
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
73
|
- - ">="
|
@@ -81,21 +81,21 @@ dependencies:
|
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: '0'
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
|
-
name:
|
84
|
+
name: rake
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
|
-
- - "
|
87
|
+
- - "~>"
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version: '0'
|
89
|
+
version: '12.0'
|
90
90
|
type: :development
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
|
-
- - "
|
94
|
+
- - "~>"
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version: '0'
|
96
|
+
version: '12.0'
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
|
-
name:
|
98
|
+
name: redcarpet
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
101
|
- - ">="
|
@@ -109,21 +109,7 @@ dependencies:
|
|
109
109
|
- !ruby/object:Gem::Version
|
110
110
|
version: '0'
|
111
111
|
- !ruby/object:Gem::Dependency
|
112
|
-
name:
|
113
|
-
requirement: !ruby/object:Gem::Requirement
|
114
|
-
requirements:
|
115
|
-
- - "~>"
|
116
|
-
- !ruby/object:Gem::Version
|
117
|
-
version: '12.0'
|
118
|
-
type: :development
|
119
|
-
prerelease: false
|
120
|
-
version_requirements: !ruby/object:Gem::Requirement
|
121
|
-
requirements:
|
122
|
-
- - "~>"
|
123
|
-
- !ruby/object:Gem::Version
|
124
|
-
version: '12.0'
|
125
|
-
- !ruby/object:Gem::Dependency
|
126
|
-
name: redcarpet
|
112
|
+
name: rspec
|
127
113
|
requirement: !ruby/object:Gem::Requirement
|
128
114
|
requirements:
|
129
115
|
- - ">="
|
@@ -137,7 +123,7 @@ dependencies:
|
|
137
123
|
- !ruby/object:Gem::Version
|
138
124
|
version: '0'
|
139
125
|
- !ruby/object:Gem::Dependency
|
140
|
-
name:
|
126
|
+
name: rubocop
|
141
127
|
requirement: !ruby/object:Gem::Requirement
|
142
128
|
requirements:
|
143
129
|
- - ">="
|
@@ -151,7 +137,7 @@ dependencies:
|
|
151
137
|
- !ruby/object:Gem::Version
|
152
138
|
version: '0'
|
153
139
|
- !ruby/object:Gem::Dependency
|
154
|
-
name: rubocop
|
140
|
+
name: rubocop-discourse
|
155
141
|
requirement: !ruby/object:Gem::Requirement
|
156
142
|
requirements:
|
157
143
|
- - ">="
|
@@ -197,15 +183,15 @@ description: |
|
|
197
183
|
it to send all logged entries to a Logstash server, in addition to
|
198
184
|
however the message would have been handled otherwise.
|
199
185
|
email:
|
200
|
-
-
|
186
|
+
- michael.brown@discourse.org
|
201
187
|
executables: []
|
202
188
|
extensions: []
|
203
189
|
extra_rdoc_files: []
|
204
190
|
files:
|
205
191
|
- ".editorconfig"
|
192
|
+
- ".github/workflows/ci.yml"
|
206
193
|
- ".gitignore"
|
207
194
|
- ".rubocop.yml"
|
208
|
-
- ".travis.yml"
|
209
195
|
- ".yardopts"
|
210
196
|
- CODE_OF_CONDUCT.md
|
211
197
|
- CONTRIBUTING.md
|
@@ -224,14 +210,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
224
210
|
requirements:
|
225
211
|
- - ">="
|
226
212
|
- !ruby/object:Gem::Version
|
227
|
-
version: 2.
|
213
|
+
version: 2.4.0
|
228
214
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
229
215
|
requirements:
|
230
216
|
- - ">="
|
231
217
|
- !ruby/object:Gem::Version
|
232
218
|
version: '0'
|
233
219
|
requirements: []
|
234
|
-
rubygems_version: 3.0.
|
220
|
+
rubygems_version: 3.0.3
|
235
221
|
signing_key:
|
236
222
|
specification_version: 4
|
237
223
|
summary: Monkeypatch Logger to send log entries to logstash
|