@@ -31,7 +31,7 @@ import (
31
31
)
32
32
33
33
func BenchmarkServerTargetsHandler (b * testing.B ) {
34
- rand .Seed ( time .Now ().UnixNano ())
34
+ random := rand .New ( rand . NewSource ( time .Now ().UnixNano ())) // nolint: gosec
35
35
var table = []struct {
36
36
numCollectors int
37
37
numJobs int
@@ -58,8 +58,8 @@ func BenchmarkServerTargetsHandler(b *testing.B) {
58
58
b .Run (fmt .Sprintf ("%s_num_cols_%d_num_jobs_%d" , allocatorName , v .numCollectors , v .numJobs ), func (b * testing.B ) {
59
59
b .ReportAllocs ()
60
60
for i := 0 ; i < b .N ; i ++ {
61
- randomJob := rand .Intn (v .numJobs ) //nolint: gosec
62
- randomCol := rand .Intn (v .numCollectors ) //nolint: gosec
61
+ randomJob := random .Intn (v .numJobs ) //nolint: gosec
62
+ randomCol := random .Intn (v .numCollectors ) //nolint: gosec
63
63
request := httptest .NewRequest ("GET" , fmt .Sprintf ("/jobs/test-job-%d/targets?collector_id=collector-%d" , randomJob , randomCol ), nil )
64
64
w := httptest .NewRecorder ()
65
65
s .server .Handler .ServeHTTP (w , request )
@@ -70,14 +70,14 @@ func BenchmarkServerTargetsHandler(b *testing.B) {
70
70
}
71
71
72
72
func BenchmarkScrapeConfigsHandler (b * testing.B ) {
73
- rand .Seed ( time .Now ().UnixNano ())
73
+ random := rand .New ( rand . NewSource ( time .Now ().UnixNano ())) // nolint: gosec
74
74
s := & Server {
75
75
logger : logger ,
76
76
}
77
77
78
78
tests := []int {0 , 5 , 10 , 50 , 100 , 500 }
79
79
for _ , n := range tests {
80
- data := makeNScrapeConfigs (n )
80
+ data := makeNScrapeConfigs (* random , n )
81
81
assert .NoError (b , s .UpdateScrapeConfigResponse (data ))
82
82
83
83
b .Run (fmt .Sprintf ("%d_targets" , n ), func (b * testing.B ) {
@@ -94,7 +94,7 @@ func BenchmarkScrapeConfigsHandler(b *testing.B) {
94
94
}
95
95
96
96
func BenchmarkCollectorMapJSONHandler (b * testing.B ) {
97
- rand .Seed ( time .Now ().UnixNano ())
97
+ random := rand .New ( rand . NewSource ( time .Now ().UnixNano ())) // nolint: gosec
98
98
s := & Server {
99
99
logger : logger ,
100
100
}
@@ -137,7 +137,7 @@ func BenchmarkCollectorMapJSONHandler(b *testing.B) {
137
137
},
138
138
}
139
139
for _ , tc := range tests {
140
- data := makeNCollectorJSON (tc .numCollectors , tc .numTargets )
140
+ data := makeNCollectorJSON (* random , tc .numCollectors , tc .numTargets )
141
141
b .Run (fmt .Sprintf ("%d_collectors_%d_targets" , tc .numCollectors , tc .numTargets ), func (b * testing.B ) {
142
142
b .ReportAllocs ()
143
143
for i := 0 ; i < b .N ; i ++ {
@@ -149,7 +149,7 @@ func BenchmarkCollectorMapJSONHandler(b *testing.B) {
149
149
}
150
150
151
151
func BenchmarkTargetItemsJSONHandler (b * testing.B ) {
152
- rand .Seed ( time .Now ().UnixNano ())
152
+ random := rand .New ( rand . NewSource ( time .Now ().UnixNano ())) // nolint: gosec
153
153
s := & Server {
154
154
logger : logger ,
155
155
}
@@ -196,7 +196,7 @@ func BenchmarkTargetItemsJSONHandler(b *testing.B) {
196
196
},
197
197
}
198
198
for _ , tc := range tests {
199
- data := makeNTargetItems (tc .numTargets , tc .numLabels )
199
+ data := makeNTargetItems (* random , tc .numTargets , tc .numLabels )
200
200
b .Run (fmt .Sprintf ("%d_targets_%d_labels" , tc .numTargets , tc .numLabels ), func (b * testing.B ) {
201
201
b .ReportAllocs ()
202
202
for i := 0 ; i < b .N ; i ++ {
@@ -209,22 +209,22 @@ func BenchmarkTargetItemsJSONHandler(b *testing.B) {
209
209
210
210
var letters = []rune ("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-_/" )
211
211
212
- func randSeq (n int ) string {
212
+ func randSeq (random rand. Rand , n int ) string {
213
213
b := make ([]rune , n )
214
214
for i := range b {
215
- b [i ] = letters [rand .Intn (len (letters ))] //nolint:gosec
215
+ b [i ] = letters [random .Intn (len (letters ))] //nolint:gosec
216
216
}
217
217
return string (b )
218
218
}
219
219
220
- func makeNScrapeConfigs (n int ) map [string ]* promconfig.ScrapeConfig {
220
+ func makeNScrapeConfigs (random rand. Rand , n int ) map [string ]* promconfig.ScrapeConfig {
221
221
items := make (map [string ]* promconfig.ScrapeConfig , n )
222
222
for i := 0 ; i < n ; i ++ {
223
- items [randSeq (20 )] = & promconfig.ScrapeConfig {
224
- JobName : randSeq (20 ),
223
+ items [randSeq (random , 20 )] = & promconfig.ScrapeConfig {
224
+ JobName : randSeq (random , 20 ),
225
225
ScrapeInterval : model .Duration (30 * time .Second ),
226
226
ScrapeTimeout : model .Duration (time .Minute ),
227
- MetricsPath : randSeq (50 ),
227
+ MetricsPath : randSeq (random , 50 ),
228
228
SampleLimit : 5 ,
229
229
TargetLimit : 200 ,
230
230
LabelLimit : 20 ,
@@ -235,34 +235,34 @@ func makeNScrapeConfigs(n int) map[string]*promconfig.ScrapeConfig {
235
235
return items
236
236
}
237
237
238
- func makeNCollectorJSON (numCollectors , numItems int ) map [string ]collectorJSON {
238
+ func makeNCollectorJSON (random rand. Rand , numCollectors , numItems int ) map [string ]collectorJSON {
239
239
items := make (map [string ]collectorJSON , numCollectors )
240
240
for i := 0 ; i < numCollectors ; i ++ {
241
- items [randSeq (20 )] = collectorJSON {
242
- Link : randSeq (120 ),
243
- Jobs : makeNTargetItems (numItems , 50 ),
241
+ items [randSeq (random , 20 )] = collectorJSON {
242
+ Link : randSeq (random , 120 ),
243
+ Jobs : makeNTargetItems (random , numItems , 50 ),
244
244
}
245
245
}
246
246
return items
247
247
}
248
248
249
- func makeNTargetItems (numItems , numLabels int ) []* target.Item {
249
+ func makeNTargetItems (random rand. Rand , numItems , numLabels int ) []* target.Item {
250
250
items := make ([]* target.Item , 0 , numItems )
251
251
for i := 0 ; i < numItems ; i ++ {
252
252
items = append (items , target .NewItem (
253
- randSeq (80 ),
254
- randSeq (150 ),
255
- makeNNewLabels (numLabels ),
256
- randSeq (30 ),
253
+ randSeq (random , 80 ),
254
+ randSeq (random , 150 ),
255
+ makeNNewLabels (random , numLabels ),
256
+ randSeq (random , 30 ),
257
257
))
258
258
}
259
259
return items
260
260
}
261
261
262
- func makeNNewLabels (n int ) model.LabelSet {
262
+ func makeNNewLabels (random rand. Rand , n int ) model.LabelSet {
263
263
labels := make (map [model.LabelName ]model.LabelValue , n )
264
264
for i := 0 ; i < n ; i ++ {
265
- labels [model .LabelName (randSeq (20 ))] = model .LabelValue (randSeq (20 ))
265
+ labels [model .LabelName (randSeq (random , 20 ))] = model .LabelValue (randSeq (random , 20 ))
266
266
}
267
267
return labels
268
268
}
0 commit comments