sidekiq-prometheus-exporter 0.1.13 → 0.1.14

Sign up to get free protection for your applications and to get access to all the features.
Files changed (33) hide show
  1. checksums.yaml +4 -4
  2. data/.github/FUNDING.yml +12 -0
  3. data/.rubocop.yml +28 -28
  4. data/.travis.yml +23 -10
  5. data/README.md +93 -49
  6. data/Rakefile +73 -0
  7. data/docker/Dockerfile +24 -0
  8. data/docker/README.md +55 -0
  9. data/docker/config.ru +38 -0
  10. data/examples/docker-compose.yml +1 -1
  11. data/examples/{sidekiq.json → sidekiq-dashboard.grafana-6.json} +10 -52
  12. data/examples/sidekiq-dashboard.grafana-7.json +845 -0
  13. data/gemfiles/sidekiq_3.3.1.gemfile.lock +8 -6
  14. data/gemfiles/sidekiq_3.x.gemfile.lock +8 -6
  15. data/gemfiles/sidekiq_4.x.gemfile.lock +8 -6
  16. data/gemfiles/sidekiq_5.x.gemfile.lock +9 -7
  17. data/gemfiles/sidekiq_6.x.gemfile.lock +9 -7
  18. data/gemfiles/sidekiq_head.gemfile.lock +5 -5
  19. data/helm/sidekiq-prometheus-exporter/.helmignore +22 -0
  20. data/helm/sidekiq-prometheus-exporter/Chart.yaml +6 -0
  21. data/helm/sidekiq-prometheus-exporter/README.md +87 -0
  22. data/helm/sidekiq-prometheus-exporter/templates/NOTES.txt +15 -0
  23. data/helm/sidekiq-prometheus-exporter/templates/_helpers.tpl +109 -0
  24. data/helm/sidekiq-prometheus-exporter/templates/clusterrole.yaml +20 -0
  25. data/helm/sidekiq-prometheus-exporter/templates/clusterrolebinding.yaml +17 -0
  26. data/helm/sidekiq-prometheus-exporter/templates/deployment.yaml +62 -0
  27. data/helm/sidekiq-prometheus-exporter/templates/service.yaml +17 -0
  28. data/helm/sidekiq-prometheus-exporter/templates/serviceaccount.yaml +9 -0
  29. data/helm/sidekiq-prometheus-exporter/templates/servicemonitor.yaml +26 -0
  30. data/helm/sidekiq-prometheus-exporter/values.yaml +133 -0
  31. data/lib/sidekiq/prometheus/exporter/version.rb +1 -1
  32. data/sidekiq-prometheus-exporter.gemspec +1 -1
  33. metadata +25 -8
@@ -33,7 +33,7 @@ GEM
33
33
  codeclimate-test-reporter (1.0.9)
34
34
  simplecov (<= 0.13)
35
35
  coderay (1.1.2)
36
- concurrent-ruby (1.1.5)
36
+ concurrent-ruby (1.1.6)
37
37
  connection_pool (2.2.2)
38
38
  diff-lcs (1.3)
39
39
  docile (1.1.5)
@@ -43,7 +43,7 @@ GEM
43
43
  mustermann (1.1.1)
44
44
  ruby2_keywords (~> 0.0.1)
45
45
  parallel (1.19.1)
46
- parser (2.7.0.2)
46
+ parser (2.7.0.4)
47
47
  ast (~> 2.4.0)
48
48
  pry (0.12.2)
49
49
  coderay (~> 1.1.0)
@@ -51,16 +51,17 @@ GEM
51
51
  pry-byebug (3.6.0)
52
52
  byebug (~> 10.0)
53
53
  pry (~> 0.10)
54
- rack (2.1.2)
54
+ rack (2.2.2)
55
55
  rack-protection (2.0.8.1)
56
56
  rack
57
57
  rack-test (1.1.0)
58
58
  rack (>= 1.0, < 3)
59
59
  rainbow (3.0.0)
60
- rake (10.5.0)
60
+ rake (13.0.1)
61
61
  redis (3.3.5)
