package main import ( "fmt" "os" "strconv" "sync" "time" "git.frostfs.info/TrueCloudLab/frostfs-observability/logging/lokicore/loki" ) var wg sync.WaitGroup const ( countMsgGroup = 100 countMsg = 500000 ) func send(loki *loki.Client) { wg.Add(1) defer wg.Done() for j := 0; j < countMsg/countMsgGroup; j++ { for i := 0; i < countMsgGroup; i++ { err := loki.Send(strconv.Itoa(j)+" "+strconv.Itoa(i)+" test log message", time.Now()) if err != nil { fmt.Fprintf(os.Stderr, "send: %v", err) } } time.Sleep(20 * time.Millisecond) } } func main() { loki := loki.Setup(loki.Config{ Endpoint: "localhost:3100/api/prom/push", Labels: map[string]string{ "label": "test", }, BatchWait: 1000, BatchEntriesNumber: 200, Enabled: true, }) go send(loki) send(loki) wg.Wait() loki.Shutdown() }