...
1
16
17 package workloads
18
19 import (
20 "fmt"
21 "os/exec"
22 "regexp"
23 "strings"
24 )
25
26 func runCmd(cmd string, args []string) error {
27 err := exec.Command(cmd, args...).Run()
28 return err
29 }
30
31 func getMatchingLineFromLog(log string, pattern string) (line string, err error) {
32 regex, err := regexp.Compile(pattern)
33 if err != nil {
34 return line, fmt.Errorf("failed to compile regexp %v: %w", pattern, err)
35 }
36
37 logLines := strings.Split(log, "\n")
38 for _, line := range logLines {
39 if regex.MatchString(line) {
40 return line, nil
41 }
42 }
43
44 return line, fmt.Errorf("line with pattern %v not found in log", pattern)
45 }
46
View as plain text