62
62
  redis-namespace (1.6.0)
63
63
  redis (>= 3.0.4)
64
+ rexml (3.2.4)
64
65
  rspec (3.9.0)
65
66
  rspec-core (~> 3.9.0)
66
67
  rspec-expectations (~> 3.9.0)
@@ -74,11 +75,12 @@ GEM
74
75
  diff-lcs (>= 1.2.0, < 2.0)
75
76
  rspec-support (~> 3.9.0)
76
77
  rspec-support (3.9.2)
77
- rubocop (0.79.0)
78
+ rubocop (0.80.1)
78
79
  jaro_winkler (~> 1.5.1)
79
80
  parallel (~> 1.10)
80
81
  parser (>= 2.7.0.1)
81
82
  rainbow (>= 2.2.2, < 4.0)
83
+ rexml
82
84
  ruby-progressbar (~> 1.7)
83
85
  unicode-display_width (>= 1.4.0, < 1.7)
84
86
  rubocop-rspec (1.28.0)
@@ -121,7 +123,7 @@ DEPENDENCIES
121
123
  concurrent-ruby
122
124
  pry-byebug (~> 3.6.0)
123
125
  rack-test (~> 1.1)
124
- rake (~> 10.0)
126
+ rake (~> 13.0)
125
127
  redis (~> 3.3)
126
128
  redis-namespace (< 1.7.0)
127
129
  rspec (~> 3.0)
@@ -33,7 +33,7 @@ GEM
33
33
  codeclimate-test-reporter (1.0.9)
34
34
  simplecov (<= 0.13)
35
35
  coderay (1.1.2)
36
- concurrent-ruby (1.1.5)
36
+ concurrent-ruby (1.1.6)
37
37
  connection_pool (2.2.2)
38
38
  diff-lcs (1.3)
39
39
  docile (1.1.5)
@@ -43,7 +43,7 @@ GEM
43
43
  mustermann (1.1.1)
44
44
  ruby2_keywords (~> 0.0.1)
45
45
  parallel (1.19.1)
46
- parser (2.7.0.2)
46
+ parser (2.7.0.4)
47
47
  ast (~> 2.4.0)
48
48
  pry (0.12.2)
49
49
  coderay (~> 1.1.0)
@@ -51,16 +51,17 @@ GEM
51
51
  pry-byebug (3.6.0)
52
52
  byebug (~> 10.0)
53
53
  pry (~> 0.10)
54
- rack (2.1.2)
54
+ rack (2.2.2)
55
55
  rack-protection (2.0.8.1)
56
56
  rack
57
57
  rack-test (1.1.0)
58
58
  rack (>= 1.0, < 3)
59
59
  rainbow (3.0.0)
60
- rake (10.5.0)
60
+ rake (13.0.1)
61
61
  redis (3.3.5)
62
62
  redis-namespace (1.6.0)
63
63
  redis (>= 3.0.4)
64
+ rexml (3.2.4)
64
65
  rspec (3.9.0)
65
66
  rspec-core (~> 3.9.0)
66
67
  rspec-expectations (~> 3.9.0)
@@ -74,11 +75,12 @@ GEM
74
75
  diff-lcs (>= 1.2.0, < 2.0)
75
76
  rspec-support (~> 3.9.0)
76
77
  rspec-support (3.9.2)
77
- rubocop (0.79.0)
78
+ rubocop (0.80.1)
78
79
  jaro_winkler (~> 1.5.1)
79
80
  parallel (~> 1.10)
80
81
  parser (>= 2.7.0.1)
81
82
  rainbow (>= 2.2.2, < 4.0)
83
+ rexml
82
84
  ruby-progressbar (~> 1.7)
83
85
  unicode-display_width (>= 1.4.0, < 1.7)
84
86
  rubocop-rspec (1.28.0)
@@ -121,7 +123,7 @@ DEPENDENCIES
121
123
  concurrent-ruby
122
124
  pry-byebug (~> 3.6.0)
123
125
  rack-test (~> 1.1)
