prometheus-config-builder 0.0.29 → 0.0.34
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.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 796ca58360817b4b4c3118a72aac48c533ebb6c085f177d3bc16011b07af17f5
|
4
|
+
data.tar.gz: c825cf04a1a7ef5cf737cdc34755d6585ddcb0c7ba1963f85d5c13e5d339376e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b5aae7a6756ea7d5ceb8884e15adf8eaae3b0b81df6137b9c59a57e0a46643eb144a03e1f390835fd143e5daed390026050fab19981cc4c3841c72ceccd0920c
|
7
|
+
data.tar.gz: fe1a6117a005c7fed0400fd0966280ea582ecfc40600d45c54eec3c215564c83beaa905e9295001ec5523539650a92b46ee0e0ea3e7b7e03e4280bab265cedda
|
@@ -11,7 +11,7 @@ require 'prometheus_exporter'
|
|
11
11
|
require 'prometheus_exporter/client'
|
12
12
|
require 'prometheus_exporter/server'
|
13
13
|
|
14
|
-
server = PrometheusExporter::Server::WebServer.new port: 12345
|
14
|
+
server = PrometheusExporter::Server::WebServer.new port: 12345, bind: "0.0.0.0"
|
15
15
|
PrometheusExporter::Client.default = PrometheusExporter::LocalClient.new(collector: server.collector)
|
16
16
|
|
17
17
|
require 'prometheus-config-builder'
|
@@ -118,6 +118,10 @@ module PrometheusConfigBuilder
|
|
118
118
|
bucket: bucket_name
|
119
119
|
})
|
120
120
|
|
121
|
+
if !file.key.end_with?(".yaml")
|
122
|
+
next
|
123
|
+
end
|
124
|
+
|
121
125
|
logger.debug("Found file \"#{file.key}\" from S3 bucket #{bucket_name}")
|
122
126
|
files << {
|
123
127
|
source: "s3://#{bucket_name}/#{file.key}",
|
@@ -19,7 +19,9 @@ module PrometheusConfigBuilder
|
|
19
19
|
if client == nil
|
20
20
|
logger.info("Creating default client: #{name} with region: #{region}")
|
21
21
|
client = Aws::ECS::Client.new({
|
22
|
-
region: region
|
22
|
+
region: region,
|
23
|
+
instance_profile_credentials_retries: 4,
|
24
|
+
instance_profile_credentials_timeout: 2,
|
23
25
|
})
|
24
26
|
@@ecs[name] = client
|
25
27
|
end
|
@@ -64,21 +66,33 @@ module PrometheusConfigBuilder
|
|
64
66
|
region = (config["region"] or "us-east-1")
|
65
67
|
assume_role = config["assume_role"]
|
66
68
|
|
69
|
+
retries = 5
|
67
70
|
begin
|
68
71
|
client = get_client(region, assume_role)
|
72
|
+
|
73
|
+
$VERBOSE = x
|
74
|
+
tasks = get_tasks(client, config["cluster"], config["service"])
|
75
|
+
endpoints = get_task_endpoints(client, config["cluster"], tasks, config["labels"], config["metrics_port"])
|
76
|
+
|
77
|
+
if !config["job_name"]
|
78
|
+
logger.warn("File #{basename}: the scrape_configs of type:ecs-tasks doesn't have \"job_name\" field set. Ignoring!")
|
79
|
+
return nil
|
80
|
+
end
|
81
|
+
|
82
|
+
rescue Aws::Errors::MissingCredentialsError => e
|
83
|
+
logger.warn("Got a Aws::Errors::MissingCredentialsError: #{e}")
|
84
|
+
if retries > 0
|
85
|
+
retries = retries - 1
|
86
|
+
logger.warn("Will try to retry")
|
87
|
+
sleep(5)
|
88
|
+
retry
|
89
|
+
end
|
90
|
+
raise e
|
69
91
|
rescue ArgumentError => e
|
70
92
|
logger.warn("File #{basename}: the scrape_configs of type:ecs-tasks had invalid arguments: #{e}")
|
71
93
|
return nil
|
72
94
|
end
|
73
95
|
|
74
|
-
$VERBOSE = x
|
75
|
-
tasks = get_tasks(client, config["cluster"], config["service"])
|
76
|
-
endpoints = get_task_endpoints(client, config["cluster"], tasks, config["labels"], config["metrics_port"])
|
77
|
-
|
78
|
-
if !config["job_name"]
|
79
|
-
logger.warn("File #{basename}: the scrape_configs of type:ecs-tasks doesn't have \"job_name\" field set. Ignoring!")
|
80
|
-
return nil
|
81
|
-
end
|
82
96
|
|
83
97
|
# Prometheus might notice that the scrape file is changed in the middle of the write. That's why we'll
|
84
98
|
# first write the new contents into a temp file and atomically replace the file with the temp file.
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: prometheus-config-builder
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.34
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Juho Mäkinen juho.makinen@gmail.com
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-12-16 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: aws-sdk
|
@@ -136,8 +136,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
136
136
|
- !ruby/object:Gem::Version
|
137
137
|
version: '0'
|
138
138
|
requirements: []
|
139
|
-
|
140
|
-
rubygems_version: 2.5.2.3
|
139
|
+
rubygems_version: 3.0.3
|
141
140
|
signing_key:
|
142
141
|
specification_version: 4
|
143
142
|
summary: Template based config generation
|