spandex-project / spandex_phoenix

Phoenix Instrumentation tracer
MIT License
82 stars 29 forks source link

feat: allow to filter traces for router dispatch event in telemetry module #65

Open scollon42 opened 1 year ago

scollon42 commented 1 year ago

Hi! This is a small PR to allow to use the filter_traces function when tracing router events.

I have an application where I need to have 2 endpoint (with their own router / controllers etc.). This is working very well with the endpoint telemetry events since my endpoint use different prefix (ex [:phoenix, :endpoint, :my-endpoint] ) and I can pass the endpoint_telemetry_prefix options to catch them properly.

But for the router events, since I'm using SpandexPhoenix.Telemetry.install/1 twice (one for each endpoint, with different options), I have duplicated traces.

Screenshot 2023-02-10 at 18 50 15

I'm not sure my PR is the right approach, it might be a good idea to allow to pass a new options to handle this but I figured that this would include minimal changes to the codebase and might be prefered for this.

Thanks for the great work on this project 😃 🙌