124
- rake (~> 10.0)
126
+ rake (~> 13.0)
125
127
  redis (~> 3.3)
126
128
  redis-namespace (< 1.7.0)
127
129
  rspec (~> 3.0)
@@ -16,7 +16,7 @@ GEM
16
16
  codeclimate-test-reporter (1.0.9)
17
17
  simplecov (<= 0.13)
18
18
  coderay (1.1.2)
19
- concurrent-ruby (1.1.5)
19
+ concurrent-ruby (1.1.6)
20
20
  connection_pool (2.2.2)
21
21
  diff-lcs (1.3)
22
22
  docile (1.1.5)
@@ -24,7 +24,7 @@ GEM
24
24
  json (2.3.0)
25
25
  method_source (0.9.2)
26
26
  parallel (1.19.1)
27
- parser (2.7.0.2)
27
+ parser (2.7.0.4)
28
28
  ast (~> 2.4.0)
29
29
  pry (0.12.2)
30
30
  coderay (~> 1.1.0)
@@ -32,14 +32,15 @@ GEM
32
32
  pry-byebug (3.6.0)
33
33
  byebug (~> 10.0)
34
34
  pry (~> 0.10)
35
- rack (2.1.2)
35
+ rack (2.2.2)
36
36
  rack-protection (2.0.8.1)
37
37
  rack
38
38
  rack-test (1.1.0)
39
39
  rack (>= 1.0, < 3)
40
40
  rainbow (3.0.0)
41
- rake (10.5.0)
41
+ rake (13.0.1)
42
42
  redis (3.3.5)
43
+ rexml (3.2.4)
43
44
  rspec (3.9.0)
44
45
  rspec-core (~> 3.9.0)
45
46
  rspec-expectations (~> 3.9.0)
@@ -53,11 +54,12 @@ GEM
53
54
  diff-lcs (>= 1.2.0, < 2.0)
54
55
  rspec-support (~> 3.9.0)
55
56
  rspec-support (3.9.2)
56
- rubocop (0.79.0)
57
+ rubocop (0.80.1)
57
58
  jaro_winkler (~> 1.5.1)
58
59
  parallel (~> 1.10)
59
60
  parser (>= 2.7.0.1)
60
61
  rainbow (>= 2.2.2, < 4.0)
62
+ rexml
61
63
  ruby-progressbar (~> 1.7)
62
64
  unicode-display_width (>= 1.4.0, < 1.7)
63
65
  rubocop-rspec (1.28.0)
@@ -86,7 +88,7 @@ DEPENDENCIES
86
88
  codeclimate-test-reporter (~> 1.0)
87
89
  pry-byebug (~> 3.6.0)
88
90
  rack-test (~> 1.1)
89
- rake (~> 10.0)
91
+ rake (~> 13.0)
90
92
  redis (~> 3.3)
91
93
  rspec (~> 3.0)
92
94
  rubocop (~> 0.58)
@@ -23,7 +23,7 @@ GEM
23
23
  json (2.3.0)
24
24
  method_source (0.9.2)
25
25
  parallel (1.19.1)
26
- parser (2.7.0.2)
26
+ parser (2.7.0.4)
27
27
  ast (~> 2.4.0)
28
28
  pry (0.12.2)
29
29
  coderay (~> 1.1.0)
@@ -31,14 +31,15 @@ GEM
31
31
  pry-byebug (3.6.0)
32
32
  byebug (~> 10.0)
33
33
  pry (~> 0.10)
34
- rack (2.1.2)
34
+ rack (2.0.9)
35
35
  rack-protection (2.0.8.1)
36
36
  rack
37
37
  rack-test (1.1.0)
38
38
  rack (>= 1.0, < 3)
39
39
  rainbow (3.0.0)
40
- rake (10.5.0)
40
+ rake (13.0.1)
41
41
  redis (3.3.5)
42
+ rexml (3.2.4)
42
43
  rspec (3.9.0)
43
44
  rspec-core (~> 3.9.0)
44
45
  rspec-expectations (~> 3.9.0)
