@@ -23,6 +23,7 @@ import (
23
23
"time"
24
24
25
25
gokitlog "github.com/go-kit/log"
26
+ "github.com/prometheus/client_golang/prometheus"
26
27
commonconfig "github.com/prometheus/common/config"
27
28
"github.com/prometheus/common/model"
28
29
promconfig "github.com/prometheus/prometheus/config"
@@ -36,6 +37,12 @@ import (
36
37
allocatorWatcher "github.com/open-telemetry/opentelemetry-operator/cmd/otel-allocator/watcher"
37
38
)
38
39
40
+ var defaultScrapeProtocols = []promconfig.ScrapeProtocol {
41
+ promconfig .OpenMetricsText1_0_0 ,
42
+ promconfig .OpenMetricsText0_0_1 ,
43
+ promconfig .PrometheusText0_0_4 ,
44
+ }
45
+
39
46
func TestDiscovery (t * testing.T ) {
40
47
type args struct {
41
48
file string
@@ -62,7 +69,10 @@ func TestDiscovery(t *testing.T) {
62
69
}
63
70
scu := & mockScrapeConfigUpdater {}
64
71
ctx , cancelFunc := context .WithCancel (context .Background ())
65
- d := discovery .NewManager (ctx , gokitlog .NewNopLogger ())
72
+ registry := prometheus .NewRegistry ()
73
+ sdMetrics , err := discovery .CreateAndRegisterSDMetrics (registry )
74
+ require .NoError (t , err )
75
+ d := discovery .NewManager (ctx , gokitlog .NewNopLogger (), registry , sdMetrics )
66
76
manager := NewDiscoverer (ctrl .Log .WithName ("test" ), d , nil , scu )
67
77
68
78
defer func () { manager .Close () }()
@@ -123,6 +133,7 @@ func TestDiscovery_ScrapeConfigHashing(t *testing.T) {
123
133
JobName : "serviceMonitor/testapp/testapp/0" ,
124
134
HonorTimestamps : true ,
125
135
ScrapeInterval : model .Duration (30 * time .Second ),
136
+ ScrapeProtocols : defaultScrapeProtocols ,
126
137
ScrapeTimeout : model .Duration (30 * time .Second ),
127
138
MetricsPath : "/metrics" ,
128
139
Scheme : "http" ,
@@ -151,6 +162,7 @@ func TestDiscovery_ScrapeConfigHashing(t *testing.T) {
151
162
JobName : "serviceMonitor/testapp/testapp/0" ,
152
163
HonorTimestamps : false ,
153
164
ScrapeInterval : model .Duration (30 * time .Second ),
165
+ ScrapeProtocols : defaultScrapeProtocols ,
154
166
ScrapeTimeout : model .Duration (30 * time .Second ),
155
167
MetricsPath : "/metrics" ,
156
168
Scheme : "http" ,
@@ -179,6 +191,7 @@ func TestDiscovery_ScrapeConfigHashing(t *testing.T) {
179
191
JobName : "serviceMonitor/testapp/testapp/1" ,
180
192
HonorTimestamps : false ,
181
193
ScrapeInterval : model .Duration (30 * time .Second ),
194
+ ScrapeProtocols : defaultScrapeProtocols ,
182
195
ScrapeTimeout : model .Duration (30 * time .Second ),
183
196
MetricsPath : "/metrics" ,
184
197
Scheme : "http" ,
@@ -207,6 +220,7 @@ func TestDiscovery_ScrapeConfigHashing(t *testing.T) {
207
220
JobName : "serviceMonitor/testapp/testapp/1" ,
208
221
HonorTimestamps : false ,
209
222
ScrapeInterval : model .Duration (30 * time .Second ),
223
+ ScrapeProtocols : defaultScrapeProtocols ,
210
224
ScrapeTimeout : model .Duration (30 * time .Second ),
211
225
MetricsPath : "/metrics" ,
212
226
Scheme : "http" ,
@@ -235,6 +249,7 @@ func TestDiscovery_ScrapeConfigHashing(t *testing.T) {
235
249
JobName : "serviceMonitor/testapp/testapp/1" ,
236
250
HonorTimestamps : false ,
237
251
ScrapeTimeout : model .Duration (30 * time .Second ),
252
+ ScrapeProtocols : defaultScrapeProtocols ,
238
253
MetricsPath : "/metrics" ,
239
254
Scheme : "http" ,
240
255
HTTPClientConfig : commonconfig.HTTPClientConfig {
@@ -262,6 +277,7 @@ func TestDiscovery_ScrapeConfigHashing(t *testing.T) {
262
277
JobName : "serviceMonitor/testapp/testapp/1" ,
263
278
HonorTimestamps : false ,
264
279
ScrapeTimeout : model .Duration (30 * time .Second ),
280
+ ScrapeProtocols : defaultScrapeProtocols ,
265
281
MetricsPath : "/metrics" ,
266
282
Scheme : "http" ,
267
283
HTTPClientConfig : commonconfig.HTTPClientConfig {
@@ -301,7 +317,10 @@ func TestDiscovery_ScrapeConfigHashing(t *testing.T) {
301
317
302
318
scu := & mockScrapeConfigUpdater {}
303
319
ctx := context .Background ()
304
- d := discovery .NewManager (ctx , gokitlog .NewNopLogger ())
320
+ registry := prometheus .NewRegistry ()
321
+ sdMetrics , err := discovery .CreateAndRegisterSDMetrics (registry )
322
+ require .NoError (t , err )
323
+ d := discovery .NewManager (ctx , gokitlog .NewNopLogger (), registry , sdMetrics )
305
324
manager := NewDiscoverer (ctrl .Log .WithName ("test" ), d , nil , scu )
306
325
307
326
for _ , tc := range tests {
@@ -337,7 +356,10 @@ func TestDiscovery_ScrapeConfigHashing(t *testing.T) {
337
356
func TestDiscovery_NoConfig (t * testing.T ) {
338
357
scu := & mockScrapeConfigUpdater {mockCfg : map [string ]* promconfig.ScrapeConfig {}}
339
358
ctx , cancelFunc := context .WithCancel (context .Background ())
340
- d := discovery .NewManager (ctx , gokitlog .NewNopLogger ())
359
+ registry := prometheus .NewRegistry ()
360
+ sdMetrics , err := discovery .CreateAndRegisterSDMetrics (registry )
361
+ require .NoError (t , err )
362
+ d := discovery .NewManager (ctx , gokitlog .NewNopLogger (), registry , sdMetrics )
341
363
manager := NewDiscoverer (ctrl .Log .WithName ("test" ), d , nil , scu )
342
364
defer close (manager .close )
343
365
defer cancelFunc ()
@@ -384,7 +406,10 @@ func BenchmarkApplyScrapeConfig(b *testing.B) {
384
406
385
407
scu := & mockScrapeConfigUpdater {}
386
408
ctx := context .Background ()
387
- d := discovery .NewManager (ctx , gokitlog .NewNopLogger ())
409
+ registry := prometheus .NewRegistry ()
410
+ sdMetrics , err := discovery .CreateAndRegisterSDMetrics (registry )
411
+ require .NoError (b , err )
412
+ d := discovery .NewManager (ctx , gokitlog .NewNopLogger (), registry , sdMetrics )
388
413
manager := NewDiscoverer (ctrl .Log .WithName ("test" ), d , nil , scu )
389
414
390
415
b .ResetTimer ()
0 commit comments