nginx-gateway-fabric icon indicating copy to clipboard operation
nginx-gateway-fabric copied to clipboard

Support Tracing via OpenTelemetry

Open mpstefan opened this issue 2 years ago • 4 comments
trafficstars

As a user of NGF I want NGF to have the ability to generate and send traces So that I can easily get tracing for all of my traffic to help debug my environment.

Background

We evaluated adding tracing capabilities before 1.0, but the nginx 1.0 otel module had not yet been released yet. Now that is has, and that @ciarams87 has completed a POC, it is time to add the capability.

Acceptance Criteria

  • When enabled, the NGINX otel module is utilized to generate traces.
  • Generated traces can be exported to a configurable endpoint.
  • All fields from otel_exporter directive are configurable by the user.
  • Documentation is created to explain this feature.

For Discussion

  • Does the above acceptance criteria make sense?
### Tasks
- [ ] https://github.com/nginxinc/nginx-gateway-fabric/issues/1660
- [ ] https://github.com/nginxinc/nginx-gateway-fabric/issues/1662
- [ ] https://github.com/nginxinc/nginx-gateway-fabric/issues/1166
- [ ] https://github.com/nginxinc/nginx-gateway-fabric/issues/1800
- [ ] https://github.com/nginxinc/nginx-gateway-fabric/issues/1826
- [ ] https://github.com/nginxinc/nginx-gateway-fabric/issues/1827
- [ ] https://github.com/nginxinc/nginx-gateway-fabric/issues/1828
- [ ] https://github.com/nginxinc/nginx-gateway-fabric/issues/1911
- [ ] https://github.com/nginxinc/nginx-gateway-fabric/issues/1912

mpstefan avatar May 03 '23 19:05 mpstefan

Look at using NGINX otel: https://github.com/nginxinc/nginx-otel

mpstefan avatar Jul 18 '23 16:07 mpstefan

We should use the nginx developed module. And expose its settings. It only has tracing today, but plans to add metrics and logs.

brianehlert avatar Jul 18 '23 21:07 brianehlert

POC using the OTel module: https://github.com/ciarams87/nginx-gateway-fabric/tree/spike/try-otel

ciarams87 avatar Sep 20 '23 10:09 ciarams87

Branch containing original implementation, can be used for reference: https://github.com/nginxinc/nginx-gateway-fabric/tree/feat/data-plane-crd

sjberman avatar Mar 29 '24 16:03 sjberman