@@ -52,19 +53,20 @@ GEM
52
53
  diff-lcs (>= 1.2.0, < 2.0)
53
54
  rspec-support (~> 3.9.0)
54
55
  rspec-support (3.9.2)
55
- rubocop (0.79.0)
56
+ rubocop (0.80.1)
56
57
  jaro_winkler (~> 1.5.1)
57
58
  parallel (~> 1.10)
58
59
  parser (>= 2.7.0.1)
59
60
  rainbow (>= 2.2.2, < 4.0)
61
+ rexml
60
62
  ruby-progressbar (~> 1.7)
61
63
  unicode-display_width (>= 1.4.0, < 1.7)
62
64
  rubocop-rspec (1.28.0)
63
65
  rubocop (>= 0.58.0)
64
66
  ruby-progressbar (1.10.1)
65
- sidekiq (5.2.7)
67
+ sidekiq (5.2.8)
66
68
  connection_pool (~> 2.2, >= 2.2.2)
67
- rack (>= 1.5.0)
69
+ rack (< 2.1.0)
68
70
  rack-protection (>= 1.5.0)
69
71
  redis (>= 3.3.5, < 5)
70
72
  simplecov (0.13.0)
@@ -85,7 +87,7 @@ DEPENDENCIES
85
87
  codeclimate-test-reporter (~> 1.0)
86
88
  pry-byebug (~> 3.6.0)
87
89
  rack-test (~> 1.1)
88
- rake (~> 10.0)
90
+ rake (~> 13.0)
89
91
  redis (~> 3.3)
90
92
  rspec (~> 3.0)
91
93
  rubocop (~> 0.58)
@@ -23,7 +23,7 @@ GEM
23
23
  json (2.3.0)
24
24
  method_source (0.9.2)
25
25
  parallel (1.19.1)
26
- parser (2.7.0.2)
26
+ parser (2.7.0.4)
27
27
  ast (~> 2.4.0)
28
28
  pry (0.12.2)
29
29
  coderay (~> 1.1.0)
@@ -31,14 +31,15 @@ GEM
31
31
  pry-byebug (3.6.0)
32
32
  byebug (~> 10.0)
33
33
  pry (~> 0.10)
34
- rack (2.1.2)
34
+ rack (2.2.2)
35
35
  rack-protection (2.0.8.1)
36
36
  rack
37
37
  rack-test (1.1.0)
38
38
  rack (>= 1.0, < 3)
39
39
  rainbow (3.0.0)
40
- rake (10.5.0)
40
+ rake (13.0.1)
41
41
  redis (4.1.3)
42
+ rexml (3.2.4)
42
43
  rspec (3.9.0)
43
44
  rspec-core (~> 3.9.0)
44
45
  rspec-expectations (~> 3.9.0)
@@ -52,19 +53,20 @@ GEM
52
53
  diff-lcs (>= 1.2.0, < 2.0)
53
54
  rspec-support (~> 3.9.0)
54
55
  rspec-support (3.9.2)
55
- rubocop (0.79.0)
56
+ rubocop (0.80.1)
56
57
  jaro_winkler (~> 1.5.1)
57
58
  parallel (~> 1.10)
58
59
  parser (>= 2.7.0.1)
59
60
  rainbow (>= 2.2.2, < 4.0)
61
+ rexml
60
62
  ruby-progressbar (~> 1.7)
61
63
  unicode-display_width (>= 1.4.0, < 1.7)
62
64
  rubocop-rspec (1.28.0)
63
65
  rubocop (>= 0.58.0)
64
66
  ruby-progressbar (1.10.1)
65
- sidekiq (6.0.4)
67
+ sidekiq (6.0.5)
66
68
  connection_pool (>= 2.2.2)
67
- rack (>= 2.0.0)
69
+ rack (~> 2.0)
68
70
  rack-protection (>= 2.0.0)
69
71
  redis (>= 4.1.0)
70
72
  simplecov (0.13.0)
@@ -85,7 +87,7 @@ DEPENDENCIES
85
87
  codeclimate-test-reporter (~> 1.0)
