sidekiq_prometheus 1.7.0 → 1.8.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +42 -1
- data/README.md +4 -8
- data/lib/sidekiq_prometheus/job_metrics.rb +7 -2
- data/lib/sidekiq_prometheus/metrics.rb +4 -0
- data/lib/sidekiq_prometheus/periodic_metrics.rb +5 -1
- data/lib/sidekiq_prometheus/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 99f2c02a2ecdac71a05de9212319cc8efafb5e15d39d1a46d9dcd60d32ff847d
|
4
|
+
data.tar.gz: b43c963a8c63ca92ad695a8a5ef191701a2486772aaea24ad333ad6aacf66363
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 74a9dda61a073d84576614a107966b9e6f714896b1925b1a2983f8f5ff64d2fa4f19007b47eaa6926f9f8a76cd0162a4c95dc11e97b11b9d40d9804ed6765d69
|
7
|
+
data.tar.gz: d7d1784f6aa693eb0e96613d2f0af6ee49d26e11f6d061c61dc7c75e73c12760fbc95b4e526c6b8d017083a7a5c518b79fa0c339266c60d9e2c6611a702bd641
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,33 @@
|
|
1
1
|
CHANGELOG
|
2
2
|
|
3
|
+
<a name="v1.8.0"></a>
|
4
|
+
## [v1.8.0](https://github.com/fastly/sidekiq-prometheus/compare/v1.7.0...v1.8.0) (2022-10-04)
|
5
|
+
|
6
|
+
### Features
|
7
|
+
|
8
|
+
* handle rate limiting exceptions distinctly from other exceptions ([#28](https://github.com/fastly/sidekiq-prometheus/issues/28))
|
9
|
+
|
10
|
+
### Pull Requests
|
11
|
+
|
12
|
+
* Merge pull request [#27](https://github.com/fastly/sidekiq-prometheus/issues/27) from pinkahd/patch-1
|
13
|
+
|
14
|
+
|
15
|
+
<a name="v1.7.0"></a>
|
16
|
+
## [v1.7.0](https://github.com/fastly/sidekiq-prometheus/compare/v1.6.0...v1.7.0) (2022-09-29)
|
17
|
+
|
18
|
+
### Bug Fixes
|
19
|
+
|
20
|
+
* s/metrics_server_logging_enabled/metrics_server_logger_enabled/
|
21
|
+
|
22
|
+
### Features
|
23
|
+
|
24
|
+
* add Sidekiq::Stats processes_size to the periodic metrics
|
25
|
+
|
26
|
+
### Pull Requests
|
27
|
+
|
28
|
+
* Merge pull request [#30](https://github.com/fastly/sidekiq-prometheus/issues/30) from fastly/add_processes_size
|
29
|
+
|
30
|
+
|
3
31
|
<a name="v1.6.0"></a>
|
4
32
|
## [v1.6.0](https://github.com/fastly/sidekiq-prometheus/compare/v1.5.0...v1.6.0) (2021-08-03)
|
5
33
|
|
@@ -46,8 +74,9 @@ CHANGELOG
|
|
46
74
|
|
47
75
|
### Pull Requests
|
48
76
|
|
49
|
-
* Merge pull request [#
|
77
|
+
* Merge pull request [#18](https://github.com/fastly/sidekiq-prometheus/issues/18) from jetpks/release-120
|
50
78
|
* Merge pull request [#15](https://github.com/fastly/sidekiq-prometheus/issues/15) from silicakes/master
|
79
|
+
* Merge pull request [#17](https://github.com/fastly/sidekiq-prometheus/issues/17) from jetpks/add-option-to-disable-metrics-server
|
51
80
|
|
52
81
|
<a name="v1.1.0"></a>
|
53
82
|
## [v1.1.0](https://github.com/fastly/sidekiq-prometheus/compare/v1.0.1...v1.1.0) (2020-02-12)
|
@@ -63,6 +92,14 @@ CHANGELOG
|
|
63
92
|
* Merge pull request [#11](https://github.com/fastly/sidekiq-prometheus/issues/11) from rossjones/patch-1
|
64
93
|
* Merge pull request [#12](https://github.com/fastly/sidekiq-prometheus/issues/12) from fastly/hr
|
65
94
|
|
95
|
+
<a name="v1.0.1"></a>
|
96
|
+
## [v1.0.1](https://github.com/fastly/sidekiq-prometheus/compare/v0.9.2...v1.0.1) (2019-10-30)
|
97
|
+
|
98
|
+
### Pull Requests
|
99
|
+
|
100
|
+
* Merge pull request [#9](https://github.com/fastly/sidekiq-prometheus/issues/9) from we4tech/features/update-prometheus-client
|
101
|
+
|
102
|
+
|
66
103
|
<a name="v1.0.0"></a>
|
67
104
|
## [v1.0.0](https://github.com/fastly/sidekiq-prometheus/compare/v0.9.1...v1.0.0) (2019-10-24)
|
68
105
|
|
@@ -71,6 +108,10 @@ CHANGELOG
|
|
71
108
|
* Merge pull request [#9](https://github.com/fastly/sidekiq-prometheus/issues/9) from we4tech/features/update-prometheus-client
|
72
109
|
|
73
110
|
|
111
|
+
<a name="v0.9.2"></a>
|
112
|
+
## [v0.9.2](https://github.com/fastly/sidekiq-prometheus/compare/v1.0.0...v0.9.2) (2019-10-30)
|
113
|
+
|
114
|
+
|
74
115
|
<a name="v0.9.1"></a>
|
75
116
|
## [v0.9.1](https://github.com/fastly/sidekiq-prometheus/compare/v0.9.0...v0.9.1) (2019-07-08)
|
76
117
|
|
data/README.md
CHANGED
@@ -75,8 +75,8 @@ end
|
|
75
75
|
|
76
76
|
#### Configuration options
|
77
77
|
|
78
|
-
* `preset_labels`: Hash of labels that will be included with every metric when they are registered.
|
79
|
-
* `custom_labels`:
|
78
|
+
* `preset_labels`: Hash of labels that will be included with every metric when they are registered. `Hash{Symbol (label name) => String (label value)}`
|
79
|
+
* `custom_labels`: Hash of metrics and labels that can be applied to specific metrics. The metric name must be a registered metric. `Hash{Symbol (metric name) => Array<Symbol> (label names)}`
|
80
80
|
* `gc_metrics_enabled`: Boolean that determines whether to record object allocation metrics per job. The default is `true`. Setting this to `false` if you don't need this metric.
|
81
81
|
* `global_metrics_enabled`: Boolean that determines whether to report global metrics from the PeriodicMetrics reporter. When `true` this will report on a number of stats from the Sidekiq API for the cluster. This requires Sidekiq::Enterprise as the reporter uses the leader election functionality to ensure that only one worker per cluster is reporting metrics.
|
82
82
|
* `periodic_metrics_enabled`: Boolean that determines whether to run the periodic metrics reporter. `PeriodicMetrics` runs a separate thread that reports on global metrics (if enabled) as well worker GC stats (if enabled). It reports metrics on the interval defined by `periodic_reporting_interval`. Defaults to `true`.
|
@@ -91,7 +91,7 @@ end
|
|
91
91
|
```ruby
|
92
92
|
SidekiqPrometheus.configure do |config|
|
93
93
|
config.preset_labels = { service: 'myapp' }
|
94
|
-
config.custom_labels = [:worker_class, :job_type, :any_other_label]
|
94
|
+
config.custom_labels = { sidekiq_job_count: [:worker_class, :job_type, :any_other_label] }
|
95
95
|
config.gc_metrics_enabled = false
|
96
96
|
config.global_metrics_enabled = true
|
97
97
|
config.periodic_metrics_enabled = true
|
@@ -254,11 +254,7 @@ To install this gem onto your local machine, run `bundle exec rake install`.
|
|
254
254
|
|
255
255
|
## Contributors
|
256
256
|
|
257
|
-
|
258
|
-
* NHM Tanveer Hossain Khan ([@we4tech](https://github.com/we4tech))
|
259
|
-
* [@Postmodern](https://github.com/postmodern)
|
260
|
-
* Ross Jones ([@rossjones](https://github.com/rossjones))
|
261
|
-
* Alejandro Arrufat ([@mirubiri](https://github.com/mirubiri))
|
257
|
+
See: https://github.com/fastly/sidekiq-prometheus/graphs/contributors
|
262
258
|
|
263
259
|
## Contributing
|
264
260
|
|
@@ -30,8 +30,13 @@ class SidekiqPrometheus::JobMetrics
|
|
30
30
|
|
31
31
|
result
|
32
32
|
rescue StandardError => e
|
33
|
-
|
34
|
-
|
33
|
+
if e.class.to_s == 'Sidekiq::Limiter::OverLimit'
|
34
|
+
registry[:sidekiq_job_over_limit].increment(labels: labels)
|
35
|
+
else
|
36
|
+
err_label = { :error_class => e.class.to_s }
|
37
|
+
registry[:sidekiq_job_failed].increment(labels: err_label.merge(labels))
|
38
|
+
end
|
39
|
+
|
35
40
|
raise e
|
36
41
|
ensure
|
37
42
|
registry[:sidekiq_job_count].increment(labels: labels)
|
@@ -72,6 +72,10 @@ module SidekiqPrometheus::Metrics
|
|
72
72
|
type: :counter,
|
73
73
|
docstring: 'Count of successful Sidekiq jobs',
|
74
74
|
labels: JOB_LABELS, },
|
75
|
+
{ name: :sidekiq_job_over_limit,
|
76
|
+
type: :counter,
|
77
|
+
docstring: 'Count of over limit Sidekiq jobs',
|
78
|
+
labels: JOB_LABELS, },
|
75
79
|
].freeze
|
76
80
|
SIDEKIQ_GC_METRIC = {
|
77
81
|
name: :sidekiq_job_allocated_objects,
|
@@ -44,7 +44,11 @@ class SidekiqPrometheus::PeriodicMetrics
|
|
44
44
|
@sidekiq_queue = sidekiq_queue
|
45
45
|
@senate = if senate.nil?
|
46
46
|
if Object.const_defined?('Sidekiq::Senate')
|
47
|
-
Sidekiq::Senate
|
47
|
+
if Sidekiq::Senate.respond_to?(:leader?)
|
48
|
+
Sidekiq::Senate
|
49
|
+
else
|
50
|
+
Sidekiq::Senate.new(Sidekiq)
|
51
|
+
end
|
48
52
|
else
|
49
53
|
Senate
|
50
54
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sidekiq_prometheus
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.8.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Lukas Eklund
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: exe
|
11
11
|
cert_chain: []
|
12
|
-
date: 2022-
|
12
|
+
date: 2022-10-18 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: bundler
|