in sharedlibraries/cloudmonitoring/cloudmonitoring.go [220:244]
func SendTimeSeries(ctx context.Context, timeSeries []*mrpb.TimeSeries, timeSeriesCreator TimeSeriesCreator, bo *BackOffIntervals, projectID string) (sent, batchCount int, err error) {
var batchTimeSeries []*mrpb.TimeSeries
for _, t := range timeSeries {
batchTimeSeries = append(batchTimeSeries, t)
if len(batchTimeSeries) == maxTSPerRequest {
log.CtxLogger(ctx).Debug("Maximum batch size has been reached, sending the batch.")
batchCount++
if err := sendBatch(ctx, batchTimeSeries, timeSeriesCreator, bo, projectID); err != nil {
return sent, batchCount, err
}
sent += len(batchTimeSeries)
batchTimeSeries = nil
}
}
if len(batchTimeSeries) == 0 {
return sent, batchCount, nil
}
batchCount++
if err := sendBatch(ctx, batchTimeSeries, timeSeriesCreator, bo, projectID); err != nil {
return sent, batchCount, err
}
return sent + len(batchTimeSeries), batchCount, nil
}