86
88
  pry-byebug (~> 3.6.0)
87
89
  rack-test (~> 1.1)
88
- rake (~> 10.0)
90
+ rake (~> 13.0)
89
91
  redis (~> 4.1)
90
92
  rspec (~> 3.0)
91
93
  rubocop (~> 0.58)
@@ -1,6 +1,6 @@
1
1
  GIT
2
2
  remote: https://github.com/mperham/sidekiq
3
- revision: 18b36dcb22163a64cf3910b1a976804675948c03
3
+ revision: 6e6d41500aafb37f23e4c7942ae9bb1ed1579b73
4
4
  specs:
5
5
  sidekiq (6.0.6)
6
6
  connection_pool (>= 2.2.2)
@@ -45,7 +45,7 @@ GEM
45
45
  json (2.3.0)
46
46
  method_source (0.9.2)
47
47
  parallel (1.19.1)
48
- parser (2.7.0.3)
48
+ parser (2.7.0.4)
49
49
  ast (~> 2.4.0)
50
50
  pry (0.12.2)
51
51
  coderay (~> 1.1.0)
@@ -58,7 +58,7 @@ GEM
58
58
  rack-test (1.1.0)
59
59
  rack (>= 1.0, < 3)
60
60
  rainbow (3.0.0)
61
- rake (10.5.0)
61
+ rake (13.0.1)
62
62
  rexml (3.2.4)
63
63
  rspec (3.9.0)
64
64
  rspec-core (~> 3.9.0)
@@ -73,7 +73,7 @@ GEM
73
73
  diff-lcs (>= 1.2.0, < 2.0)
74
74
  rspec-support (~> 3.9.0)
75
75
  rspec-support (3.9.2)
76
- rubocop (0.80.0)
76
+ rubocop (0.80.1)
77
77
  jaro_winkler (~> 1.5.1)
78
78
  parallel (~> 1.10)
79
79
  parser (>= 2.7.0.1)
@@ -103,7 +103,7 @@ DEPENDENCIES
103
103
  pry-byebug (~> 3.6.0)
104
104
  rack (>= 2)!
105
105
  rack-test (~> 1.1)
106
- rake (~> 10.0)
106
+ rake (~> 13.0)
107
107
  redis (>= 4)!
108
108
  rspec (~> 3.0)
109
109
  rubocop (~> 0.58)
