prometheus_exporter 2.2.0 → 2.3.1

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.
data/Gemfile DELETED
@@ -1,8 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- source "https://rubygems.org"
4
-
5
- git_source(:github) { |repo_name| "https://github.com/#{repo_name}" }
6
-
7
- # Specify your gem's dependencies in prometheus_exporter.gemspec
8
- gemspec
data/Guardfile DELETED
@@ -1,8 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- guard :minitest do
4
- # with Minitest::Unit
5
- watch(%r{^test/(.*)\/?(.*)_test\.rb$})
6
- watch(%r{^lib/prometheus_exporter/(.*/)?([^/]+)\.rb$}) { |m| "test/#{m[1]}#{m[2]}_test.rb" }
7
- watch(%r{^test/test_helper\.rb$}) { 'test' }
8
- end
data/Rakefile DELETED
@@ -1,12 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "bundler/gem_tasks"
4
- require "rake/testtask"
5
-
6
- Rake::TestTask.new(:test) do |t|
7
- t.libs << "test"
8
- t.libs << "lib"
9
- t.test_files = FileList["test/**/*_test.rb"]
10
- end
11
-
12
- task default: :test
data/bench/bench.rb DELETED
@@ -1,46 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require_relative "../lib/prometheus_exporter"
4
- require_relative "../lib/prometheus_exporter/client"
5
- require_relative "../lib/prometheus_exporter/server"
6
-
7
- # test how long it takes a custom collector to process 10k messages
8
-
9
- class Collector
10
- def initialize(done)
11
- @i = 0
12
- @done = done
13
- end
14
-
15
- def process(message)
16
- _parsed = JSON.parse(message)
17
- @i += 1
18
- @done.call if @i % 10_000 == 0
19
- end
20
-
21
- def prometheus_metrics_text
22
- end
23
- end
24
-
25
- @start = nil
26
- @client = nil
27
- @runs = 1000
28
-
29
- done =
30
- lambda do
31
- puts "Elapsed for 10k messages is #{Time.now - @start}"
32
- if (@runs -= 1) > 0
33
- @start = Time.now
34
- 10_000.times { @client.send_json(hello: "world") }
35
- end
36
- end
37
-
38
- collector = Collector.new(done)
39
- server = PrometheusExporter::Server::WebServer.new port: 12_349, collector: collector
40
- server.start
41
- @client = PrometheusExporter::Client.new port: 12_349, max_queue_size: 100_000
42
-
43
- @start = Time.now
44
- 10_000.times { @client.send_json(hello: "world") }
45
-
46
- sleep
@@ -1,25 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- class MyCustomCollector < PrometheusExporter::Server::BaseCollector
4
- def initialize
5
- @gauge1 = PrometheusExporter::Metric::Gauge.new("thing1", "I am thing 1")
6
- @gauge2 = PrometheusExporter::Metric::Gauge.new("thing2", "I am thing 2")
7
- @mutex = Mutex.new
8
- end
9
-
10
- def process(obj)
11
- @mutex.synchronize do
12
- if thing1 = obj["thing1"]
13
- @gauge1.observe(thing1)
14
- end
15
-
16
- if thing2 = obj["thing2"]
17
- @gauge2.observe(thing2)
18
- end
19
- end
20
- end
21
-
22
- def prometheus_metrics_text
23
- @mutex.synchronize { "#{@gauge1.to_prometheus_text}\n#{@gauge2.to_prometheus_text}" }
24
- end
25
- end
@@ -1,2 +0,0 @@
1
- ---
2
- BUNDLE_RETRY: "1"
@@ -1,5 +0,0 @@
1
- # This file was generated by Appraisal
2
-
3
- source "https://rubygems.org"
4
-
5
- gemspec path: "../"
@@ -1,7 +0,0 @@
1
- # This file was generated by Appraisal
2
-
3
- source "https://rubygems.org"
4
-
5
- gem "activerecord", "~> 6.1.0"
6
-
7
- gemspec path: "../"
@@ -1,7 +0,0 @@
1
- # This file was generated by Appraisal
2
-
3
- source "https://rubygems.org"
4
-
5
- gem "activerecord", "~> 7.0.0"
6
-
7
- gemspec path: "../"
@@ -1,7 +0,0 @@
1
- # This file was generated by Appraisal
2
-
3
- source "https://rubygems.org"
4
-
5
- gem "activerecord", "~> 7.1.0"
6
-
7
- gemspec path: "../"
@@ -1,44 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- lib = File.expand_path("../lib", __FILE__)
4
- $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
5
- require "prometheus_exporter/version"
6
-
7
- Gem::Specification.new do |spec|
8
- spec.name = "prometheus_exporter"
9
- spec.version = PrometheusExporter::VERSION
10
- spec.authors = ["Sam Saffron"]
11
- spec.email = ["sam.saffron@gmail.com"]
12
-
13
- spec.summary = "Prometheus Exporter"
14
- spec.description = "Prometheus metric collector and exporter for Ruby"
15
- spec.homepage = "https://github.com/discourse/prometheus_exporter"
16
- spec.license = "MIT"
17
-
18
- spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features|bin)/}) }
19
- spec.bindir = "bin"
20
- spec.executables = ["prometheus_exporter"]
21
- spec.require_paths = ["lib"]
22
-
23
- spec.add_dependency "webrick"
24
-
25
- spec.add_development_dependency "rubocop", ">= 0.69"
26
- spec.add_development_dependency "bundler", ">= 2.1.4"
27
- spec.add_development_dependency "rake", "~> 13.0"
28
- spec.add_development_dependency "minitest", "~> 5.23.0"
29
- spec.add_development_dependency "guard", "~> 2.0"
30
- spec.add_development_dependency "mini_racer", "~> 0.12.0"
31
- spec.add_development_dependency "guard-minitest", "~> 2.0"
32
- spec.add_development_dependency "oj", "~> 3.0"
33
- spec.add_development_dependency "rack-test", "~> 2.1.0"
34
- spec.add_development_dependency "minitest-stub-const", "~> 0.6"
35
- spec.add_development_dependency "rubocop-discourse", ">= 3"
36
- spec.add_development_dependency "appraisal", "~> 2.3"
37
- spec.add_development_dependency "activerecord", "~> 6.0.0"
38
- spec.add_development_dependency "redis", "> 5"
39
- spec.add_development_dependency "m"
40
- spec.add_development_dependency "syntax_tree"
41
- spec.add_development_dependency "syntax_tree-disable_ternary"
42
- spec.add_development_dependency "raindrops", "~> 0.19" if !RUBY_ENGINE == "jruby"
43
- spec.required_ruby_version = ">= 3.0.0"
44
- end