in loadgen/eventhandler.go [112:140]
func newAPMEventHandler(p EventHandlerParams) (*eventhandler.Handler, error) {
// We call the HTTPTransport constructor to avoid copying all the config
// parsing that creates the `*http.Client`.
t, err := transport.NewHTTPTransport(transport.HTTPTransportOptions{})
if err != nil {
return nil, fmt.Errorf("cannot create HTTP transport: %w", err)
}
c := eventhandler.Config{
Path: filepath.Join("events", p.Path),
Transport: eventhandler.NewAPMTransport(p.Logger, t.Client, p.URL, p.Token, p.APIKey, p.Headers),
Storage: events,
Limiter: p.Limiter,
Rand: p.Rand,
IgnoreErrors: p.IgnoreErrors,
RunForever: p.RunForever,
RewriteIDs: p.RewriteIDs,
RewriteServiceNames: p.RewriteServiceNames,
RewriteServiceNodeNames: p.RewriteServiceNodeNames,
RewriteServiceTargetNames: p.RewriteServiceTargetNames,
RewriteSpanNames: p.RewriteSpanNames,
RewriteTransactionNames: p.RewriteTransactionNames,
RewriteTransactionTypes: p.RewriteTransactionTypes,
RewriteTimestamps: p.RewriteTimestamps,
TargetStackVersion: p.TargetStackVersion,
}
return eventhandler.NewAPM(p.Logger, c)
}