mnemosyne-ruby 1.13.0 → 1.15.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/.github/workflows/lint.yml +5 -3
- data/.github/workflows/test.yml +15 -26
- data/.gitignore +2 -0
- data/.markdownlint.yml +22 -0
- data/.rubocop.yml +1 -1
- data/.vscode/ltex.dictionary.en-US.txt +1 -0
- data/Appraisals +27 -11
- data/CHANGELOG.md +78 -3
- data/Gemfile +4 -3
- data/README.md +2 -11
- data/gemfiles/{rails_51.gemfile → core.gemfile} +4 -5
- data/gemfiles/faraday_09.gemfile +2 -3
- data/gemfiles/faraday_10.gemfile +2 -3
- data/gemfiles/rails_52.gemfile +2 -3
- data/gemfiles/rails_60.gemfile +2 -3
- data/gemfiles/rails_61.gemfile +2 -3
- data/gemfiles/rails_70.gemfile +2 -3
- data/gemfiles/redis_40.gemfile +2 -3
- data/gemfiles/{rails_50.gemfile → redis_50.gemfile} +5 -6
- data/gemfiles/sidekiq_50.gemfile +2 -3
- data/gemfiles/sidekiq_60.gemfile +2 -3
- data/lib/mnemosyne/configuration.rb +5 -3
- data/lib/mnemosyne/middleware/faraday.rb +1 -1
- data/lib/mnemosyne/middleware/rack.rb +2 -2
- data/lib/mnemosyne/probes/acfs/request.rb +1 -1
- data/lib/mnemosyne/probes/msgr/client.rb +1 -1
- data/lib/mnemosyne/probes/redis/command.rb +125 -99
- data/lib/mnemosyne/probes/restify/base.rb +1 -3
- data/lib/mnemosyne/probes/view_component/render_component.rb +1 -1
- data/lib/mnemosyne/version.rb +1 -1
- data/mnemosyne-ruby.gemspec +1 -3
- metadata +8 -20
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 0366be612fd9619593a970098205515b3e361bca87359e4f52d44f0fb2324f35
|
|
4
|
+
data.tar.gz: ba0c6a47f4fa471fbfee289f60992c75c6b1dff50380134a4c3f4568436c8a16
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: aabbd8356edee9ca7ddca04641c5623f6c164679145d9f8ac91d7fab8fc7a0647e9d026603f45677bdfb996d1d414889537e4ad46b1cae12d7d5401633da31dd
|
|
7
|
+
data.tar.gz: 401dea26b2ab32e8e55ae34f3b168657a1123415aed59eb4c5883fbcf39b60c8b7b2cea7b17a61691850d1eed44c391bfbd463265b9503139f94f5f244db1338
|
data/.github/workflows/lint.yml
CHANGED
|
@@ -6,7 +6,10 @@ on:
|
|
|
6
6
|
jobs:
|
|
7
7
|
rubocop:
|
|
8
8
|
name: rubocop
|
|
9
|
-
runs-on: ubuntu-
|
|
9
|
+
runs-on: ubuntu-22.04
|
|
10
|
+
|
|
11
|
+
env:
|
|
12
|
+
BUNDLE_WITHOUT: development test
|
|
10
13
|
|
|
11
14
|
steps:
|
|
12
15
|
- uses: actions/checkout@master
|
|
@@ -14,9 +17,8 @@ jobs:
|
|
|
14
17
|
env:
|
|
15
18
|
BUNDLE_JOBS: 4
|
|
16
19
|
BUNDLE_RETRY: 3
|
|
17
|
-
BUNDLE_WITHOUT: development,test
|
|
18
20
|
with:
|
|
19
|
-
ruby-version: 3.
|
|
21
|
+
ruby-version: 3.1
|
|
20
22
|
bundler-cache: true
|
|
21
23
|
|
|
22
24
|
- name: Run rubocop
|
data/.github/workflows/test.yml
CHANGED
|
@@ -6,36 +6,35 @@ on:
|
|
|
6
6
|
jobs:
|
|
7
7
|
test:
|
|
8
8
|
name: Ruby ${{ matrix.ruby }} / ${{ matrix.suite }}
|
|
9
|
-
runs-on: ubuntu-
|
|
9
|
+
runs-on: ubuntu-22.04
|
|
10
10
|
|
|
11
11
|
strategy:
|
|
12
12
|
fail-fast: false
|
|
13
13
|
matrix:
|
|
14
14
|
ruby:
|
|
15
|
+
- "3.2"
|
|
15
16
|
- "3.1"
|
|
16
17
|
- "3.0"
|
|
17
18
|
- "2.7"
|
|
18
|
-
- "2.6"
|
|
19
|
-
- "2.5"
|
|
20
19
|
suite:
|
|
21
20
|
- core
|
|
22
21
|
- faraday-0.9
|
|
23
22
|
- faraday-1.0
|
|
24
23
|
- msgr
|
|
25
24
|
- rack
|
|
26
|
-
- rails-5.0
|
|
27
|
-
- rails-5.1
|
|
28
25
|
- rails-5.2
|
|
29
26
|
- rails-6.0
|
|
30
27
|
- rails-6.1
|
|
31
28
|
- rails-7.0
|
|
32
29
|
- redis-4.0
|
|
30
|
+
- redis-5.0
|
|
33
31
|
- restify
|
|
34
32
|
- sidekiq-5
|
|
35
33
|
- sidekiq-6
|
|
36
34
|
include:
|
|
37
35
|
- suite: core
|
|
38
36
|
spec: --tag ~probe
|
|
37
|
+
gemfile: gemfiles/core.gemfile
|
|
39
38
|
- suite: faraday-0.9
|
|
40
39
|
spec: --tag probe:faraday
|
|
41
40
|
gemfile: gemfiles/faraday_09.gemfile
|
|
@@ -44,14 +43,10 @@ jobs:
|
|
|
44
43
|
gemfile: gemfiles/faraday_10.gemfile
|
|
45
44
|
- suite: msgr
|
|
46
45
|
spec: --tag probe:msgr
|
|
46
|
+
gemfile: gemfiles/core.gemfile
|
|
47
47
|
- suite: rack
|
|
48
48
|
spec: --tag probe:rack
|
|
49
|
-
|
|
50
|
-
spec: --tag probe:rails --tag ~probe
|
|
51
|
-
gemfile: gemfiles/rails_50.gemfile
|
|
52
|
-
- suite: rails-5.1
|
|
53
|
-
spec: --tag probe:rails --tag ~probe
|
|
54
|
-
gemfile: gemfiles/rails_51.gemfile
|
|
49
|
+
gemfile: gemfiles/core.gemfile
|
|
55
50
|
- suite: rails-5.2
|
|
56
51
|
spec: --tag probe:rails --tag ~probe
|
|
57
52
|
gemfile: gemfiles/rails_52.gemfile
|
|
@@ -67,8 +62,12 @@ jobs:
|
|
|
67
62
|
- suite: redis-4.0
|
|
68
63
|
spec: --tag probe:redis
|
|
69
64
|
gemfile: gemfiles/redis_40.gemfile
|
|
65
|
+
- suite: redis-5.0
|
|
66
|
+
spec: --tag probe:redis
|
|
67
|
+
gemfile: gemfiles/redis_50.gemfile
|
|
70
68
|
- suite: restify
|
|
71
69
|
spec: --tag probe:restify
|
|
70
|
+
gemfile: gemfiles/core.gemfile
|
|
72
71
|
- suite: sidekiq-5
|
|
73
72
|
spec: --tag probe:sidekiq
|
|
74
73
|
gemfile: gemfiles/sidekiq_50.gemfile
|
|
@@ -76,25 +75,16 @@ jobs:
|
|
|
76
75
|
spec: --tag probe:sidekiq
|
|
77
76
|
gemfile: gemfiles/sidekiq_60.gemfile
|
|
78
77
|
exclude:
|
|
79
|
-
- suite: rails-5.0
|
|
80
|
-
ruby: 3.1
|
|
81
|
-
- suite: rails-5.1
|
|
82
|
-
ruby: 3.1
|
|
83
78
|
- suite: rails-5.2
|
|
84
|
-
ruby: 3.
|
|
85
|
-
- suite: rails-5.0
|
|
86
|
-
ruby: 3.0
|
|
87
|
-
- suite: rails-5.1
|
|
88
|
-
ruby: 3.0
|
|
79
|
+
ruby: '3.2'
|
|
89
80
|
- suite: rails-5.2
|
|
90
|
-
ruby: 3.
|
|
91
|
-
- suite: rails-
|
|
92
|
-
ruby:
|
|
93
|
-
- suite: rails-7.0
|
|
94
|
-
ruby: 2.5
|
|
81
|
+
ruby: '3.1'
|
|
82
|
+
- suite: rails-5.2
|
|
83
|
+
ruby: '3.0'
|
|
95
84
|
|
|
96
85
|
env:
|
|
97
86
|
BUNDLE_GEMFILE: ${{ matrix.gemfile }}
|
|
87
|
+
BUNDLE_WITHOUT: development
|
|
98
88
|
|
|
99
89
|
services:
|
|
100
90
|
rabbitmq:
|
|
@@ -108,7 +98,6 @@ jobs:
|
|
|
108
98
|
env:
|
|
109
99
|
BUNDLE_JOBS: 4
|
|
110
100
|
BUNDLE_RETRY: 3
|
|
111
|
-
BUNDLE_WITHOUT: development,test
|
|
112
101
|
with:
|
|
113
102
|
ruby-version: ${{ matrix.ruby }}
|
|
114
103
|
bundler-cache: true
|
data/.gitignore
CHANGED
data/.markdownlint.yml
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# markdownlint config
|
|
2
|
+
|
|
3
|
+
# The CHANGELOG contains duplicated headers by design
|
|
4
|
+
MD024: false
|
|
5
|
+
|
|
6
|
+
# MD013/line-length: disable line length for all. We prefer lines as
|
|
7
|
+
# long as paragraph with in-editor line breaks.
|
|
8
|
+
MD013: false
|
|
9
|
+
|
|
10
|
+
# MD033/no-inline-html: allow often need tags
|
|
11
|
+
MD033:
|
|
12
|
+
allowed_elements:
|
|
13
|
+
- figure
|
|
14
|
+
- figcaption
|
|
15
|
+
|
|
16
|
+
# MD046/code-block-style: code block style conflicting with
|
|
17
|
+
# admonitions...
|
|
18
|
+
MD046: false
|
|
19
|
+
|
|
20
|
+
# MD048/code-fence-style: code fence style
|
|
21
|
+
MD048:
|
|
22
|
+
style: backtick
|
data/.rubocop.yml
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Changelog
|
data/Appraisals
CHANGED
|
@@ -1,18 +1,28 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
+
appraise 'core' do
|
|
4
|
+
remove_gem 'rubocop'
|
|
5
|
+
end
|
|
6
|
+
|
|
3
7
|
appraise 'faraday-09' do
|
|
8
|
+
remove_gem 'rubocop'
|
|
9
|
+
|
|
4
10
|
group :test do
|
|
5
11
|
gem 'faraday', '~> 0.9'
|
|
6
12
|
end
|
|
7
13
|
end
|
|
8
14
|
|
|
9
15
|
appraise 'faraday-10' do
|
|
16
|
+
remove_gem 'rubocop'
|
|
17
|
+
|
|
10
18
|
group :test do
|
|
11
19
|
gem 'faraday', '~> 1.0'
|
|
12
20
|
end
|
|
13
21
|
end
|
|
14
22
|
|
|
15
23
|
appraise 'rails-70' do
|
|
24
|
+
remove_gem 'rubocop'
|
|
25
|
+
|
|
16
26
|
group :test do
|
|
17
27
|
gem 'rails', '~> 7.0.0'
|
|
18
28
|
gem 'sqlite3', '~> 1.4'
|
|
@@ -20,6 +30,8 @@ appraise 'rails-70' do
|
|
|
20
30
|
end
|
|
21
31
|
|
|
22
32
|
appraise 'rails-61' do
|
|
33
|
+
remove_gem 'rubocop'
|
|
34
|
+
|
|
23
35
|
group :test do
|
|
24
36
|
gem 'rails', '~> 6.1.0'
|
|
25
37
|
gem 'sqlite3', '~> 1.4'
|
|
@@ -27,6 +39,8 @@ appraise 'rails-61' do
|
|
|
27
39
|
end
|
|
28
40
|
|
|
29
41
|
appraise 'rails-60' do
|
|
42
|
+
remove_gem 'rubocop'
|
|
43
|
+
|
|
30
44
|
group :test do
|
|
31
45
|
gem 'rails', '~> 6.0.0'
|
|
32
46
|
gem 'sqlite3', '~> 1.4'
|
|
@@ -34,39 +48,41 @@ appraise 'rails-60' do
|
|
|
34
48
|
end
|
|
35
49
|
|
|
36
50
|
appraise 'rails-52' do
|
|
51
|
+
remove_gem 'rubocop'
|
|
52
|
+
|
|
37
53
|
group :test do
|
|
38
54
|
gem 'rails', '~> 5.2.0'
|
|
39
55
|
gem 'sqlite3', '~> 1.4'
|
|
40
56
|
end
|
|
41
57
|
end
|
|
42
58
|
|
|
43
|
-
appraise '
|
|
44
|
-
|
|
45
|
-
gem 'rails', '~> 5.1.0'
|
|
46
|
-
gem 'sqlite3', '~> 1.4'
|
|
47
|
-
end
|
|
48
|
-
end
|
|
59
|
+
appraise 'redis-40' do
|
|
60
|
+
remove_gem 'rubocop'
|
|
49
61
|
|
|
50
|
-
appraise 'rails-50' do
|
|
51
62
|
group :test do
|
|
52
|
-
gem '
|
|
53
|
-
gem 'sqlite3', '~> 1.3.6'
|
|
63
|
+
gem 'redis', '~> 4.0'
|
|
54
64
|
end
|
|
55
65
|
end
|
|
56
66
|
|
|
57
|
-
appraise 'redis-
|
|
67
|
+
appraise 'redis-50' do
|
|
68
|
+
remove_gem 'rubocop'
|
|
69
|
+
|
|
58
70
|
group :test do
|
|
59
|
-
gem 'redis', '~>
|
|
71
|
+
gem 'redis', '~> 5.0'
|
|
60
72
|
end
|
|
61
73
|
end
|
|
62
74
|
|
|
63
75
|
appraise 'sidekiq-50' do
|
|
76
|
+
remove_gem 'rubocop'
|
|
77
|
+
|
|
64
78
|
group :test do
|
|
65
79
|
gem 'sidekiq', '~> 5.0'
|
|
66
80
|
end
|
|
67
81
|
end
|
|
68
82
|
|
|
69
83
|
appraise 'sidekiq-60' do
|
|
84
|
+
remove_gem 'rubocop'
|
|
85
|
+
|
|
70
86
|
group :test do
|
|
71
87
|
gem 'sidekiq', '~> 6.0'
|
|
72
88
|
end
|
data/CHANGELOG.md
CHANGED
|
@@ -1,100 +1,164 @@
|
|
|
1
1
|
# Changelog
|
|
2
|
+
|
|
2
3
|
All notable changes to this project will be documented in this file.
|
|
3
4
|
|
|
4
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
5
6
|
|
|
6
7
|
## [Unreleased]
|
|
7
8
|
|
|
9
|
+
## [1.15.0] - 2023-08-23
|
|
10
|
+
|
|
11
|
+
### Added
|
|
12
|
+
|
|
13
|
+
- Support for `redis` gem v5+
|
|
14
|
+
|
|
15
|
+
### Fixed
|
|
16
|
+
|
|
17
|
+
- Method signature for `#publish` in MSGR probe
|
|
18
|
+
|
|
19
|
+
## [1.14.0] - (2023-07-31)
|
|
20
|
+
|
|
21
|
+
### Added
|
|
22
|
+
|
|
23
|
+
- Tests with Ruby 3.2
|
|
24
|
+
|
|
25
|
+
### Changed
|
|
26
|
+
|
|
27
|
+
- Replace deprecated `!render.view_component` hook with `render.view_component`
|
|
28
|
+
- Removed tests for Rails 5.0 and 5.1
|
|
29
|
+
|
|
8
30
|
## [1.13.0] - 2022-04-14
|
|
31
|
+
|
|
9
32
|
### Added
|
|
33
|
+
|
|
10
34
|
- Support for `view_component` gem (#42)
|
|
11
35
|
- Support for Ruby 3.1 and Rails 7.0 (formally)
|
|
12
36
|
|
|
13
37
|
## [1.12.1] - 2022-03-21
|
|
38
|
+
|
|
14
39
|
### Added
|
|
40
|
+
|
|
15
41
|
- More commands whitelisted in Redis span metadata (#44)
|
|
16
42
|
|
|
17
43
|
## [1.12.0] - 2021-08-24
|
|
44
|
+
|
|
18
45
|
### Added
|
|
46
|
+
|
|
19
47
|
- Support for `redis` gem (#34)
|
|
20
48
|
|
|
21
49
|
### Removed
|
|
50
|
+
|
|
22
51
|
- Support for Ruby 2.4 (hard gem requirement)
|
|
23
52
|
|
|
24
53
|
## [1.11.0] - 2020-12-18
|
|
54
|
+
|
|
25
55
|
### Removed
|
|
56
|
+
|
|
26
57
|
- Support for Ruby 2.4 and Rails 4.2
|
|
27
58
|
|
|
28
59
|
### Fixed
|
|
60
|
+
|
|
29
61
|
- Deprecation warnings due to block capture and keyword arguments
|
|
30
62
|
|
|
31
63
|
## [1.10.0] - 2020-03-05
|
|
64
|
+
|
|
32
65
|
### Added
|
|
66
|
+
|
|
33
67
|
- Support for Faraday 1.0
|
|
34
68
|
|
|
35
69
|
## [1.9.0] - 2019-12-17
|
|
70
|
+
|
|
36
71
|
### Fixed
|
|
37
|
-
|
|
72
|
+
|
|
73
|
+
- \[Rack] Fix exceptions raised on trace submit corrupting the response
|
|
38
74
|
|
|
39
75
|
### Added
|
|
76
|
+
|
|
40
77
|
- Rack: Collect redirect locations (#14)
|
|
41
78
|
|
|
42
79
|
## [1.8.0] - 2019-10-25
|
|
80
|
+
|
|
43
81
|
### Added
|
|
82
|
+
|
|
44
83
|
- Improve compatibility with Rails 6.0
|
|
45
84
|
|
|
46
85
|
## [1.7.1] - 2019-06-15
|
|
86
|
+
|
|
47
87
|
### Fixed
|
|
88
|
+
|
|
48
89
|
- Reworked Faraday probe to not override connection middleware stack
|
|
49
90
|
|
|
50
91
|
## [1.7.0] - 2019-05-21
|
|
92
|
+
|
|
51
93
|
### Added
|
|
94
|
+
|
|
52
95
|
- Restify probe: Attach HTTP response status (#12, #13)
|
|
53
96
|
|
|
54
97
|
## [1.6.2] - 2019-05-16
|
|
98
|
+
|
|
55
99
|
### Fixed
|
|
100
|
+
|
|
56
101
|
- The Faraday probe dropped Faraday's default request encoder
|
|
57
102
|
|
|
58
103
|
## [1.6.1] - 2019-05-14
|
|
104
|
+
|
|
59
105
|
### Fixed
|
|
106
|
+
|
|
60
107
|
- Fix release pipeline; no code changed
|
|
61
108
|
|
|
62
109
|
## [1.6.0] - 2019-05-14
|
|
110
|
+
|
|
63
111
|
### Added
|
|
112
|
+
|
|
64
113
|
- Add faraday probe (#11)
|
|
65
114
|
|
|
66
115
|
## [1.5.1] - 2019-05-14
|
|
116
|
+
|
|
67
117
|
### Fixed
|
|
118
|
+
|
|
68
119
|
- Avoid using internal AMQP constant: Fix compat with amq-protocol 2.3+
|
|
69
120
|
|
|
70
121
|
## [1.5.0] - 2019-05-14
|
|
122
|
+
|
|
71
123
|
### Added
|
|
124
|
+
|
|
72
125
|
- Add ActiveJob perform probe
|
|
73
126
|
|
|
74
127
|
### Changed
|
|
128
|
+
|
|
75
129
|
- Capture endpoint names for grape web requests
|
|
76
130
|
- `attach_error` accepts errors without backtraces and string messages
|
|
77
131
|
|
|
78
132
|
## [1.4.0] - 2019-05-14
|
|
133
|
+
|
|
79
134
|
### Added
|
|
135
|
+
|
|
80
136
|
- Add global `#attach_error` for manual error reporting
|
|
81
137
|
|
|
82
138
|
## [1.3.0] - 2019-05-14
|
|
139
|
+
|
|
83
140
|
### Added
|
|
141
|
+
|
|
84
142
|
- Add exception serialization to trace and protocol
|
|
85
143
|
- Add exception reporting to Sidekiq, Msgr, Rack and Rails
|
|
86
144
|
|
|
87
145
|
## [1.2.1] - 2019-05-14
|
|
146
|
+
|
|
88
147
|
### Changed
|
|
148
|
+
|
|
89
149
|
- Improve AMQP connection recovery
|
|
90
150
|
- Fix dynamic probe loading
|
|
91
151
|
|
|
92
152
|
## [1.2.0] - 2019-05-14
|
|
153
|
+
|
|
93
154
|
### Added
|
|
155
|
+
|
|
94
156
|
- Collect response metadata in rack instrumentation
|
|
95
157
|
|
|
96
158
|
## [1.1.0] - 2019-05-14
|
|
159
|
+
|
|
97
160
|
### Added
|
|
161
|
+
|
|
98
162
|
- Add metadata to rack instrumentation
|
|
99
163
|
- Add msgr server & client instrumentation
|
|
100
164
|
- Add sidekiq client instrumentation
|
|
@@ -102,26 +166,37 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
|
102
166
|
- Add acfs request parameter tracing
|
|
103
167
|
|
|
104
168
|
## [1.0.1] - 2019-05-14
|
|
169
|
+
|
|
105
170
|
### Fixed
|
|
171
|
+
|
|
106
172
|
- Fix issue with `enabled` configuration flag (#1)
|
|
107
173
|
|
|
108
174
|
## [1.0.0] - 2019-05-14
|
|
175
|
+
|
|
109
176
|
### Fixed
|
|
177
|
+
|
|
110
178
|
- Fix issue with acfs middleware on non-tracing contexts
|
|
111
179
|
|
|
112
180
|
### Changed
|
|
181
|
+
|
|
113
182
|
- Simplify restify probe to only extend base adapter
|
|
114
183
|
- Remove FQDN lookup as it failed on missing RDNS
|
|
115
184
|
|
|
116
185
|
## 0.2.0 - 2019-05-14
|
|
186
|
+
|
|
117
187
|
### Changed
|
|
188
|
+
|
|
118
189
|
- Rename gem to mnemosyne-ruby due to name conflict
|
|
119
190
|
|
|
120
191
|
### Added
|
|
192
|
+
|
|
121
193
|
- Add platform identifier
|
|
122
194
|
|
|
123
|
-
[Unreleased]: https://github.com/mnemosyne-mon/mnemosyne-ruby/compare/v1.
|
|
124
|
-
[1.
|
|
195
|
+
[Unreleased]: https://github.com/mnemosyne-mon/mnemosyne-ruby/compare/v1.15.0...HEAD
|
|
196
|
+
[1.15.0]: https://github.com/mnemosyne-mon/mnemosyne-ruby/compare/v1.14.0...v1.15.0
|
|
197
|
+
[1.14.0]: https://github.com/mnemosyne-mon/mnemosyne-ruby/compare/v1.14.0...v1.13.0
|
|
198
|
+
[1.13.0]: https://github.com/mnemosyne-mon/mnemosyne-ruby/compare/v1.13.0...v1.12.1
|
|
199
|
+
[1.12.1]: https://github.com/mnemosyne-mon/mnemosyne-ruby/compare/v1.12.1...v1.12.0
|
|
125
200
|
[1.12.0]: https://github.com/mnemosyne-mon/mnemosyne-ruby/compare/v1.10.0...v1.12.0
|
|
126
201
|
[1.11.0]: https://github.com/mnemosyne-mon/mnemosyne-ruby/compare/v1.10.0...v1.11.0
|
|
127
202
|
[1.10.0]: https://github.com/mnemosyne-mon/mnemosyne-ruby/compare/v1.9.0...v1.10.0
|
data/Gemfile
CHANGED
|
@@ -6,11 +6,12 @@ source 'https://rubygems.org'
|
|
|
6
6
|
gemspec
|
|
7
7
|
|
|
8
8
|
gem 'rake', '~> 13.0'
|
|
9
|
-
gem '
|
|
10
|
-
gem 'rubocop', '~> 1.27.0'
|
|
11
|
-
gem 'timecop', '~> 0.9.1'
|
|
9
|
+
gem 'rubocop', '~> 1.56.0'
|
|
12
10
|
|
|
13
11
|
group :test do
|
|
12
|
+
gem 'rspec', '~> 3.6'
|
|
13
|
+
gem 'timecop', '~> 0.9.1'
|
|
14
|
+
|
|
14
15
|
gem 'faraday'
|
|
15
16
|
gem 'msgr'
|
|
16
17
|
gem 'rails'
|
data/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
The ruby client plugin for the Mnemosyne monitoring system. It extracts full application traces including cross-application requests for distributed applications (services etc.).
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
Supported probes:
|
|
6
6
|
|
|
7
7
|
* Acfs: Remote calls including tracing middleware
|
|
8
8
|
* ActionController: Processing actions and rendering
|
|
@@ -18,20 +18,12 @@ Currently supported probes:
|
|
|
18
18
|
|
|
19
19
|
## Installation
|
|
20
20
|
|
|
21
|
-
Add this line to your
|
|
21
|
+
Add this line to your Gemfile:
|
|
22
22
|
|
|
23
23
|
```ruby
|
|
24
24
|
gem 'mnemosyne-ruby', '~> 1.0'
|
|
25
25
|
```
|
|
26
26
|
|
|
27
|
-
And then execute:
|
|
28
|
-
|
|
29
|
-
$ bundle
|
|
30
|
-
|
|
31
|
-
Or install it yourself as:
|
|
32
|
-
|
|
33
|
-
$ gem install mnemosyne
|
|
34
|
-
|
|
35
27
|
Note: Removing support for ancient Ruby or Rails versions will not result in a new major. Please be extra careful when using ancient Ruby or Rails versions and updating gems.
|
|
36
28
|
|
|
37
29
|
## Usage
|
|
@@ -41,4 +33,3 @@ TODO
|
|
|
41
33
|
## License
|
|
42
34
|
|
|
43
35
|
The gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).
|
|
44
|
-
|
|
@@ -3,18 +3,17 @@
|
|
|
3
3
|
source "https://rubygems.org"
|
|
4
4
|
|
|
5
5
|
gem "rake", "~> 13.0"
|
|
6
|
-
gem "rspec", "~> 3.6"
|
|
7
|
-
gem "rubocop", "~> 1.27.0"
|
|
8
|
-
gem "timecop", "~> 0.9.1"
|
|
9
6
|
|
|
10
7
|
group :test do
|
|
8
|
+
gem "rspec", "~> 3.6"
|
|
9
|
+
gem "timecop", "~> 0.9.1"
|
|
11
10
|
gem "faraday"
|
|
12
11
|
gem "msgr"
|
|
13
|
-
gem "rails"
|
|
12
|
+
gem "rails"
|
|
14
13
|
gem "redis"
|
|
15
14
|
gem "restify"
|
|
16
15
|
gem "sidekiq"
|
|
17
|
-
gem "sqlite3"
|
|
16
|
+
gem "sqlite3"
|
|
18
17
|
gem "webmock"
|
|
19
18
|
end
|
|
20
19
|
|
data/gemfiles/faraday_09.gemfile
CHANGED
|
@@ -3,11 +3,10 @@
|
|
|
3
3
|
source "https://rubygems.org"
|
|
4
4
|
|
|
5
5
|
gem "rake", "~> 13.0"
|
|
6
|
-
gem "rspec", "~> 3.6"
|
|
7
|
-
gem "rubocop", "~> 1.27.0"
|
|
8
|
-
gem "timecop", "~> 0.9.1"
|
|
9
6
|
|
|
10
7
|
group :test do
|
|
8
|
+
gem "rspec", "~> 3.6"
|
|
9
|
+
gem "timecop", "~> 0.9.1"
|
|
11
10
|
gem "faraday", "~> 0.9"
|
|
12
11
|
gem "msgr"
|
|
13
12
|
gem "rails"
|
data/gemfiles/faraday_10.gemfile
CHANGED
|
@@ -3,11 +3,10 @@
|
|
|
3
3
|
source "https://rubygems.org"
|
|
4
4
|
|
|
5
5
|
gem "rake", "~> 13.0"
|
|
6
|
-
gem "rspec", "~> 3.6"
|
|
7
|
-
gem "rubocop", "~> 1.27.0"
|
|
8
|
-
gem "timecop", "~> 0.9.1"
|
|
9
6
|
|
|
10
7
|
group :test do
|
|
8
|
+
gem "rspec", "~> 3.6"
|
|
9
|
+
gem "timecop", "~> 0.9.1"
|
|
11
10
|
gem "faraday", "~> 1.0"
|
|
12
11
|
gem "msgr"
|
|
13
12
|
gem "rails"
|
data/gemfiles/rails_52.gemfile
CHANGED
|
@@ -3,11 +3,10 @@
|
|
|
3
3
|
source "https://rubygems.org"
|
|
4
4
|
|
|
5
5
|
gem "rake", "~> 13.0"
|
|
6
|
-
gem "rspec", "~> 3.6"
|
|
7
|
-
gem "rubocop", "~> 1.27.0"
|
|
8
|
-
gem "timecop", "~> 0.9.1"
|
|
9
6
|
|
|
10
7
|
group :test do
|
|
8
|
+
gem "rspec", "~> 3.6"
|
|
9
|
+
gem "timecop", "~> 0.9.1"
|
|
11
10
|
gem "faraday"
|
|
12
11
|
gem "msgr"
|
|
13
12
|
gem "rails", "~> 5.2.0"
|
data/gemfiles/rails_60.gemfile
CHANGED
|
@@ -3,11 +3,10 @@
|
|
|
3
3
|
source "https://rubygems.org"
|
|
4
4
|
|
|
5
5
|
gem "rake", "~> 13.0"
|
|
6
|
-
gem "rspec", "~> 3.6"
|
|
7
|
-
gem "rubocop", "~> 1.27.0"
|
|
8
|
-
gem "timecop", "~> 0.9.1"
|
|
9
6
|
|
|
10
7
|
group :test do
|
|
8
|
+
gem "rspec", "~> 3.6"
|
|
9
|
+
gem "timecop", "~> 0.9.1"
|
|
11
10
|
gem "faraday"
|
|
12
11
|
gem "msgr"
|
|
13
12
|
gem "rails", "~> 6.0.0"
|
data/gemfiles/rails_61.gemfile
CHANGED
|
@@ -3,11 +3,10 @@
|
|
|
3
3
|
source "https://rubygems.org"
|
|
4
4
|
|
|
5
5
|
gem "rake", "~> 13.0"
|
|
6
|
-
gem "rspec", "~> 3.6"
|
|
7
|
-
gem "rubocop", "~> 1.27.0"
|
|
8
|
-
gem "timecop", "~> 0.9.1"
|
|
9
6
|
|
|
10
7
|
group :test do
|
|
8
|
+
gem "rspec", "~> 3.6"
|
|
9
|
+
gem "timecop", "~> 0.9.1"
|
|
11
10
|
gem "faraday"
|
|
12
11
|
gem "msgr"
|
|
13
12
|
gem "rails", "~> 6.1.0"
|
data/gemfiles/rails_70.gemfile
CHANGED
|
@@ -3,11 +3,10 @@
|
|
|
3
3
|
source "https://rubygems.org"
|
|
4
4
|
|
|
5
5
|
gem "rake", "~> 13.0"
|
|
6
|
-
gem "rspec", "~> 3.6"
|
|
7
|
-
gem "rubocop", "~> 1.27.0"
|
|
8
|
-
gem "timecop", "~> 0.9.1"
|
|
9
6
|
|
|
10
7
|
group :test do
|
|
8
|
+
gem "rspec", "~> 3.6"
|
|
9
|
+
gem "timecop", "~> 0.9.1"
|
|
11
10
|
gem "faraday"
|
|
12
11
|
gem "msgr"
|
|
13
12
|
gem "rails", "~> 7.0.0"
|
data/gemfiles/redis_40.gemfile
CHANGED
|
@@ -3,11 +3,10 @@
|
|
|
3
3
|
source "https://rubygems.org"
|
|
4
4
|
|
|
5
5
|
gem "rake", "~> 13.0"
|
|
6
|
-
gem "rspec", "~> 3.6"
|
|
7
|
-
gem "rubocop", "~> 1.27.0"
|
|
8
|
-
gem "timecop", "~> 0.9.1"
|
|
9
6
|
|
|
10
7
|
group :test do
|
|
8
|
+
gem "rspec", "~> 3.6"
|
|
9
|
+
gem "timecop", "~> 0.9.1"
|
|
11
10
|
gem "faraday"
|
|
12
11
|
gem "msgr"
|
|
13
12
|
gem "rails"
|
|
@@ -3,18 +3,17 @@
|
|
|
3
3
|
source "https://rubygems.org"
|
|
4
4
|
|
|
5
5
|
gem "rake", "~> 13.0"
|
|
6
|
-
gem "rspec", "~> 3.6"
|
|
7
|
-
gem "rubocop", "~> 1.27.0"
|
|
8
|
-
gem "timecop", "~> 0.9.1"
|
|
9
6
|
|
|
10
7
|
group :test do
|
|
8
|
+
gem "rspec", "~> 3.6"
|
|
9
|
+
gem "timecop", "~> 0.9.1"
|
|
11
10
|
gem "faraday"
|
|
12
11
|
gem "msgr"
|
|
13
|
-
gem "rails"
|
|
14
|
-
gem "redis"
|
|
12
|
+
gem "rails"
|
|
13
|
+
gem "redis", "~> 5.0"
|
|
15
14
|
gem "restify"
|
|
16
15
|
gem "sidekiq"
|
|
17
|
-
gem "sqlite3"
|
|
16
|
+
gem "sqlite3"
|
|
18
17
|
gem "webmock"
|
|
19
18
|
end
|
|
20
19
|
|
data/gemfiles/sidekiq_50.gemfile
CHANGED
|
@@ -3,11 +3,10 @@
|
|
|
3
3
|
source "https://rubygems.org"
|
|
4
4
|
|
|
5
5
|
gem "rake", "~> 13.0"
|
|
6
|
-
gem "rspec", "~> 3.6"
|
|
7
|
-
gem "rubocop", "~> 1.27.0"
|
|
8
|
-
gem "timecop", "~> 0.9.1"
|
|
9
6
|
|
|
10
7
|
group :test do
|
|
8
|
+
gem "rspec", "~> 3.6"
|
|
9
|
+
gem "timecop", "~> 0.9.1"
|
|
11
10
|
gem "faraday"
|
|
12
11
|
gem "msgr"
|
|
13
12
|
gem "rails"
|
data/gemfiles/sidekiq_60.gemfile
CHANGED
|
@@ -3,11 +3,10 @@
|
|
|
3
3
|
source "https://rubygems.org"
|
|
4
4
|
|
|
5
5
|
gem "rake", "~> 13.0"
|
|
6
|
-
gem "rspec", "~> 3.6"
|
|
7
|
-
gem "rubocop", "~> 1.27.0"
|
|
8
|
-
gem "timecop", "~> 0.9.1"
|
|
9
6
|
|
|
10
7
|
group :test do
|
|
8
|
+
gem "rspec", "~> 3.6"
|
|
9
|
+
gem "timecop", "~> 0.9.1"
|
|
11
10
|
gem "faraday"
|
|
12
11
|
gem "msgr"
|
|
13
12
|
gem "rails"
|
|
@@ -28,14 +28,16 @@ module Mnemosyne
|
|
|
28
28
|
|
|
29
29
|
raise ArgumentError.new 'Platform is required' if platform.blank?
|
|
30
30
|
|
|
31
|
-
if @platform =~ /[^a-zA-Z0-9
|
|
32
|
-
raise ArgumentError.new
|
|
31
|
+
if @platform =~ /[^a-zA-Z0-9-]/
|
|
32
|
+
raise ArgumentError.new(
|
|
33
33
|
'Platform may only contain alphanumeric characters'
|
|
34
|
+
)
|
|
34
35
|
end
|
|
35
36
|
|
|
36
37
|
unless @platform =~ /\A[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*\z/
|
|
37
|
-
raise ArgumentError.new
|
|
38
|
+
raise ArgumentError.new(
|
|
38
39
|
'Platform must start and end with a alphanumeric characters'
|
|
40
|
+
)
|
|
39
41
|
end
|
|
40
42
|
|
|
41
43
|
raise ArgumentError.new('Application is required') if application.blank?
|
|
@@ -6,121 +6,147 @@ module Mnemosyne
|
|
|
6
6
|
module Command
|
|
7
7
|
class Probe < ::Mnemosyne::Probe
|
|
8
8
|
def setup
|
|
9
|
-
::Redis::
|
|
9
|
+
if Gem::Version.new(::Redis::VERSION) >= Gem::Version.new('5')
|
|
10
|
+
::RedisClient.register Instrumentation
|
|
11
|
+
else
|
|
12
|
+
::Redis::Client.prepend ClientPatch
|
|
13
|
+
end
|
|
10
14
|
end
|
|
11
15
|
|
|
12
|
-
module
|
|
13
|
-
def
|
|
14
|
-
|
|
15
|
-
|
|
16
|
+
module Instrumentation
|
|
17
|
+
def call(command, redis_config)
|
|
18
|
+
Instrumentation.instrument([command], client.server_url) { super }
|
|
19
|
+
end
|
|
16
20
|
|
|
17
|
-
|
|
18
|
-
|
|
21
|
+
def call_pipelined(commands, redis_config)
|
|
22
|
+
Instrumentation.instrument(commands, client.server_url) { super }
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
class << self
|
|
26
|
+
def instrument(commands, server_url)
|
|
27
|
+
trace = ::Mnemosyne::Instrumenter.current_trace
|
|
28
|
+
return yield unless trace
|
|
19
29
|
|
|
20
|
-
|
|
30
|
+
span = ::Mnemosyne::Span.new 'db.query.redis',
|
|
31
|
+
meta: extract_span_meta(commands, server_url)
|
|
21
32
|
|
|
22
|
-
|
|
23
|
-
span.meta[:error] = retval.message if retval.is_a?(::Redis::CommandError)
|
|
33
|
+
span.start!
|
|
24
34
|
|
|
25
|
-
|
|
35
|
+
begin
|
|
36
|
+
yield.tap do |retval|
|
|
37
|
+
span.meta[:error] = retval.message if retval.is_a?(::Redis::CommandError)
|
|
38
|
+
|
|
39
|
+
trace << span.finish!
|
|
40
|
+
end
|
|
41
|
+
rescue StandardError => e
|
|
42
|
+
span.meta[:error] = e.message
|
|
43
|
+
trace << span.finish!
|
|
44
|
+
raise
|
|
45
|
+
end
|
|
26
46
|
end
|
|
27
|
-
end
|
|
28
47
|
|
|
29
|
-
|
|
48
|
+
private
|
|
30
49
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
50
|
+
def extract_span_meta(commands, server_url)
|
|
51
|
+
{
|
|
52
|
+
server: server_url,
|
|
34
53
|
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
54
|
+
# Each command is an array, consisting of the command name and any
|
|
55
|
+
# arguments. We are only interested in the command name.
|
|
56
|
+
commands: extract_command_names(commands),
|
|
38
57
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
58
|
+
# If there are multiple commands, that must mean they were pipelined
|
|
59
|
+
# (i.e. run in parallel).
|
|
60
|
+
pipelined: commands.length > 1
|
|
61
|
+
}
|
|
62
|
+
end
|
|
44
63
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
64
|
+
def extract_command_names(commands)
|
|
65
|
+
commands.map do |c|
|
|
66
|
+
# Depending on how the methods on the Redis gem are called,
|
|
67
|
+
# there may be an additional level of nesting.
|
|
68
|
+
c = c[0] if c[0].is_a?(Array)
|
|
50
69
|
|
|
51
|
-
|
|
52
|
-
|
|
70
|
+
# For some commands, we also extract *some* of the arguments.
|
|
71
|
+
name, args = parse_name_and_args(c)
|
|
72
|
+
|
|
73
|
+
"#{name} #{args}".strip
|
|
74
|
+
end.join("\n")
|
|
75
|
+
end
|
|
53
76
|
|
|
54
|
-
|
|
55
|
-
|
|
77
|
+
##
|
|
78
|
+
# A map of known commands to the arguments (identified by position)
|
|
79
|
+
# that should be included verbatim in the metadata. Arguments not
|
|
80
|
+
# listed here will be replaced by a "?" character.
|
|
81
|
+
#
|
|
82
|
+
# The value can be a list of safe argument indices, or "*" (all).
|
|
83
|
+
#
|
|
84
|
+
KNOWN_ARGUMENTS = {
|
|
85
|
+
'BLPOP' => '*',
|
|
86
|
+
'BRPOP' => '*',
|
|
87
|
+
'EVALSHA' => [0, 1],
|
|
88
|
+
'EXISTS' => '*',
|
|
89
|
+
'EXPIRE' => '*',
|
|
90
|
+
'GET' => '*',
|
|
91
|
+
'HGET' => '*',
|
|
92
|
+
'HGETALL' => '*',
|
|
93
|
+
'HMGET' => '*',
|
|
94
|
+
'HMSET' => [0, 1],
|
|
95
|
+
'HSCAN' => '*',
|
|
96
|
+
'INCRBY' => '*',
|
|
97
|
+
'LLEN' => '*',
|
|
98
|
+
'LPUSH' => [0],
|
|
99
|
+
'LRANGE' => '*',
|
|
100
|
+
'LREM' => [0, 1],
|
|
101
|
+
'MGET' => '*',
|
|
102
|
+
'MSET' => [0],
|
|
103
|
+
'RPUSH' => [0],
|
|
104
|
+
'RPOP' => '*',
|
|
105
|
+
'SADD' => [0],
|
|
106
|
+
'SCARD' => '*',
|
|
107
|
+
'SCAN' => '*',
|
|
108
|
+
'SCRIPT LOAD' => [],
|
|
109
|
+
'SET' => [0],
|
|
110
|
+
'SREM' => [0],
|
|
111
|
+
'SSCAN' => '*',
|
|
112
|
+
'UNLINK' => '*',
|
|
113
|
+
'ZADD' => [0],
|
|
114
|
+
'ZCARD' => '*',
|
|
115
|
+
'ZINCRBY' => [0, 1],
|
|
116
|
+
'ZRANGE' => '*',
|
|
117
|
+
'ZRANGEBYSCORE' => '*',
|
|
118
|
+
'ZREM' => [0],
|
|
119
|
+
'ZREMRANGEBYSCORE' => '*',
|
|
120
|
+
'ZREVRANGE' => '*',
|
|
121
|
+
'ZSCAN' => '*'
|
|
122
|
+
}.freeze
|
|
123
|
+
|
|
124
|
+
def parse_name_and_args(command)
|
|
125
|
+
command = command.dup
|
|
126
|
+
|
|
127
|
+
# Symbols and lower-case names are allowed
|
|
128
|
+
name = command.delete_at(0).to_s.upcase
|
|
129
|
+
|
|
130
|
+
allowed = KNOWN_ARGUMENTS[name] || []
|
|
131
|
+
args = case allowed
|
|
132
|
+
when '*' # All arguments considered safe
|
|
133
|
+
command
|
|
134
|
+
when Array # A list of allowed argument indices
|
|
135
|
+
command.each_with_index.map do |arg, index|
|
|
136
|
+
allowed.include?(index) ? arg : '?'
|
|
137
|
+
end
|
|
138
|
+
else # Unknown command - assume nothing is safe
|
|
139
|
+
Array.new(command.length, '?')
|
|
140
|
+
end.join(' ')
|
|
141
|
+
|
|
142
|
+
[name, args]
|
|
143
|
+
end
|
|
56
144
|
end
|
|
145
|
+
end
|
|
57
146
|
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
# listed here will be replaced by a "?" character.
|
|
62
|
-
#
|
|
63
|
-
# The value can be a list of safe argument indices, or "*" (all).
|
|
64
|
-
#
|
|
65
|
-
KNOWN_ARGUMENTS = {
|
|
66
|
-
'BLPOP' => '*',
|
|
67
|
-
'BRPOP' => '*',
|
|
68
|
-
'EVALSHA' => [0, 1],
|
|
69
|
-
'EXISTS' => '*',
|
|
70
|
-
'EXPIRE' => '*',
|
|
71
|
-
'GET' => '*',
|
|
72
|
-
'HGET' => '*',
|
|
73
|
-
'HGETALL' => '*',
|
|
74
|
-
'HMGET' => '*',
|
|
75
|
-
'HMSET' => [0, 1],
|
|
76
|
-
'HSCAN' => '*',
|
|
77
|
-
'INCRBY' => '*',
|
|
78
|
-
'LLEN' => '*',
|
|
79
|
-
'LPUSH' => [0],
|
|
80
|
-
'LRANGE' => '*',
|
|
81
|
-
'LREM' => [0, 1],
|
|
82
|
-
'MGET' => '*',
|
|
83
|
-
'MSET' => [0],
|
|
84
|
-
'RPUSH' => [0],
|
|
85
|
-
'RPOP' => '*',
|
|
86
|
-
'SADD' => [0],
|
|
87
|
-
'SCARD' => '*',
|
|
88
|
-
'SCAN' => '*',
|
|
89
|
-
'SCRIPT LOAD' => [],
|
|
90
|
-
'SET' => [0],
|
|
91
|
-
'SREM' => [0],
|
|
92
|
-
'SSCAN' => '*',
|
|
93
|
-
'UNLINK' => '*',
|
|
94
|
-
'ZADD' => [0],
|
|
95
|
-
'ZCARD' => '*',
|
|
96
|
-
'ZINCRBY' => [0, 1],
|
|
97
|
-
'ZRANGE' => '*',
|
|
98
|
-
'ZRANGEBYSCORE' => '*',
|
|
99
|
-
'ZREM' => [0],
|
|
100
|
-
'ZREMRANGEBYSCORE' => '*',
|
|
101
|
-
'ZREVRANGE' => '*',
|
|
102
|
-
'ZSCAN' => '*'
|
|
103
|
-
}.freeze
|
|
104
|
-
|
|
105
|
-
def parse_name_and_args(command)
|
|
106
|
-
command = command.dup
|
|
107
|
-
|
|
108
|
-
# Symbols and lower-case names are allowed
|
|
109
|
-
name = command.delete_at(0).to_s.upcase
|
|
110
|
-
|
|
111
|
-
allowed = KNOWN_ARGUMENTS[name] || []
|
|
112
|
-
args = case allowed
|
|
113
|
-
when '*' # All arguments considered safe
|
|
114
|
-
command
|
|
115
|
-
when Array # A list of allowed argument indices
|
|
116
|
-
command.each_with_index.map do |arg, index|
|
|
117
|
-
allowed.include?(index) ? arg : '?'
|
|
118
|
-
end
|
|
119
|
-
else # Unknown command - assume nothing is safe
|
|
120
|
-
Array.new(command.length, '?')
|
|
121
|
-
end.join(' ')
|
|
122
|
-
|
|
123
|
-
[name, args]
|
|
147
|
+
module ClientPatch
|
|
148
|
+
def process(commands)
|
|
149
|
+
Instrumentation.instrument(commands, id) { super }
|
|
124
150
|
end
|
|
125
151
|
end
|
|
126
152
|
end
|
|
@@ -13,9 +13,7 @@ module Mnemosyne
|
|
|
13
13
|
def call(request)
|
|
14
14
|
if (trace = ::Mnemosyne::Instrumenter.current_trace)
|
|
15
15
|
meta = {url: request.uri.to_s, method: request.method}
|
|
16
|
-
|
|
17
|
-
span = ::Mnemosyne::Span.new 'external.http.restify', \
|
|
18
|
-
meta: meta
|
|
16
|
+
span = ::Mnemosyne::Span.new 'external.http.restify', meta: meta
|
|
19
17
|
|
|
20
18
|
span.start!
|
|
21
19
|
|
|
@@ -5,7 +5,7 @@ module Mnemosyne
|
|
|
5
5
|
module ViewComponent
|
|
6
6
|
module RenderComponent
|
|
7
7
|
class Probe < ::Mnemosyne::Probe
|
|
8
|
-
subscribe '
|
|
8
|
+
subscribe 'render.view_component'
|
|
9
9
|
|
|
10
10
|
def call(trace, _name, start, finish, _id, payload)
|
|
11
11
|
start = ::Mnemosyne::Clock.to_tick(start)
|
data/lib/mnemosyne/version.rb
CHANGED
data/mnemosyne-ruby.gemspec
CHANGED
|
@@ -26,9 +26,7 @@ Gem::Specification.new do |spec|
|
|
|
26
26
|
spec.executables = spec.files.grep(%r{^bin/}) {|f| File.basename(f) }
|
|
27
27
|
spec.require_paths = %w[lib]
|
|
28
28
|
|
|
29
|
-
spec.required_ruby_version = '>= 2.
|
|
29
|
+
spec.required_ruby_version = '>= 2.7'
|
|
30
30
|
spec.add_runtime_dependency 'activesupport', '>= 4'
|
|
31
31
|
spec.add_runtime_dependency 'bunny'
|
|
32
|
-
|
|
33
|
-
spec.add_development_dependency 'bundler'
|
|
34
32
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: mnemosyne-ruby
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.
|
|
4
|
+
version: 1.15.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Jan Graichen
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2023-08-23 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: activesupport
|
|
@@ -38,20 +38,6 @@ dependencies:
|
|
|
38
38
|
- - ">="
|
|
39
39
|
- !ruby/object:Gem::Version
|
|
40
40
|
version: '0'
|
|
41
|
-
- !ruby/object:Gem::Dependency
|
|
42
|
-
name: bundler
|
|
43
|
-
requirement: !ruby/object:Gem::Requirement
|
|
44
|
-
requirements:
|
|
45
|
-
- - ">="
|
|
46
|
-
- !ruby/object:Gem::Version
|
|
47
|
-
version: '0'
|
|
48
|
-
type: :development
|
|
49
|
-
prerelease: false
|
|
50
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
51
|
-
requirements:
|
|
52
|
-
- - ">="
|
|
53
|
-
- !ruby/object:Gem::Version
|
|
54
|
-
version: '0'
|
|
55
41
|
description:
|
|
56
42
|
email:
|
|
57
43
|
- jgraichen@altimos.de
|
|
@@ -63,23 +49,25 @@ files:
|
|
|
63
49
|
- ".github/workflows/lint.yml"
|
|
64
50
|
- ".github/workflows/test.yml"
|
|
65
51
|
- ".gitignore"
|
|
52
|
+
- ".markdownlint.yml"
|
|
66
53
|
- ".rspec"
|
|
67
54
|
- ".rubocop.yml"
|
|
55
|
+
- ".vscode/ltex.dictionary.en-US.txt"
|
|
68
56
|
- Appraisals
|
|
69
57
|
- CHANGELOG.md
|
|
70
58
|
- Gemfile
|
|
71
59
|
- LICENSE
|
|
72
60
|
- README.md
|
|
73
61
|
- Rakefile
|
|
62
|
+
- gemfiles/core.gemfile
|
|
74
63
|
- gemfiles/faraday_09.gemfile
|
|
75
64
|
- gemfiles/faraday_10.gemfile
|
|
76
|
-
- gemfiles/rails_50.gemfile
|
|
77
|
-
- gemfiles/rails_51.gemfile
|
|
78
65
|
- gemfiles/rails_52.gemfile
|
|
79
66
|
- gemfiles/rails_60.gemfile
|
|
80
67
|
- gemfiles/rails_61.gemfile
|
|
81
68
|
- gemfiles/rails_70.gemfile
|
|
82
69
|
- gemfiles/redis_40.gemfile
|
|
70
|
+
- gemfiles/redis_50.gemfile
|
|
83
71
|
- gemfiles/sidekiq_50.gemfile
|
|
84
72
|
- gemfiles/sidekiq_60.gemfile
|
|
85
73
|
- lib/mnemosyne-ruby.rb
|
|
@@ -140,14 +128,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
140
128
|
requirements:
|
|
141
129
|
- - ">="
|
|
142
130
|
- !ruby/object:Gem::Version
|
|
143
|
-
version: '2.
|
|
131
|
+
version: '2.7'
|
|
144
132
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
145
133
|
requirements:
|
|
146
134
|
- - ">="
|
|
147
135
|
- !ruby/object:Gem::Version
|
|
148
136
|
version: '0'
|
|
149
137
|
requirements: []
|
|
150
|
-
rubygems_version: 3.
|
|
138
|
+
rubygems_version: 3.4.18
|
|
151
139
|
signing_key:
|
|
152
140
|
specification_version: 4
|
|
153
141
|
summary: Ruby/Rails client for Mnemosyne APM
|