@@ -252,42 +252,86 @@ func TestMergeSplitLogsBasedOnByteSize(t *testing.T) {
252252 }
253253}
254254
255- func BenchmarkSplittingBasedOnItemCountManyLogs (b * testing.B ) {
256- cfg := exporterbatcher.MaxSizeConfig {MaxSizeItems : 10 }
255+ func BenchmarkSplittingBasedOnItemCountManySmallLogs (b * testing.B ) {
256+ cfg := exporterbatcher.MaxSizeConfig {MaxSizeItems : 10000 }
257257 for i := 0 ; i < b .N ; i ++ {
258- lr1 := & logsRequest {ld : testdata .GenerateLogs (9 )}
258+ lr1 := & logsRequest {ld : testdata .GenerateLogs (10 )}
259259 for j := 0 ; j < 1000 ; j ++ {
260- lr2 := & logsRequest {ld : testdata .GenerateLogs (9 )}
260+ lr2 := & logsRequest {ld : testdata .GenerateLogs (10 )}
261261 lr1 .MergeSplit (context .Background (), cfg , lr2 )
262262 }
263263 }
264264}
265265
266- func BenchmarkSplittingBasedOnByteSizeManyLogs (b * testing.B ) {
267- cfg := exporterbatcher.MaxSizeConfig {MaxSizeBytes : 1010 }
266+ func BenchmarkSplittingBasedOnByteSizeManySmallLogs (b * testing.B ) {
267+ cfg := exporterbatcher.MaxSizeConfig {MaxSizeBytes : 1010000 }
268268 for i := 0 ; i < b .N ; i ++ {
269- lr1 := & logsRequest {ld : testdata .GenerateLogs (9 )}
269+ lr1 := & logsRequest {ld : testdata .GenerateLogs (10 )}
270270 for j := 0 ; j < 1000 ; j ++ {
271- lr2 := & logsRequest {ld : testdata .GenerateLogs (9 )}
271+ lr2 := & logsRequest {ld : testdata .GenerateLogs (10 )}
272+ lr1 .MergeSplit (context .Background (), cfg , lr2 )
273+ }
274+ }
275+ }
276+
277+ func BenchmarkSplittingBasedOnItemCountManyLogsSlightlyAboveLimit (b * testing.B ) {
278+ cfg := exporterbatcher.MaxSizeConfig {MaxSizeItems : 10000 }
279+ for i := 0 ; i < b .N ; i ++ {
280+ lr1 := & logsRequest {ld : testdata .GenerateLogs (10001 )}
281+ for j := 0 ; j < 10 ; j ++ {
282+ lr2 := & logsRequest {ld : testdata .GenerateLogs (10001 )}
283+ lr1 .MergeSplit (context .Background (), cfg , lr2 )
284+ }
285+ }
286+ }
287+
288+ func BenchmarkSplittingBasedOnByteSizeManyLogsSlightlyAboveLimit (b * testing.B ) {
289+ cfg := exporterbatcher.MaxSizeConfig {MaxSizeBytes : 960052 } // 960052 corresponds to 10000 generated logs
290+ for i := 0 ; i < b .N ; i ++ {
291+ lr1 := & logsRequest {ld : testdata .GenerateLogs (10001 )}
292+ for j := 0 ; j < 10 ; j ++ {
293+ lr2 := & logsRequest {ld : testdata .GenerateLogs (10001 )}
294+ lr1 .MergeSplit (context .Background (), cfg , lr2 )
295+ }
296+ }
297+ }
298+
299+ func BenchmarkSplittingBasedOnItemCountManyLogsSlightlyBelowLimit (b * testing.B ) {
300+ cfg := exporterbatcher.MaxSizeConfig {MaxSizeItems : 10000 }
301+ for i := 0 ; i < b .N ; i ++ {
302+ lr1 := & logsRequest {ld : testdata .GenerateLogs (9999 )}
303+ for j := 0 ; j < 10 ; j ++ {
304+ lr2 := & logsRequest {ld : testdata .GenerateLogs (9999 )}
305+ lr1 .MergeSplit (context .Background (), cfg , lr2 )
306+ }
307+ }
308+ }
309+
310+ func BenchmarkSplittingBasedOnByteSizeManyLogsSlightlyBelowLimit (b * testing.B ) {
311+ cfg := exporterbatcher.MaxSizeConfig {MaxSizeBytes : 960052 } // 960052 corresponds to 10000 generated logs
312+ for i := 0 ; i < b .N ; i ++ {
313+ lr1 := & logsRequest {ld : testdata .GenerateLogs (9999 )}
314+ for j := 0 ; j < 10 ; j ++ {
315+ lr2 := & logsRequest {ld : testdata .GenerateLogs (9999 )}
272316 lr1 .MergeSplit (context .Background (), cfg , lr2 )
273317 }
274318 }
275319}
276320
277321func BenchmarkSplittingBasedOnItemCountHugeLog (b * testing.B ) {
278- cfg := exporterbatcher.MaxSizeConfig {MaxSizeItems : 10 }
322+ cfg := exporterbatcher.MaxSizeConfig {MaxSizeItems : 10000 }
279323 for i := 0 ; i < b .N ; i ++ {
280324 lr1 := & logsRequest {ld : testdata .GenerateLogs (1 )}
281- lr2 := & logsRequest {ld : testdata .GenerateLogs (1000 )}
325+ lr2 := & logsRequest {ld : testdata .GenerateLogs (100000 )} // l2 is of size 9.600054 MB
282326 lr1 .MergeSplit (context .Background (), cfg , lr2 )
283327 }
284328}
285329
286330func BenchmarkSplittingBasedOnByteSizeHugeLog (b * testing.B ) {
287- cfg := exporterbatcher.MaxSizeConfig {MaxSizeBytes : 1010 }
331+ cfg := exporterbatcher.MaxSizeConfig {MaxSizeBytes : 970000 }
288332 for i := 0 ; i < b .N ; i ++ {
289333 lr1 := & logsRequest {ld : testdata .GenerateLogs (1 )}
290- lr2 := & logsRequest {ld : testdata .GenerateLogs (1000 )}
334+ lr2 := & logsRequest {ld : testdata .GenerateLogs (100000 )}
291335 lr1 .MergeSplit (context .Background (), cfg , lr2 )
292336 }
293337}
0 commit comments