sidekiq-prometheus-exporter 0.1.16 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/ci.yaml +10 -8
- data/.rubocop.yml +4 -1
- data/Appraisals +8 -15
- data/README.md +3 -2
- data/Rakefile +15 -9
- data/docker/Dockerfile +5 -5
- data/gemfiles/{sidekiq_3.x.Gemfile → sidekiq_4.1.0.Gemfile} +1 -4
- data/gemfiles/sidekiq_4.1.0.Gemfile.lock +117 -0
- data/gemfiles/sidekiq_4.x.Gemfile +1 -1
- data/gemfiles/sidekiq_4.x.Gemfile.lock +50 -46
- data/gemfiles/sidekiq_5.x.Gemfile.lock +48 -44
- data/gemfiles/sidekiq_6.x.Gemfile.lock +51 -47
- data/gemfiles/sidekiq_7.x.Gemfile +8 -0
- data/gemfiles/sidekiq_7.x.Gemfile.lock +109 -0
- data/gemfiles/sidekiq_latest.Gemfile.lock +54 -46
- data/helm/sidekiq-prometheus-exporter/Chart.yaml +2 -2
- data/helm/sidekiq-prometheus-exporter/README.md +3 -1
- data/helm/sidekiq-prometheus-exporter/templates/deployment.yaml +3 -0
- data/helm/sidekiq-prometheus-exporter/values.yaml +5 -1
- data/lib/sidekiq/prometheus/exporter/standard.rb +5 -2
- data/lib/sidekiq/prometheus/exporter/templates/standard.erb +4 -0
- data/lib/sidekiq/prometheus/exporter/version.rb +4 -1
- data/lib/sidekiq/prometheus/exporter.rb +1 -1
- data/sidekiq-prometheus-exporter.gemspec +4 -1
- metadata +38 -9
- data/gemfiles/sidekiq_3.3.1.Gemfile +0 -12
- data/gemfiles/sidekiq_3.3.1.Gemfile.lock +0 -125
- data/gemfiles/sidekiq_3.x.Gemfile.lock +0 -140
@@ -1,78 +1,81 @@
|
|
1
1
|
PATH
|
2
2
|
remote: ..
|
3
3
|
specs:
|
4
|
-
sidekiq-prometheus-exporter (0.1.
|
4
|
+
sidekiq-prometheus-exporter (0.1.17)
|
5
|
+
rack (>= 1.6.0)
|
5
6
|
sidekiq (>= 3.3.1)
|
6
7
|
|
7
8
|
GEM
|
8
9
|
remote: https://rubygems.org/
|
9
10
|
specs:
|
10
|
-
appraisal (2.
|
11
|
+
appraisal (2.4.1)
|
11
12
|
bundler
|
12
13
|
rake
|
13
14
|
thor (>= 0.14.0)
|
14
15
|
ast (2.4.2)
|
15
|
-
byebug (
|
16
|
-
coderay (1.1.
|
17
|
-
connection_pool (2.
|
18
|
-
diff-lcs (1.
|
19
|
-
|
20
|
-
|
21
|
-
|
16
|
+
byebug (11.1.3)
|
17
|
+
coderay (1.1.3)
|
18
|
+
connection_pool (2.3.0)
|
19
|
+
diff-lcs (1.5.0)
|
20
|
+
json (2.6.2)
|
21
|
+
method_source (1.0.0)
|
22
|
+
parallel (1.22.1)
|
23
|
+
parser (3.1.2.1)
|
22
24
|
ast (~> 2.4.1)
|
23
|
-
pry (0.
|
24
|
-
coderay (~> 1.1
|
25
|
-
method_source (~>
|
26
|
-
pry-byebug (3.
|
27
|
-
byebug (~>
|
28
|
-
pry (
|
29
|
-
rack (2.2.
|
25
|
+
pry (0.14.2)
|
26
|
+
coderay (~> 1.1)
|
27
|
+
method_source (~> 1.0)
|
28
|
+
pry-byebug (3.10.1)
|
29
|
+
byebug (~> 11.0)
|
30
|
+
pry (>= 0.13, < 0.15)
|
31
|
+
rack (2.2.4)
|
30
32
|
rack-test (1.1.0)
|
31
33
|
rack (>= 1.0, < 3)
|
32
|
-
rainbow (3.
|
33
|
-
rake (13.0.
|
34
|
-
redis (4.
|
35
|
-
regexp_parser (2.
|
34
|
+
rainbow (3.1.1)
|
35
|
+
rake (13.0.6)
|
36
|
+
redis (4.8.0)
|
37
|
+
regexp_parser (2.6.1)
|
36
38
|
rexml (3.2.5)
|
37
|
-
rspec (3.
|
38
|
-
rspec-core (~> 3.
|
39
|
-
rspec-expectations (~> 3.
|
40
|
-
rspec-mocks (~> 3.
|
41
|
-
rspec-core (3.
|
42
|
-
rspec-support (~> 3.
|
43
|
-
rspec-expectations (3.
|
39
|
+
rspec (3.12.0)
|
40
|
+
rspec-core (~> 3.12.0)
|
41
|
+
rspec-expectations (~> 3.12.0)
|
42
|
+
rspec-mocks (~> 3.12.0)
|
43
|
+
rspec-core (3.12.0)
|
44
|
+
rspec-support (~> 3.12.0)
|
45
|
+
rspec-expectations (3.12.0)
|
44
46
|
diff-lcs (>= 1.2.0, < 2.0)
|
45
|
-
rspec-support (~> 3.
|
46
|
-
rspec-mocks (3.
|
47
|
+
rspec-support (~> 3.12.0)
|
48
|
+
rspec-mocks (3.12.0)
|
47
49
|
diff-lcs (>= 1.2.0, < 2.0)
|
48
|
-
rspec-support (~> 3.
|
49
|
-
rspec-support (3.
|
50
|
-
rubocop (1.
|
50
|
+
rspec-support (~> 3.12.0)
|
51
|
+
rspec-support (3.12.0)
|
52
|
+
rubocop (1.39.0)
|
53
|
+
json (~> 2.3)
|
51
54
|
parallel (~> 1.10)
|
52
|
-
parser (>= 3.
|
55
|
+
parser (>= 3.1.2.1)
|
53
56
|
rainbow (>= 2.2.2, < 4.0)
|
54
57
|
regexp_parser (>= 1.8, < 3.0)
|
55
|
-
rexml
|
56
|
-
rubocop-ast (>= 1.
|
58
|
+
rexml (>= 3.2.5, < 4.0)
|
59
|
+
rubocop-ast (>= 1.23.0, < 2.0)
|
57
60
|
ruby-progressbar (~> 1.7)
|
58
61
|
unicode-display_width (>= 1.4.0, < 3.0)
|
59
|
-
rubocop-ast (1.
|
60
|
-
parser (>= 3.
|
61
|
-
rubocop-performance (1.
|
62
|
+
rubocop-ast (1.23.0)
|
63
|
+
parser (>= 3.1.1.0)
|
64
|
+
rubocop-performance (1.15.1)
|
62
65
|
rubocop (>= 1.7.0, < 2.0)
|
63
66
|
rubocop-ast (>= 0.4.0)
|
64
67
|
rubocop-rake (0.6.0)
|
65
68
|
rubocop (~> 1.0)
|
66
|
-
rubocop-rspec (2.
|
67
|
-
rubocop (~> 1.
|
69
|
+
rubocop-rspec (2.15.0)
|
70
|
+
rubocop (~> 1.33)
|
68
71
|
ruby-progressbar (1.11.0)
|
69
|
-
sidekiq (6.
|
70
|
-
connection_pool (>= 2.2.
|
72
|
+
sidekiq (6.5.8)
|
73
|
+
connection_pool (>= 2.2.5, < 3)
|
71
74
|
rack (~> 2.0)
|
72
|
-
redis (>= 4.
|
73
|
-
thor (1.
|
74
|
-
timecop (0.9.
|
75
|
-
unicode-display_width (2.
|
75
|
+
redis (>= 4.5.0, < 5)
|
76
|
+
thor (1.2.1)
|
77
|
+
timecop (0.9.5)
|
78
|
+
unicode-display_width (2.3.0)
|
76
79
|
|
77
80
|
PLATFORMS
|
78
81
|
ruby
|
@@ -80,6 +83,7 @@ PLATFORMS
|
|
80
83
|
DEPENDENCIES
|
81
84
|
appraisal (~> 2.2)
|
82
85
|
bundler (~> 2.1)
|
86
|
+
pry (~> 0.14)
|
83
87
|
pry-byebug (~> 3.6)
|
84
88
|
rack-test (~> 1.1)
|
85
89
|
rake (~> 13.0)
|
@@ -94,4 +98,4 @@ DEPENDENCIES
|
|
94
98
|
timecop (~> 0.9)
|
95
99
|
|
96
100
|
BUNDLED WITH
|
97
|
-
2.
|
101
|
+
2.3.26
|
@@ -0,0 +1,109 @@
|
|
1
|
+
PATH
|
2
|
+
remote: ..
|
3
|
+
specs:
|
4
|
+
sidekiq-prometheus-exporter (0.1.17)
|
5
|
+
rack (>= 1.6.0)
|
6
|
+
sidekiq (>= 3.3.1)
|
7
|
+
|
8
|
+
GEM
|
9
|
+
remote: https://rubygems.org/
|
10
|
+
specs:
|
11
|
+
appraisal (2.4.1)
|
12
|
+
bundler
|
13
|
+
rake
|
14
|
+
thor (>= 0.14.0)
|
15
|
+
ast (2.4.2)
|
16
|
+
byebug (11.1.3)
|
17
|
+
coderay (1.1.3)
|
18
|
+
concurrent-ruby (1.2.2)
|
19
|
+
connection_pool (2.4.0)
|
20
|
+
diff-lcs (1.5.0)
|
21
|
+
json (2.6.3)
|
22
|
+
method_source (1.0.0)
|
23
|
+
parallel (1.23.0)
|
24
|
+
parser (3.2.2.0)
|
25
|
+
ast (~> 2.4.1)
|
26
|
+
pry (0.14.2)
|
27
|
+
coderay (~> 1.1)
|
28
|
+
method_source (~> 1.0)
|
29
|
+
pry-byebug (3.10.1)
|
30
|
+
byebug (~> 11.0)
|
31
|
+
pry (>= 0.13, < 0.15)
|
32
|
+
rack (2.2.6.4)
|
33
|
+
rack-test (1.1.0)
|
34
|
+
rack (>= 1.0, < 3)
|
35
|
+
rainbow (3.1.1)
|
36
|
+
rake (13.0.6)
|
37
|
+
redis (5.0.6)
|
38
|
+
redis-client (>= 0.9.0)
|
39
|
+
redis-client (0.14.1)
|
40
|
+
connection_pool
|
41
|
+
regexp_parser (2.8.0)
|
42
|
+
rexml (3.2.5)
|
43
|
+
rspec (3.12.0)
|
44
|
+
rspec-core (~> 3.12.0)
|
45
|
+
rspec-expectations (~> 3.12.0)
|
46
|
+
rspec-mocks (~> 3.12.0)
|
47
|
+
rspec-core (3.12.2)
|
48
|
+
rspec-support (~> 3.12.0)
|
49
|
+
rspec-expectations (3.12.3)
|
50
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
51
|
+
rspec-support (~> 3.12.0)
|
52
|
+
rspec-mocks (3.12.5)
|
53
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
54
|
+
rspec-support (~> 3.12.0)
|
55
|
+
rspec-support (3.12.0)
|
56
|
+
rubocop (1.50.2)
|
57
|
+
json (~> 2.3)
|
58
|
+
parallel (~> 1.10)
|
59
|
+
parser (>= 3.2.0.0)
|
60
|
+
rainbow (>= 2.2.2, < 4.0)
|
61
|
+
regexp_parser (>= 1.8, < 3.0)
|
62
|
+
rexml (>= 3.2.5, < 4.0)
|
63
|
+
rubocop-ast (>= 1.28.0, < 2.0)
|
64
|
+
ruby-progressbar (~> 1.7)
|
65
|
+
unicode-display_width (>= 2.4.0, < 3.0)
|
66
|
+
rubocop-ast (1.28.0)
|
67
|
+
parser (>= 3.2.1.0)
|
68
|
+
rubocop-capybara (2.18.0)
|
69
|
+
rubocop (~> 1.41)
|
70
|
+
rubocop-performance (1.17.1)
|
71
|
+
rubocop (>= 1.7.0, < 2.0)
|
72
|
+
rubocop-ast (>= 0.4.0)
|
73
|
+
rubocop-rake (0.6.0)
|
74
|
+
rubocop (~> 1.0)
|
75
|
+
rubocop-rspec (2.20.0)
|
76
|
+
rubocop (~> 1.33)
|
77
|
+
rubocop-capybara (~> 2.17)
|
78
|
+
ruby-progressbar (1.13.0)
|
79
|
+
sidekiq (7.0.9)
|
80
|
+
concurrent-ruby (< 2)
|
81
|
+
connection_pool (>= 2.3.0)
|
82
|
+
rack (>= 2.2.4)
|
83
|
+
redis-client (>= 0.11.0)
|
84
|
+
thor (1.2.1)
|
85
|
+
timecop (0.9.6)
|
86
|
+
unicode-display_width (2.4.2)
|
87
|
+
|
88
|
+
PLATFORMS
|
89
|
+
x86_64-darwin-21
|
90
|
+
|
91
|
+
DEPENDENCIES
|
92
|
+
appraisal (~> 2.2)
|
93
|
+
bundler (~> 2.1)
|
94
|
+
pry (~> 0.14)
|
95
|
+
pry-byebug (~> 3.6)
|
96
|
+
rack-test (~> 1.1)
|
97
|
+
rake (~> 13.0)
|
98
|
+
redis (~> 5.0)
|
99
|
+
rspec (~> 3.0)
|
100
|
+
rubocop (~> 1.22)
|
101
|
+
rubocop-performance (~> 1.12)
|
102
|
+
rubocop-rake (~> 0.6)
|
103
|
+
rubocop-rspec (~> 2.6)
|
104
|
+
sidekiq (~> 7.0)
|
105
|
+
sidekiq-prometheus-exporter!
|
106
|
+
timecop (~> 0.9)
|
107
|
+
|
108
|
+
BUNDLED WITH
|
109
|
+
2.3.26
|
@@ -1,92 +1,99 @@
|
|
1
1
|
GIT
|
2
2
|
remote: https://github.com/mperham/sidekiq
|
3
|
-
revision:
|
3
|
+
revision: 1db35cc3d722c3e9d53848d699f9aa1ba097443c
|
4
4
|
specs:
|
5
|
-
sidekiq (
|
6
|
-
|
7
|
-
|
8
|
-
|
5
|
+
sidekiq (7.0.1)
|
6
|
+
concurrent-ruby (< 2)
|
7
|
+
connection_pool (>= 2.3.0)
|
8
|
+
rack (>= 2.2.4)
|
9
|
+
redis-client (>= 0.9.0)
|
9
10
|
|
10
11
|
GIT
|
11
12
|
remote: https://github.com/rack/rack
|
12
|
-
revision:
|
13
|
+
revision: 253fc5b29c240276d3cf573bdf795e6a6126b16f
|
13
14
|
specs:
|
14
15
|
rack (2.3.0)
|
16
|
+
rack-session
|
15
17
|
|
16
18
|
GIT
|
17
19
|
remote: https://github.com/redis/redis-rb
|
18
|
-
revision:
|
20
|
+
revision: 5fb64bdecacac0bc5738f194ab82cd1001071879
|
19
21
|
specs:
|
20
|
-
redis (4.
|
22
|
+
redis (4.6.0)
|
21
23
|
|
22
24
|
PATH
|
23
25
|
remote: ..
|
24
26
|
specs:
|
25
|
-
sidekiq-prometheus-exporter (0.1.
|
27
|
+
sidekiq-prometheus-exporter (0.1.17)
|
28
|
+
rack (>= 1.6.0)
|
26
29
|
sidekiq (>= 3.3.1)
|
27
30
|
|
28
31
|
GEM
|
29
32
|
remote: https://rubygems.org/
|
30
33
|
specs:
|
31
|
-
appraisal (2.
|
34
|
+
appraisal (2.4.1)
|
32
35
|
bundler
|
33
36
|
rake
|
34
37
|
thor (>= 0.14.0)
|
35
38
|
ast (2.4.2)
|
36
|
-
byebug (
|
37
|
-
coderay (1.1.
|
38
|
-
|
39
|
-
|
40
|
-
|
39
|
+
byebug (11.1.3)
|
40
|
+
coderay (1.1.3)
|
41
|
+
concurrent-ruby (1.1.10)
|
42
|
+
connection_pool (2.3.0)
|
43
|
+
diff-lcs (1.5.0)
|
44
|
+
method_source (1.0.0)
|
41
45
|
parallel (1.21.0)
|
42
|
-
parser (3.
|
46
|
+
parser (3.1.1.0)
|
43
47
|
ast (~> 2.4.1)
|
44
|
-
pry (0.
|
45
|
-
coderay (~> 1.1
|
46
|
-
method_source (~>
|
47
|
-
pry-byebug (3.
|
48
|
-
byebug (~>
|
49
|
-
pry (
|
48
|
+
pry (0.14.2)
|
49
|
+
coderay (~> 1.1)
|
50
|
+
method_source (~> 1.0)
|
51
|
+
pry-byebug (3.10.1)
|
52
|
+
byebug (~> 11.0)
|
53
|
+
pry (>= 0.13, < 0.15)
|
54
|
+
rack-session (0.1.0)
|
50
55
|
rack-test (1.1.0)
|
51
56
|
rack (>= 1.0, < 3)
|
52
|
-
rainbow (3.
|
53
|
-
rake (13.0.
|
54
|
-
|
57
|
+
rainbow (3.1.1)
|
58
|
+
rake (13.0.6)
|
59
|
+
redis-client (0.11.2)
|
60
|
+
connection_pool
|
61
|
+
regexp_parser (2.2.1)
|
55
62
|
rexml (3.2.5)
|
56
|
-
rspec (3.
|
57
|
-
rspec-core (~> 3.
|
58
|
-
rspec-expectations (~> 3.
|
59
|
-
rspec-mocks (~> 3.
|
60
|
-
rspec-core (3.
|
61
|
-
rspec-support (~> 3.
|
62
|
-
rspec-expectations (3.
|
63
|
+
rspec (3.11.0)
|
64
|
+
rspec-core (~> 3.11.0)
|
65
|
+
rspec-expectations (~> 3.11.0)
|
66
|
+
rspec-mocks (~> 3.11.0)
|
67
|
+
rspec-core (3.11.0)
|
68
|
+
rspec-support (~> 3.11.0)
|
69
|
+
rspec-expectations (3.11.0)
|
63
70
|
diff-lcs (>= 1.2.0, < 2.0)
|
64
|
-
rspec-support (~> 3.
|
65
|
-
rspec-mocks (3.
|
71
|
+
rspec-support (~> 3.11.0)
|
72
|
+
rspec-mocks (3.11.0)
|
66
73
|
diff-lcs (>= 1.2.0, < 2.0)
|
67
|
-
rspec-support (~> 3.
|
68
|
-
rspec-support (3.
|
69
|
-
rubocop (1.
|
74
|
+
rspec-support (~> 3.11.0)
|
75
|
+
rspec-support (3.11.0)
|
76
|
+
rubocop (1.26.0)
|
70
77
|
parallel (~> 1.10)
|
71
|
-
parser (>= 3.
|
78
|
+
parser (>= 3.1.0.0)
|
72
79
|
rainbow (>= 2.2.2, < 4.0)
|
73
80
|
regexp_parser (>= 1.8, < 3.0)
|
74
81
|
rexml
|
75
|
-
rubocop-ast (>= 1.
|
82
|
+
rubocop-ast (>= 1.16.0, < 2.0)
|
76
83
|
ruby-progressbar (~> 1.7)
|
77
84
|
unicode-display_width (>= 1.4.0, < 3.0)
|
78
|
-
rubocop-ast (1.
|
79
|
-
parser (>= 3.
|
80
|
-
rubocop-performance (1.
|
85
|
+
rubocop-ast (1.16.0)
|
86
|
+
parser (>= 3.1.1.0)
|
87
|
+
rubocop-performance (1.13.3)
|
81
88
|
rubocop (>= 1.7.0, < 2.0)
|
82
89
|
rubocop-ast (>= 0.4.0)
|
83
90
|
rubocop-rake (0.6.0)
|
84
91
|
rubocop (~> 1.0)
|
85
|
-
rubocop-rspec (2.
|
92
|
+
rubocop-rspec (2.9.0)
|
86
93
|
rubocop (~> 1.19)
|
87
94
|
ruby-progressbar (1.11.0)
|
88
|
-
thor (1.
|
89
|
-
timecop (0.9.
|
95
|
+
thor (1.2.1)
|
96
|
+
timecop (0.9.5)
|
90
97
|
unicode-display_width (2.1.0)
|
91
98
|
|
92
99
|
PLATFORMS
|
@@ -95,6 +102,7 @@ PLATFORMS
|
|
95
102
|
DEPENDENCIES
|
96
103
|
appraisal (~> 2.2)
|
97
104
|
bundler (~> 2.1)
|
105
|
+
pry (~> 0.14)
|
98
106
|
pry-byebug (~> 3.6)
|
99
107
|
rack (>= 2)!
|
100
108
|
rack-test (~> 1.1)
|
@@ -110,4 +118,4 @@ DEPENDENCIES
|
|
110
118
|
timecop (~> 0.9)
|
111
119
|
|
112
120
|
BUNDLED WITH
|
113
|
-
2.
|
121
|
+
2.3.26
|
@@ -51,7 +51,7 @@ $ helm install sidekiq-metrics strech/sidekiq-prometheus-exporter --set serviceA
|
|
51
51
|
| `fullnameOverride` | Override the full resource names | `nil` |
|
52
52
|
| `image.registry` | Image registry | `docker.io` |
|
53
53
|
| `image.repository` | Image repository | `strech/sidekiq-prometheus-exporter` |
|
54
|
-
| `image.tag` | Image tag | `0.1.
|
54
|
+
| `image.tag` | Image tag | `0.1.17-2` |
|
55
55
|
| `image.pullPolicy` | Image pull policy | `IfNotPresent` |
|
56
56
|
| `image.pullSecrets` | Image pull secrets | `nil` |
|
57
57
|
| `containerPort` | Port for the exporter to bind on | `9292` |
|
@@ -60,6 +60,8 @@ $ helm install sidekiq-metrics strech/sidekiq-prometheus-exporter --set serviceA
|
|
60
60
|
| `tolerations` | Toleration labels for pod assignment | `nil` |
|
61
61
|
| `affinity` | Affinity settings for pod assignment | `nil` |
|
62
62
|
| `securityContext` | Security Context for the pod | `nil` |
|
63
|
+
| `podLabels` | Pod labels additional to the default | `nil` |
|
64
|
+
| `podAnnotations` | Pod annotations | `nil` |
|
63
65
|
| `livenessProbe` | LivenessProbe settings for tcpSocket mapping to containerPort | (See `values.yaml`) |
|
64
66
|
| `readinessProbe` | ReadinessProbe settings for tcpSocket mapping to containerPort | (See `values.yaml`) |
|
65
67
|
| `service.type` | Kubernetes service type | `ClusterIP` |
|
@@ -16,6 +16,9 @@ spec:
|
|
16
16
|
labels:
|
17
17
|
app.kubernetes.io/name: {{ include "sidekiq-prometheus-exporter.name" . }}
|
18
18
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
19
|
+
{{- with .Values.podLabels }}
|
20
|
+
{{- toYaml . | nindent 8 }}
|
21
|
+
{{- end }}
|
19
22
|
{{- with .Values.podAnnotations }}
|
20
23
|
annotations:
|
21
24
|
{{- toYaml . | nindent 8 }}
|
@@ -9,7 +9,7 @@
|
|
9
9
|
image:
|
10
10
|
registry: docker.io
|
11
11
|
repository: strech/sidekiq-prometheus-exporter
|
12
|
-
tag: 0.1.
|
12
|
+
tag: 0.1.17-2
|
13
13
|
## Specify a imagePullPolicy
|
14
14
|
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
|
15
15
|
## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images
|
@@ -97,6 +97,10 @@ containerPort: 9292
|
|
97
97
|
# securityContext:
|
98
98
|
# runAsUser: 65534
|
99
99
|
|
100
|
+
## Metrics exporter pod Labels
|
101
|
+
##
|
102
|
+
# podLabels:
|
103
|
+
|
100
104
|
## Metrics exporter pod Annotations
|
101
105
|
##
|
102
106
|
# podAnnotations:
|
@@ -11,7 +11,7 @@ module Sidekiq
|
|
11
11
|
|
12
12
|
QueueStats = Struct.new(:name, :size, :latency)
|
13
13
|
QueueWorkersStats = Struct.new(:total_workers, :busy_workers, :processes)
|
14
|
-
WorkersStats = Struct.new(:total_workers, :by_queue)
|
14
|
+
WorkersStats = Struct.new(:total_workers, :by_queue, :by_host)
|
15
15
|
|
16
16
|
def self.available?
|
17
17
|
true
|
@@ -37,11 +37,14 @@ module Sidekiq
|
|
37
37
|
end
|
38
38
|
|
39
39
|
def workers_stats
|
40
|
-
workers_stats = WorkersStats.new(0, {})
|
40
|
+
workers_stats = WorkersStats.new(0, {}, {})
|
41
41
|
|
42
42
|
Sidekiq::ProcessSet.new.each_with_object(workers_stats) do |process, stats|
|
43
43
|
stats.total_workers += process['concurrency'].to_i
|
44
44
|
|
45
|
+
stats.by_host[process['hostname']] ||= Hash.new(0)
|
46
|
+
stats.by_host[process['hostname']][process['quiet']] += 1
|
47
|
+
|
45
48
|
process['queues'].each do |queue|
|
46
49
|
stats.by_queue[queue] ||= QueueWorkersStats.new(0, 0, 0)
|
47
50
|
stats.by_queue[queue].processes += 1
|
@@ -14,6 +14,10 @@ sidekiq_workers <%= format('%d', @workers_stats.total_workers) %>
|
|
14
14
|
# TYPE sidekiq_processes gauge
|
15
15
|
sidekiq_processes <%= format('%d', @overview_stats.processes_size) %>
|
16
16
|
|
17
|
+
# HELP sidekiq_host_processes The number of processes running on the host.
|
18
|
+
# TYPE sidekiq_host_processes gauge
|
19
|
+
<% @workers_stats.by_host.each do |host, stats| %><% stats.each do |quiet, count| %>sidekiq_host_processes{host="<%= host %>",quiet="<%= quiet %>"} <%= format('%i', count) %>
|
20
|
+
<% end %><% end %>
|
17
21
|
# HELP sidekiq_busy_workers The number of workers performing the job.
|
18
22
|
# TYPE sidekiq_busy_workers gauge
|
19
23
|
sidekiq_busy_workers <%= format('%d', @overview_stats.workers_size) %>
|
@@ -3,7 +3,10 @@
|
|
3
3
|
module Sidekiq
|
4
4
|
module Prometheus
|
5
5
|
module Exporter
|
6
|
-
|
6
|
+
# NOTE: Every version update dropds Docker patch version to 0
|
7
|
+
# and every adjustment in Docker setup bumps it to +1
|
8
|
+
VERSION = '0.2.0'.freeze
|
9
|
+
DOCKER_PATCH_VERSION = '0'.freeze
|
7
10
|
end
|
8
11
|
end
|
9
12
|
end
|
@@ -12,7 +12,7 @@ module Sidekiq
|
|
12
12
|
NOT_FOUND_TEXT = 'Not Found'.freeze
|
13
13
|
MOUNT_PATH = '/metrics'.freeze
|
14
14
|
# rubocop:disable Style/MutableConstant
|
15
|
-
HEADERS = {
|
15
|
+
HEADERS = {Rack::CONTENT_TYPE => 'text/plain; version=0.0.4', Rack::CACHE_CONTROL => 'no-cache'}
|
16
16
|
# rubocop:enable Style/MutableConstant
|
17
17
|
EXPORTERS = Exporters.new
|
18
18
|
|
@@ -16,6 +16,7 @@ Gem::Specification.new do |spec|
|
|
16
16
|
|
17
17
|
if spec.respond_to?(:metadata)
|
18
18
|
spec.metadata['allowed_push_host'] = 'https://rubygems.org'
|
19
|
+
spec.metadata['rubygems_mfa_required'] = 'true'
|
19
20
|
else
|
20
21
|
raise 'RubyGems 2.0 or newer is required to protect against ' \
|
21
22
|
'public gem pushes.'
|
@@ -29,10 +30,12 @@ Gem::Specification.new do |spec|
|
|
29
30
|
spec.require_paths = %w(lib)
|
30
31
|
|
31
32
|
spec.required_ruby_version = '>= 2.3'
|
32
|
-
spec.add_dependency '
|
33
|
+
spec.add_dependency 'rack', '>= 1.6.0'
|
34
|
+
spec.add_dependency 'sidekiq', '>= 4.1.0'
|
33
35
|
|
34
36
|
spec.add_development_dependency 'appraisal', '~> 2.2'
|
35
37
|
spec.add_development_dependency 'bundler', '~> 2.1'
|
38
|
+
spec.add_development_dependency 'pry', '~> 0.14'
|
36
39
|
spec.add_development_dependency 'pry-byebug', '~> 3.6'
|
37
40
|
spec.add_development_dependency 'rack-test', '~> 1.1'
|
38
41
|
spec.add_development_dependency 'rake', '~> 13.0'
|
metadata
CHANGED
@@ -1,29 +1,43 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sidekiq-prometheus-exporter
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sergey Fedorov
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-04-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: rack
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: 1.6.0
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ">="
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: 1.6.0
|
13
27
|
- !ruby/object:Gem::Dependency
|
14
28
|
name: sidekiq
|
15
29
|
requirement: !ruby/object:Gem::Requirement
|
16
30
|
requirements:
|
17
31
|
- - ">="
|
18
32
|
- !ruby/object:Gem::Version
|
19
|
-
version:
|
33
|
+
version: 4.1.0
|
20
34
|
type: :runtime
|
21
35
|
prerelease: false
|
22
36
|
version_requirements: !ruby/object:Gem::Requirement
|
23
37
|
requirements:
|
24
38
|
- - ">="
|
25
39
|
- !ruby/object:Gem::Version
|
26
|
-
version:
|
40
|
+
version: 4.1.0
|
27
41
|
- !ruby/object:Gem::Dependency
|
28
42
|
name: appraisal
|
29
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -52,6 +66,20 @@ dependencies:
|
|
52
66
|
- - "~>"
|
53
67
|
- !ruby/object:Gem::Version
|
54
68
|
version: '2.1'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: pry
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - "~>"
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0.14'
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - "~>"
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '0.14'
|
55
83
|
- !ruby/object:Gem::Dependency
|
56
84
|
name: pry-byebug
|
57
85
|
requirement: !ruby/object:Gem::Requirement
|
@@ -210,16 +238,16 @@ files:
|
|
210
238
|
- examples/sidekiq/Dockerfile
|
211
239
|
- examples/sidekiq/sidekiq.rb
|
212
240
|
- examples/sidekiq/sidekiq.yml
|
213
|
-
- gemfiles/
|
214
|
-
- gemfiles/
|
215
|
-
- gemfiles/sidekiq_3.x.Gemfile
|
216
|
-
- gemfiles/sidekiq_3.x.Gemfile.lock
|
241
|
+
- gemfiles/sidekiq_4.1.0.Gemfile
|
242
|
+
- gemfiles/sidekiq_4.1.0.Gemfile.lock
|
217
243
|
- gemfiles/sidekiq_4.x.Gemfile
|
218
244
|
- gemfiles/sidekiq_4.x.Gemfile.lock
|
219
245
|
- gemfiles/sidekiq_5.x.Gemfile
|
220
246
|
- gemfiles/sidekiq_5.x.Gemfile.lock
|
221
247
|
- gemfiles/sidekiq_6.x.Gemfile
|
222
248
|
- gemfiles/sidekiq_6.x.Gemfile.lock
|
249
|
+
- gemfiles/sidekiq_7.x.Gemfile
|
250
|
+
- gemfiles/sidekiq_7.x.Gemfile.lock
|
223
251
|
- gemfiles/sidekiq_latest.Gemfile
|
224
252
|
- gemfiles/sidekiq_latest.Gemfile.lock
|
225
253
|
- helm/sidekiq-prometheus-exporter/.helmignore
|
@@ -248,6 +276,7 @@ homepage: https://github.com/Strech/sidekiq-prometheus-exporter
|
|
248
276
|
licenses: []
|
249
277
|
metadata:
|
250
278
|
allowed_push_host: https://rubygems.org
|
279
|
+
rubygems_mfa_required: 'true'
|
251
280
|
post_install_message:
|
252
281
|
rdoc_options: []
|
253
282
|
require_paths:
|
@@ -263,7 +292,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
263
292
|
- !ruby/object:Gem::Version
|
264
293
|
version: '0'
|
265
294
|
requirements: []
|
266
|
-
rubygems_version: 3.
|
295
|
+
rubygems_version: 3.1.6
|
267
296
|
signing_key:
|
268
297
|
specification_version: 4
|
269
298
|
summary: Prometheus exporter for the Sidekiq
|