in pkg/telemetrygen/generator.go [58:87]
func runAgent(ctx context.Context, l *zap.Logger, expr string, limiter *rate.Limiter, rng *rand.Rand, cfg Config) error {
handler, err := loadgen.NewEventHandler(loadgen.EventHandlerParams{
Logger: l,
URL: cfg.ServerURL.String(),
Path: expr,
APIKey: cfg.APIKey,
Limiter: limiter,
Rand: rng,
RewriteIDs: cfg.RewriteIDs,
RewriteServiceNames: cfg.RewriteServiceNames,
RewriteServiceNodeNames: cfg.RewriteServiceNodeNames,
RewriteServiceTargetNames: cfg.RewriteServiceTargetNames,
RewriteSpanNames: cfg.RewriteSpanNames,
RewriteTransactionNames: cfg.RewriteTransactionNames,
RewriteTransactionTypes: cfg.RewriteTransactionTypes,
RewriteTimestamps: cfg.RewriteTimestamps,
Headers: cfg.Headers,
Protocol: "apm/http",
TargetStackVersion: cfg.TargetStackVersion,
})
if err != nil {
return fmt.Errorf("cannot create event handler: %w", err)
}
if _, err := handler.SendBatches(ctx); err != nil {
return fmt.Errorf("cannot send batches: %w", err)
}
return nil
}