@@ -0,0 +1,22 @@
1
+ # Patterns to ignore when building packages.
2
+ # This supports shell glob matching, relative path matching, and
3
+ # negation (prefixed with !). Only one pattern per line.
4
+ .DS_Store
5
+ # Common VCS dirs
6
+ .git/
7
+ .gitignore
8
+ .bzr/
9
+ .bzrignore
10
+ .hg/
11
+ .hgignore
12
+ .svn/
13
+ # Common backup files
14
+ *.swp
15
+ *.bak
16
+ *.tmp
17
+ *~
18
+ # Various IDEs
19
+ .project
20
+ .idea/
21
+ *.tmproj
22
+ .vscode/
@@ -0,0 +1,6 @@
1
+ ---
2
+ apiVersion: v1
3
+ appVersion: 0.1.13
4
+ description: A Helm chart to deploy sidekiq-prometheus-exporter in Kubernetes
5
+ name: sidekiq-prometheus-exporter
6
+ version: 0.1.13
@@ -0,0 +1,87 @@
1
+ # Official Helm chart
2
+
3
+ This is an official Helm chart for [sidekiq-prometheus-exporter](https://github.com/Strech/sidekiq-prometheus-exporter)
4
+ gem. It uses Docker image published on the [Docker hub](https://hub.docker.com/r/strech/sidekiq-prometheus-exporter).
5
+
6
+ ## Installation
7
+
8
+ First of all add the chart repository
9
+
10
+ ```console
11
+ $ helm repo add strech https://strech.github.io/sidekiq-prometheus-exporter
12
+ "strech" has been added to your repositories
13
+
14
+ $ helm repo list
15
+ NAME URL
16
+ strech https://strech.github.io/sidekiq-prometheus-exporter
17
+ ```
18
+
19
+ Then you can install the chart, let's say with the release name `sidekiq-metrics`
20
+
21
+ **Helm v2**
22
+
23
+ ```console
24
+ $ helm install strech/sidekiq-prometheus-exporter --name sidekiq-metrics
25
+ ```
26
+
27
+ **Helm v3**
28
+
29
+ ```console
30
+ $ helm install sidekiq-metrics strech/sidekiq-prometheus-exporter
31
+ ```
32
+
33
+ ## Configuration
34
+
35
+ You can try out that configuration by using `--dry-run` and `--values` on
36
+ install (examples using **Helm v3**)
37
+
38
+ ```console
39
+ $ helm install sidekiq-metrics strech/sidekiq-prometheus-exporter --values myvalues.yaml --dry-run
40
+ ```
41
+
42
+ or you can try out just one value via `--set`
43
+
44
+ ```console
45
+ $ helm install sidekiq-metrics strech/sidekiq-prometheus-exporter --set serviceAccount.create=false --dry-run
46
+ ```
47
+
48
+ | Parameter | Description | Default |
49
+ | ------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------ |
50
+ | `nameOverride` | Override the resource name prefix | `nil` |
51
+ | `fullnameOverride` | Override the full resource names | `nil` |
52
+ | `image.registry` | Image registry | `docker.io` |
53
+ | `image.repository` | Image repository | `strech/sidekiq-prometheus-exporter` |
54
+ | `image.tag` | Image tag | `0.1.13` |
55
+ | `image.pullPolicy` | Image pull policy | `IfNotPresent` |
56
+ | `image.pullSecrets` | Image pull secrets | `nil` |
57
+ | `containerPort` | Port for the exporter to bind on | `9292` |
58
+ | `resources` | CPU/Memory resource requests/limits | `nil` |
59
+ | `nodeSelector` | Node labels for pod assignment | `nil` |
60
+ | `tolerations` | Toleration labels for pod assignment | `nil` |
61
+ | `affinity` | Affinity settings for pod assignment | `nil` |
62
+ | `securityContext` | Security Context for the pod | `nil` |
63
+ | `livenessProbe` | LivenessProbe settings for tcpSocket mapping to containerPort | (See `values.yaml`) |
64
+ | `readinessProbe` | ReadinessProbe settings for tcpSocket mapping to containerPort | (See `values.yaml`) |
65
+ | `service.type` | Kubernetes service type | `ClusterIP` |
66
+ | `service.port` | Kubernetes port where service is exposed | `80` |
67
+ | `env` | An environment variables for metrics container (exclusive with `envFrom`) | `nil` |
68
+ | `envFrom.type` | Type of resource configMapRef/secretRef to source environment variables from | `nil` |
69
+ | `envFrom.name` | Name of Secret/ConfigMap to source environment variables from | `nil` |
70
+ | `serviceMonitor.enabled` | Whether serviceMonitor resource should be deployed | `false` |
71
+ | `serviceMonitor.path` | The endpoint of the service to be scraped | `/metrics` |
72
+ | `serviceMonitor.interval` | Duration between 2 consecutive scrapes | `1m` |
73
+ | `serviceMonitor.scrapeTimeout` | Timeout for each scrape request | `nil` |
74
+ | `serviceMonitor.labels` | Labels to add to the service monitor object | `nil` |
75
+ | `serviceAccount.create` | Specifies whether a service account should be created | `true` |
76
+ | `serviceAccount.name` | Name of the service account (if not set will be generated from chart full name) | `nil` |
77
+ | `rbac.create` | If true, create & use RBAC resources (:anger: works with `envFrom` and `serviceAccount` enabled) | `false` |
78
+
79
+ ## How to uninstall?
80
+
81
+ If you already have release `sidekiq-metics` running and want to remove it
82
+
83
+ ```console
84
+ $ helm delete --purge sidekiq-metics
85
+ ```
86
+
87
+ :bulb: The command above removes all the Kubernetes components associated with the chart and deletes the release.