heavylog 0.1.1.beta.1 → 0.1.1.beta.2
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 +6 -1
- data/.github/workflows/release.yml +0 -37
- data/CHANGELOG.md +3 -2
- data/Gemfile.lock +71 -2
- data/heavylog.gemspec +1 -0
- data/lib/heavylog/adapters/karafka_consumer.rb +20 -0
- data/lib/heavylog/adapters/sidekiq_exception_handler.rb +14 -0
- data/lib/heavylog/{sidekiq_logger.rb → adapters/sidekiq_logger.rb} +4 -7
- data/lib/heavylog/adapters.rb +9 -0
- data/lib/heavylog/formatters/ecs.rb +9 -1
- data/lib/heavylog/version.rb +1 -1
- data/lib/heavylog.rb +25 -22
- metadata +19 -3
- data/lib/heavylog/sidekiq_exception_handler.rb +0 -12
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: e9be53c2397c651f826a3ef86abefb2810441016a74d42986408d297ef3be5ad
|
|
4
|
+
data.tar.gz: 488f0bdb405cca4741ff047beea5a2593b0db2f082a3b77af6486ea8cb2268ef
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: eb6d23398d5c98954c9417e17edc21e10b61a54b0fc488f928cf502c8b23ceecef9a75b25c393014bf1491f18e02f32af7030d39ce6dbf19d60f6d4c6c85eab1
|
|
7
|
+
data.tar.gz: a318645d04ae152a15298926e02d0fb8308ec9f9c49a1e34696b518aa734459431f877481d58ed32249d8982de83ca72538d77e944c23e893b84840ae5ceeac7
|
data/.github/workflows/ci.yml
CHANGED
|
@@ -71,43 +71,6 @@ jobs:
|
|
|
71
71
|
echo "Version mismatch: tag base=$BASE_VERSION, gem=$GEM_VER" >&2
|
|
72
72
|
exit 1
|
|
73
73
|
fi
|
|
74
|
-
publish_npm:
|
|
75
|
-
name: Publish npm package
|
|
76
|
-
needs: verify
|
|
77
|
-
if: ${{ !github.event.release.prerelease }}
|
|
78
|
-
runs-on: ubuntu-latest
|
|
79
|
-
steps:
|
|
80
|
-
- uses: actions/checkout@v4
|
|
81
|
-
- name: Setup Node.js
|
|
82
|
-
uses: actions/setup-node@v4
|
|
83
|
-
with:
|
|
84
|
-
node-version: "24"
|
|
85
|
-
registry-url: "https://registry.npmjs.org"
|
|
86
|
-
- name: Ensure modern npm for OIDC trusted publishing
|
|
87
|
-
run: npm install -g npm@latest
|
|
88
|
-
- name: Publish package
|
|
89
|
-
run: npm publish --access public
|
|
90
|
-
publish_npm_canary:
|
|
91
|
-
name: Publish npm canary
|
|
92
|
-
needs: verify_prerelease
|
|
93
|
-
if: github.event.release.prerelease
|
|
94
|
-
runs-on: ubuntu-latest
|
|
95
|
-
steps:
|
|
96
|
-
- uses: actions/checkout@v4
|
|
97
|
-
- name: Setup Node.js
|
|
98
|
-
uses: actions/setup-node@v4
|
|
99
|
-
with:
|
|
100
|
-
node-version: "22"
|
|
101
|
-
registry-url: "https://registry.npmjs.org"
|
|
102
|
-
- name: Ensure modern npm for OIDC trusted publishing
|
|
103
|
-
run: npm install -g npm@latest
|
|
104
|
-
- name: Set canary version from tag
|
|
105
|
-
run: |
|
|
106
|
-
TAG_VERSION="${GITHUB_REF_NAME#v}"
|
|
107
|
-
echo "Setting canary version: $TAG_VERSION"
|
|
108
|
-
npm version "$TAG_VERSION" --no-git-tag-version
|
|
109
|
-
- name: Publish canary
|
|
110
|
-
run: npm publish --tag canary --access public
|
|
111
74
|
publish_gem:
|
|
112
75
|
name: Publish Ruby gem
|
|
113
76
|
needs: verify
|
data/CHANGELOG.md
CHANGED
data/Gemfile.lock
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
heavylog (0.1.1.beta.
|
|
4
|
+
heavylog (0.1.1.beta.2)
|
|
5
5
|
actionpack (>= 8.0, < 8.2)
|
|
6
6
|
activerecord (>= 8.0, < 8.2)
|
|
7
7
|
activesupport (>= 8.0, < 8.2)
|
|
@@ -58,6 +58,14 @@ GEM
|
|
|
58
58
|
drb (2.2.3)
|
|
59
59
|
erb (6.0.1)
|
|
60
60
|
erubi (1.13.1)
|
|
61
|
+
ffi (1.17.3-aarch64-linux-gnu)
|
|
62
|
+
ffi (1.17.3-aarch64-linux-musl)
|
|
63
|
+
ffi (1.17.3-arm-linux-gnu)
|
|
64
|
+
ffi (1.17.3-arm-linux-musl)
|
|
65
|
+
ffi (1.17.3-arm64-darwin)
|
|
66
|
+
ffi (1.17.3-x86_64-darwin)
|
|
67
|
+
ffi (1.17.3-x86_64-linux-gnu)
|
|
68
|
+
ffi (1.17.3-x86_64-linux-musl)
|
|
61
69
|
i18n (1.14.8)
|
|
62
70
|
concurrent-ruby (~> 1.0)
|
|
63
71
|
io-console (0.8.2)
|
|
@@ -67,12 +75,51 @@ GEM
|
|
|
67
75
|
rdoc (>= 4.0.0)
|
|
68
76
|
reline (>= 0.4.2)
|
|
69
77
|
json (2.18.1)
|
|
78
|
+
karafka (2.5.5)
|
|
79
|
+
karafka-core (>= 2.5.6, < 2.6.0)
|
|
80
|
+
karafka-rdkafka (>= 0.23.1)
|
|
81
|
+
waterdrop (>= 2.8.14, < 3.0.0)
|
|
82
|
+
zeitwerk (~> 2.3)
|
|
83
|
+
karafka-core (2.5.8)
|
|
84
|
+
karafka-rdkafka (>= 0.20.0)
|
|
85
|
+
logger (>= 1.6.0)
|
|
86
|
+
karafka-rdkafka (0.23.1)
|
|
87
|
+
ffi (~> 1.17.1)
|
|
88
|
+
json (> 2.0)
|
|
89
|
+
logger
|
|
90
|
+
mini_portile2 (~> 2.6)
|
|
91
|
+
rake (> 12)
|
|
92
|
+
karafka-rdkafka (0.23.1-aarch64-linux-gnu)
|
|
93
|
+
ffi (~> 1.17.1)
|
|
94
|
+
json (> 2.0)
|
|
95
|
+
logger
|
|
96
|
+
mini_portile2 (~> 2.6)
|
|
97
|
+
rake (> 12)
|
|
98
|
+
karafka-rdkafka (0.23.1-arm64-darwin)
|
|
99
|
+
ffi (~> 1.17.1)
|
|
100
|
+
json (> 2.0)
|
|
101
|
+
logger
|
|
102
|
+
mini_portile2 (~> 2.6)
|
|
103
|
+
rake (> 12)
|
|
104
|
+
karafka-rdkafka (0.23.1-x86_64-linux-gnu)
|
|
105
|
+
ffi (~> 1.17.1)
|
|
106
|
+
json (> 2.0)
|
|
107
|
+
logger
|
|
108
|
+
mini_portile2 (~> 2.6)
|
|
109
|
+
rake (> 12)
|
|
110
|
+
karafka-rdkafka (0.23.1-x86_64-linux-musl)
|
|
111
|
+
ffi (~> 1.17.1)
|
|
112
|
+
json (> 2.0)
|
|
113
|
+
logger
|
|
114
|
+
mini_portile2 (~> 2.6)
|
|
115
|
+
rake (> 12)
|
|
70
116
|
language_server-protocol (3.17.0.5)
|
|
71
117
|
lint_roller (1.1.0)
|
|
72
118
|
logger (1.7.0)
|
|
73
119
|
loofah (2.25.0)
|
|
74
120
|
crass (~> 1.0.2)
|
|
75
121
|
nokogiri (>= 1.12.0)
|
|
122
|
+
mini_portile2 (2.8.9)
|
|
76
123
|
minitest (6.0.1)
|
|
77
124
|
prism (~> 1.5)
|
|
78
125
|
nokogiri (1.19.0-aarch64-linux-gnu)
|
|
@@ -200,6 +247,10 @@ GEM
|
|
|
200
247
|
unicode-emoji (4.2.0)
|
|
201
248
|
uri (1.1.1)
|
|
202
249
|
useragent (0.16.11)
|
|
250
|
+
waterdrop (2.8.15)
|
|
251
|
+
karafka-core (>= 2.4.9, < 3.0.0)
|
|
252
|
+
karafka-rdkafka (>= 0.23.1)
|
|
253
|
+
zeitwerk (~> 2.3)
|
|
203
254
|
zeitwerk (2.7.4)
|
|
204
255
|
|
|
205
256
|
PLATFORMS
|
|
@@ -214,6 +265,7 @@ PLATFORMS
|
|
|
214
265
|
|
|
215
266
|
DEPENDENCIES
|
|
216
267
|
heavylog!
|
|
268
|
+
karafka (>= 2.5.5)
|
|
217
269
|
rake (~> 13.0)
|
|
218
270
|
rspec (~> 3.0)
|
|
219
271
|
rubocop (< 1.84.1)
|
|
@@ -238,15 +290,31 @@ CHECKSUMS
|
|
|
238
290
|
drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373
|
|
239
291
|
erb (6.0.1) sha256=28ecdd99c5472aebd5674d6061e3c6b0a45c049578b071e5a52c2a7f13c197e5
|
|
240
292
|
erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9
|
|
241
|
-
|
|
293
|
+
ffi (1.17.3-aarch64-linux-gnu) sha256=28ad573df26560f0aedd8a90c3371279a0b2bd0b4e834b16a2baa10bd7a97068
|
|
294
|
+
ffi (1.17.3-aarch64-linux-musl) sha256=020b33b76775b1abacc3b7d86b287cef3251f66d747092deec592c7f5df764b2
|
|
295
|
+
ffi (1.17.3-arm-linux-gnu) sha256=5bd4cea83b68b5ec0037f99c57d5ce2dd5aa438f35decc5ef68a7d085c785668
|
|
296
|
+
ffi (1.17.3-arm-linux-musl) sha256=0d7626bb96265f9af78afa33e267d71cfef9d9a8eb8f5525344f8da6c7d76053
|
|
297
|
+
ffi (1.17.3-arm64-darwin) sha256=0c690555d4cee17a7f07c04d59df39b2fba74ec440b19da1f685c6579bb0717f
|
|
298
|
+
ffi (1.17.3-x86_64-darwin) sha256=1f211811eb5cfaa25998322cdd92ab104bfbd26d1c4c08471599c511f2c00bb5
|
|
299
|
+
ffi (1.17.3-x86_64-linux-gnu) sha256=3746b01f677aae7b16dc1acb7cb3cc17b3e35bdae7676a3f568153fb0e2c887f
|
|
300
|
+
ffi (1.17.3-x86_64-linux-musl) sha256=086b221c3a68320b7564066f46fed23449a44f7a1935f1fe5a245bd89d9aea56
|
|
301
|
+
heavylog (0.1.1.beta.2)
|
|
242
302
|
i18n (1.14.8) sha256=285778639134865c5e0f6269e0b818256017e8cde89993fdfcbfb64d088824a5
|
|
243
303
|
io-console (0.8.2) sha256=d6e3ae7a7cc7574f4b8893b4fca2162e57a825b223a177b7afa236c5ef9814cc
|
|
244
304
|
irb (1.17.0) sha256=168c4ddb93d8a361a045c41d92b2952c7a118fa73f23fe14e55609eb7a863aae
|
|
245
305
|
json (2.18.1) sha256=fe112755501b8d0466b5ada6cf50c8c3f41e897fa128ac5d263ec09eedc9f986
|
|
306
|
+
karafka (2.5.5) sha256=ccc78e167d668298308c88c2f05eaaafb9736f2660433fc632f8ee66bd2531d7
|
|
307
|
+
karafka-core (2.5.8) sha256=3b056abe55cede3f189a3b68c444012f9fb70ec49afd8689c99702ab72837041
|
|
308
|
+
karafka-rdkafka (0.23.1) sha256=b248150477f672d047de44da24c89cf71a0bf5bd475f12a6214cc5fddeb65297
|
|
309
|
+
karafka-rdkafka (0.23.1-aarch64-linux-gnu) sha256=ce73057b9dee87155fc49328749c222a8780a54ed571ed2c0417970a70cfea37
|
|
310
|
+
karafka-rdkafka (0.23.1-arm64-darwin) sha256=2629f77b9cef4e9bb5f6a6baf5d15fd2b3fc9578ba2c914309d7ef655afe9a00
|
|
311
|
+
karafka-rdkafka (0.23.1-x86_64-linux-gnu) sha256=1e70456f94b6c0decec2bfecf250322830bef4d67fafe44384751b44093da415
|
|
312
|
+
karafka-rdkafka (0.23.1-x86_64-linux-musl) sha256=ba060677f5036b53c0bb4245f1472bbec87518d81d6d6054ffa23eb8ac2a7357
|
|
246
313
|
language_server-protocol (3.17.0.5) sha256=fd1e39a51a28bf3eec959379985a72e296e9f9acfce46f6a79d31ca8760803cc
|
|
247
314
|
lint_roller (1.1.0) sha256=2c0c845b632a7d172cb849cc90c1bce937a28c5c8ccccb50dfd46a485003cc87
|
|
248
315
|
logger (1.7.0) sha256=196edec7cc44b66cfb40f9755ce11b392f21f7967696af15d274dde7edff0203
|
|
249
316
|
loofah (2.25.0) sha256=df5ed7ac3bac6a4ec802df3877ee5cc86d027299f8952e6243b3dac446b060e6
|
|
317
|
+
mini_portile2 (2.8.9) sha256=0cd7c7f824e010c072e33f68bc02d85a00aeb6fce05bb4819c03dfd3c140c289
|
|
250
318
|
minitest (6.0.1) sha256=7854c74f48e2e975969062833adc4013f249a4b212f5e7b9d5c040bf838d54bb
|
|
251
319
|
nokogiri (1.19.0-aarch64-linux-gnu) sha256=11a97ecc3c0e7e5edcf395720b10860ef493b768f6aa80c539573530bc933767
|
|
252
320
|
nokogiri (1.19.0-aarch64-linux-musl) sha256=eb70507f5e01bc23dad9b8dbec2b36ad0e61d227b42d292835020ff754fb7ba9
|
|
@@ -299,6 +367,7 @@ CHECKSUMS
|
|
|
299
367
|
unicode-emoji (4.2.0) sha256=519e69150f75652e40bf736106cfbc8f0f73aa3fb6a65afe62fefa7f80b0f80f
|
|
300
368
|
uri (1.1.1) sha256=379fa58d27ffb1387eaada68c749d1426738bd0f654d812fcc07e7568f5c57c6
|
|
301
369
|
useragent (0.16.11) sha256=700e6413ad4bb954bb63547fa098dddf7b0ebe75b40cc6f93b8d54255b173844
|
|
370
|
+
waterdrop (2.8.15) sha256=1a8f515533dc9ef2528f1cd33d6135b6ed1cc33e8d2a8562212ebc1bb4c60c10
|
|
302
371
|
zeitwerk (2.7.4) sha256=2bef90f356bdafe9a6c2bd32bcd804f83a4f9b8bc27f3600fff051eb3edcec8b
|
|
303
372
|
|
|
304
373
|
BUNDLED WITH
|
data/heavylog.gemspec
CHANGED
|
@@ -28,6 +28,7 @@ Gem::Specification.new do |s|
|
|
|
28
28
|
end
|
|
29
29
|
s.require_paths = ["lib"]
|
|
30
30
|
|
|
31
|
+
s.add_development_dependency "karafka", ">= 2.5.5"
|
|
31
32
|
s.add_development_dependency "rake", "~> 13.0"
|
|
32
33
|
s.add_development_dependency "rspec", "~> 3.0"
|
|
33
34
|
s.add_development_dependency "rubocop", "< 1.84.1"
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Heavylog
|
|
4
|
+
module Adapters
|
|
5
|
+
class KarafkaConsumer < ::Karafka::BaseConsumer
|
|
6
|
+
# Runs inside the Rails reloader wrap, any earlier would run outside the thread the consume method runs in.
|
|
7
|
+
def on_consume
|
|
8
|
+
args = "topic=#{topic.name} partition=#{partition} messages=#{messages.count}"
|
|
9
|
+
Heavylog.log_job(SecureRandom.uuid, "KarafkaLogger", self.class.name, args)
|
|
10
|
+
super
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def wrap(action)
|
|
14
|
+
yield
|
|
15
|
+
ensure
|
|
16
|
+
Heavylog.finish_job if action == :consume
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Heavylog
|
|
4
|
+
module Adapters
|
|
5
|
+
class SidekiqExceptionHandler
|
|
6
|
+
def call(exception, context)
|
|
7
|
+
Heavylog.log(:warn, Sidekiq.dump_json(context)) unless context.empty?
|
|
8
|
+
Heavylog.log(:warn, "#{exception.class.name}: #{exception.message}")
|
|
9
|
+
Heavylog.log(:warn, exception.backtrace.join("\n")) unless exception.backtrace.nil?
|
|
10
|
+
Heavylog.finish_job
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
@@ -1,20 +1,17 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
module Heavylog
|
|
3
|
+
module Heavylog
|
|
4
|
+
module Adapters
|
|
7
5
|
class SidekiqLogger < Sidekiq::JobLogger
|
|
8
6
|
def call(item, _queue)
|
|
9
7
|
# item = {"class"=>"SuspiciousJob", "args"=>[12754545, [3858890], "invoice"], "retry"=>true, "queue"=>"default",
|
|
10
8
|
# "jid"=>"5ec968571e358497d70a3cf2", "created_at"=>1540484817.3950138, "enqueued_at"=>1540484817.395076}
|
|
11
9
|
|
|
12
|
-
Heavylog.
|
|
10
|
+
Heavylog.log_job(item["jid"], "SidekiqLogger", item["class"], item["args"])
|
|
13
11
|
super
|
|
14
12
|
ensure
|
|
15
|
-
Heavylog.
|
|
13
|
+
Heavylog.finish_job
|
|
16
14
|
end
|
|
17
15
|
end
|
|
18
16
|
end
|
|
19
|
-
rescue LoadError
|
|
20
17
|
end
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Heavylog
|
|
4
|
+
module Adapters
|
|
5
|
+
autoload :KarafkaConsumer, "heavylog/adapters/karafka_consumer"
|
|
6
|
+
autoload :SidekiqLogger, "heavylog/adapters/sidekiq_logger"
|
|
7
|
+
autoload :SidekiqExceptionHandler, "heavylog/adapters/sidekiq_exception_handler"
|
|
8
|
+
end
|
|
9
|
+
end
|
|
@@ -37,7 +37,15 @@ module Heavylog
|
|
|
37
37
|
dig_set(data, %w[event category], "web")
|
|
38
38
|
|
|
39
39
|
unless data.dig("event", "dataset")
|
|
40
|
-
value = data.dig("heavylog", "controller")
|
|
40
|
+
value = case data.dig("heavylog", "controller")
|
|
41
|
+
when "SidekiqLogger"
|
|
42
|
+
"heavylog.sidekiq"
|
|
43
|
+
when "KarafkaLogger"
|
|
44
|
+
"heavylog.karafka"
|
|
45
|
+
else
|
|
46
|
+
"heavylog.rails"
|
|
47
|
+
end
|
|
48
|
+
|
|
41
49
|
dig_set(data, %w[event dataset], value)
|
|
42
50
|
end
|
|
43
51
|
|
data/lib/heavylog/version.rb
CHANGED
data/lib/heavylog.rb
CHANGED
|
@@ -9,8 +9,7 @@ require "heavylog/middleware"
|
|
|
9
9
|
require "heavylog/ordered_options"
|
|
10
10
|
require "heavylog/request_logger"
|
|
11
11
|
require "heavylog/proxy_logger"
|
|
12
|
-
require "heavylog/
|
|
13
|
-
require "heavylog/sidekiq_exception_handler"
|
|
12
|
+
require "heavylog/adapters"
|
|
14
13
|
|
|
15
14
|
module Heavylog
|
|
16
15
|
module_function
|
|
@@ -61,9 +60,9 @@ module Heavylog
|
|
|
61
60
|
return unless config.log_sidekiq
|
|
62
61
|
|
|
63
62
|
Sidekiq.configure_server do |config|
|
|
64
|
-
config[:job_logger] = SidekiqLogger
|
|
63
|
+
config[:job_logger] = Adapters::SidekiqLogger
|
|
65
64
|
|
|
66
|
-
config.error_handlers << SidekiqExceptionHandler.new
|
|
65
|
+
config.error_handlers << Adapters::SidekiqExceptionHandler.new
|
|
67
66
|
end
|
|
68
67
|
end
|
|
69
68
|
|
|
@@ -116,22 +115,6 @@ module Heavylog
|
|
|
116
115
|
end
|
|
117
116
|
end
|
|
118
117
|
|
|
119
|
-
def log_sidekiq(jid, klass, args)
|
|
120
|
-
return unless config.enabled
|
|
121
|
-
|
|
122
|
-
RequestStore.store[:heavylog_request_id] = jid
|
|
123
|
-
RequestStore.store[:heavylog_request_start] = Time.now.iso8601
|
|
124
|
-
RequestStore.store[:heavylog_request_ip] = "127.0.0.1"
|
|
125
|
-
|
|
126
|
-
RequestStore.store[:heavylog_request_data] = {
|
|
127
|
-
controller: "SidekiqLogger",
|
|
128
|
-
action: klass,
|
|
129
|
-
args: args.to_s,
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
RequestStore.store[:heavylog_buffer] ||= StringIO.new
|
|
133
|
-
end
|
|
134
|
-
|
|
135
118
|
def finish
|
|
136
119
|
return unless config.enabled
|
|
137
120
|
|
|
@@ -151,9 +134,29 @@ module Heavylog
|
|
|
151
134
|
config.error_handler&.call(e)
|
|
152
135
|
end
|
|
153
136
|
|
|
154
|
-
def
|
|
137
|
+
def log_job(jid, controller, klass, args)
|
|
138
|
+
return unless config.enabled
|
|
139
|
+
|
|
140
|
+
RequestStore.store[:heavylog_request_id] = jid
|
|
141
|
+
RequestStore.store[:heavylog_request_start] = Time.now.iso8601
|
|
142
|
+
RequestStore.store[:heavylog_request_ip] = "127.0.0.1"
|
|
143
|
+
|
|
144
|
+
RequestStore.store[:heavylog_request_data] = {
|
|
145
|
+
controller: controller,
|
|
146
|
+
action: klass,
|
|
147
|
+
args: args.to_s,
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
RequestStore.store[:heavylog_buffer] ||= StringIO.new
|
|
151
|
+
end
|
|
152
|
+
|
|
153
|
+
def finish_job
|
|
155
154
|
finish
|
|
156
|
-
RequestStore.
|
|
155
|
+
RequestStore.clear!
|
|
156
|
+
end
|
|
157
|
+
|
|
158
|
+
def request_id
|
|
159
|
+
RequestStore.store[:heavylog_request_id]
|
|
157
160
|
end
|
|
158
161
|
|
|
159
162
|
def config
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: heavylog
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.1.beta.
|
|
4
|
+
version: 0.1.1.beta.2
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Signmax AB
|
|
@@ -9,6 +9,20 @@ bindir: bin
|
|
|
9
9
|
cert_chain: []
|
|
10
10
|
date: 1980-01-02 00:00:00.000000000 Z
|
|
11
11
|
dependencies:
|
|
12
|
+
- !ruby/object:Gem::Dependency
|
|
13
|
+
name: karafka
|
|
14
|
+
requirement: !ruby/object:Gem::Requirement
|
|
15
|
+
requirements:
|
|
16
|
+
- - ">="
|
|
17
|
+
- !ruby/object:Gem::Version
|
|
18
|
+
version: 2.5.5
|
|
19
|
+
type: :development
|
|
20
|
+
prerelease: false
|
|
21
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
22
|
+
requirements:
|
|
23
|
+
- - ">="
|
|
24
|
+
- !ruby/object:Gem::Version
|
|
25
|
+
version: 2.5.5
|
|
12
26
|
- !ruby/object:Gem::Dependency
|
|
13
27
|
name: rake
|
|
14
28
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -195,6 +209,10 @@ files:
|
|
|
195
209
|
- Rakefile
|
|
196
210
|
- heavylog.gemspec
|
|
197
211
|
- lib/heavylog.rb
|
|
212
|
+
- lib/heavylog/adapters.rb
|
|
213
|
+
- lib/heavylog/adapters/karafka_consumer.rb
|
|
214
|
+
- lib/heavylog/adapters/sidekiq_exception_handler.rb
|
|
215
|
+
- lib/heavylog/adapters/sidekiq_logger.rb
|
|
198
216
|
- lib/heavylog/formatters/ecs.rb
|
|
199
217
|
- lib/heavylog/formatters/json.rb
|
|
200
218
|
- lib/heavylog/formatters/raw.rb
|
|
@@ -204,8 +222,6 @@ files:
|
|
|
204
222
|
- lib/heavylog/proxy_logger.rb
|
|
205
223
|
- lib/heavylog/railtie.rb
|
|
206
224
|
- lib/heavylog/request_logger.rb
|
|
207
|
-
- lib/heavylog/sidekiq_exception_handler.rb
|
|
208
|
-
- lib/heavylog/sidekiq_logger.rb
|
|
209
225
|
- lib/heavylog/version.rb
|
|
210
226
|
homepage: https://github.com/skyltmax/heavylog
|
|
211
227
|
licenses:
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
module Heavylog
|
|
4
|
-
class SidekiqExceptionHandler
|
|
5
|
-
def call(exception, context)
|
|
6
|
-
Heavylog.log(:warn, Sidekiq.dump_json(context)) unless context.empty?
|
|
7
|
-
Heavylog.log(:warn, "#{exception.class.name}: #{exception.message}")
|
|
8
|
-
Heavylog.log(:warn, exception.backtrace.join("\n")) unless exception.backtrace.nil?
|
|
9
|
-
Heavylog.finish_sidekiq
|
|
10
|
-
end
|
|
11
|
-
end
|
|
12
|
-
end
|