I implemented the Elastic APM Go Agent on Lura’s gin router. Lura is a Framework used by KrakenD. I use it on gin middleware:
endpointGroup.Use(apmgin.Middleware(r.cfg.Engine))
The problem is, that the instrumentation only traces the HTTP request. It looks like this on Kibana:
I read that APM Go Agent doesn’t support the instrumentation. So I want to add a manual APM span on several transactions like cache operation, etc. The problem is I want to add the APM span on the Go plugin, and it doesn’t send any data to my APM server. I guess that the request lifecycle is not passed through the go plugin. I’ve tried to create a new APM instance and pass the APM context to go plugin but it doesn’t work. How do I achieve it?