govuk_app_config 9.0.4 → 9.1.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 13c7b2080a8136a1799208e1bf685d420afbde632c35780c7b2cef063d7bad54
4
- data.tar.gz: 757a148a0d5db0867f8ca54033cb243837c5dadb9427c5047c24db4bcc96a897
3
+ metadata.gz: b294855ddebc514295005646929b0097f632fee29abca5e5bcfcf8762fa6a074
4
+ data.tar.gz: 5001db9a6a2ea18b55337fa58ffc43698949201644f0274c337468c0228b7220
5
5
  SHA512:
6
- metadata.gz: 7838253f4088c269f00f85ae005ee072ae3e08a935ba49f39e1dd0aa9b5c857de75472ebb73697b9ad49c31c61a62ad47556a3b75fe660edd2d818b0ad00cd65
7
- data.tar.gz: 102c41532cfa9d12140d54c5ed44b8bc06eb0e331524d032652c4f8b9d68fb5b1adcfb1044e197135ed4c7b9161903219719f767327719a09ed862a1de9dbca7
6
+ metadata.gz: 5f022124d42f44d65e8b34f47451b2bed770340690529983d9277cf2d5f747d85400b7061048c64e0e9c1b5c040c975b0421bb1143bca052736ffa4e75e6557f
7
+ data.tar.gz: 80af52848ba6276c0103bb6f7b32830b5cd4ca8fda42b2e4cb682dbce4ea958fd761c394b5864f3ea450f19e85197ccd0fadbd18c921cfee8783bb196a12a650
data/CHANGELOG.md CHANGED
@@ -1,3 +1,9 @@
1
+ # 9.1.0
2
+
3
+ * GovukAppConfig silences OpenTelemetry log output when running a rake task ([#311](https://github.com/alphagov/govuk_app_config/pull/311))
4
+ * Update warning message for Prometheus metric server address already in use.
5
+ * Add ability to support custom collectors in the Prometheus exporter.
6
+
1
7
  # 9.0.4
2
8
 
3
9
  * Fix an issue with Rails.logger being not an instance of ActiveSupport::Logger. Rails expects Rails.logger to have methods that Ruby STD Logger does not provide. e.g. `silence()` ([#309](https://github.com/alphagov/govuk_app_config/pull/309))
@@ -36,7 +42,7 @@
36
42
 
37
43
  # 8.0.1
38
44
 
39
- * Change the "source" field in Rails logs from logstasher from string representing IP host address to an empty object.
45
+ * Change the "source" field in Rails logs from logstasher from string representing IP host address to an empty object.
40
46
 
41
47
  # 8.0.0
42
48
 
@@ -21,8 +21,8 @@ Gem::Specification.new do |spec|
21
21
  spec.require_paths = %w[lib]
22
22
 
23
23
  spec.add_dependency "logstasher", "~> 2.1"
24
- spec.add_dependency "opentelemetry-exporter-otlp", "~> 0.25.0"
25
- spec.add_dependency "opentelemetry-instrumentation-all", "~> 0.39.1"
24
+ spec.add_dependency "opentelemetry-exporter-otlp", ">= 0.25", "< 0.27"
25
+ spec.add_dependency "opentelemetry-instrumentation-all", ">= 0.39.1", "< 0.41.0"
26
26
  spec.add_dependency "opentelemetry-sdk", "~> 1.2"
27
27
  spec.add_dependency "plek", ">= 4", "< 6"
28
28
  spec.add_dependency "prometheus_exporter", "~> 2.0"
@@ -39,6 +39,6 @@ Gem::Specification.new do |spec|
39
39
  spec.add_development_dependency "rake", "~> 13.0"
40
40
  spec.add_development_dependency "rspec", "~> 3.10"
41
41
  spec.add_development_dependency "rspec-its", "~> 1.3"
42
- spec.add_development_dependency "rubocop-govuk", "4.11.0"
42
+ spec.add_development_dependency "rubocop-govuk", "4.12.0"
43
43
  spec.add_development_dependency "webmock"
44
44
  end
@@ -13,6 +13,11 @@ module GovukOpenTelemetry
13
13
  OpenTelemetry::SDK.configure do |config|
14
14
  config.service_name = service_name
15
15
  config.use_all # enables all instrumentation!
16
+ config.logger = Logger.new(File::NULL) if in_rake_task?
16
17
  end
17
18
  end
19
+
20
+ def self.in_rake_task?
21
+ Rails.const_defined?(:Rake) && Rake.application.top_level_tasks.any?
22
+ end
18
23
  end
@@ -11,7 +11,7 @@ module GovukPrometheusExporter
11
11
  end
12
12
  end
13
13
 
14
- def self.configure
14
+ def self.configure(collectors: [])
15
15
  return unless should_configure
16
16
 
17
17
  require "prometheus_exporter"
@@ -37,6 +37,9 @@ module GovukPrometheusExporter
37
37
 
38
38
  begin
39
39
  server = PrometheusExporter::Server::WebServer.new bind: "0.0.0.0", port: 9394
40
+
41
+ collectors.each { |collector| server.collector.register_collector(collector.new) }
42
+
40
43
  server.start
41
44
 
42
45
  if defined?(Rails)
@@ -47,7 +50,7 @@ module GovukPrometheusExporter
47
50
  Sinatra.use PrometheusExporter::Middleware
48
51
  end
49
52
  rescue Errno::EADDRINUSE
50
- warn "Warning: Could not connect to Prometheus Server"
53
+ warn "Could not start Prometheus metrics server as address already in use."
51
54
  end
52
55
  end
53
56
  end
@@ -1,3 +1,3 @@
1
1
  module GovukAppConfig
2
- VERSION = "9.0.4".freeze
2
+ VERSION = "9.1.0".freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: govuk_app_config
3
3
  version: !ruby/object:Gem::Version
4
- version: 9.0.4
4
+ version: 9.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - GOV.UK Dev
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-07-17 00:00:00.000000000 Z
11
+ date: 2023-09-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: logstasher
@@ -28,30 +28,42 @@ dependencies:
28
28
  name: opentelemetry-exporter-otlp
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0.25'
34
+ - - "<"
32
35
  - !ruby/object:Gem::Version
33
- version: 0.25.0
36
+ version: '0.27'
34
37
  type: :runtime
35
38
  prerelease: false
36
39
  version_requirements: !ruby/object:Gem::Requirement
37
40
  requirements:
38
- - - "~>"
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ version: '0.25'
44
+ - - "<"
39
45
  - !ruby/object:Gem::Version
40
- version: 0.25.0
46
+ version: '0.27'
41
47
  - !ruby/object:Gem::Dependency
42
48
  name: opentelemetry-instrumentation-all
43
49
  requirement: !ruby/object:Gem::Requirement
44
50
  requirements:
45
- - - "~>"
51
+ - - ">="
46
52
  - !ruby/object:Gem::Version
47
53
  version: 0.39.1
54
+ - - "<"
55
+ - !ruby/object:Gem::Version
56
+ version: 0.41.0
48
57
  type: :runtime
49
58
  prerelease: false
50
59
  version_requirements: !ruby/object:Gem::Requirement
51
60
  requirements:
52
- - - "~>"
61
+ - - ">="
53
62
  - !ruby/object:Gem::Version
54
63
  version: 0.39.1
64
+ - - "<"
65
+ - !ruby/object:Gem::Version
66
+ version: 0.41.0
55
67
  - !ruby/object:Gem::Dependency
56
68
  name: opentelemetry-sdk
57
69
  requirement: !ruby/object:Gem::Requirement
@@ -280,14 +292,14 @@ dependencies:
280
292
  requirements:
281
293
  - - '='
282
294
  - !ruby/object:Gem::Version
283
- version: 4.11.0
295
+ version: 4.12.0
284
296
  type: :development
285
297
  prerelease: false
286
298
  version_requirements: !ruby/object:Gem::Requirement
287
299
  requirements:
288
300
  - - '='
289
301
  - !ruby/object:Gem::Version
290
- version: 4.11.0
302
+ version: 4.12.0
291
303
  - !ruby/object:Gem::Dependency
292
304
  name: webmock
293
305
  requirement: !ruby/object:Gem::Requirement
@@ -363,7 +375,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
363
375
  - !ruby/object:Gem::Version
364
376
  version: '0'
365
377
  requirements: []
366
- rubygems_version: 3.4.17
378
+ rubygems_version: 3.4.19
367
379
  signing_key:
368
380
  specification_version: 4
369
381
  summary: Base configuration for GOV.UK applications