-
-
Notifications
You must be signed in to change notification settings - Fork 387
Description
Is your feature request related to a problem? Please describe
As talked about at the last online meetup, I was proposing to drop the current telemetry server and leverage the OpenTelemetry standard.
However, after a more thorough analysis, OpenTelemetry is overkill for the task, since it encompasses tracing, metrics and logging, but it does so in a slightly convoluted way.
So the alternative is to give the current telemetry implementation some love.
Describe the solution you'd like
- separate the building of the telemetry server from the other build
- don't build the server if the code pushed is related to pyRevit (and vice versa)
- add endpoints to retrieve (and visualize?) the data
- alternatively/complimentary, provide a grafana and/or Power BI dashboard example to visualize the data
- add the ability to pass the configuration via environment variables (nice to have because it's more in line with the 12-factor app, but not indispensable)
- create a (linux) container and push it to a container registry (github own ghcr.io is fine)
- provide a docker compose example with the telemetry server, mongodb or postgres and grafana in it
- update the documentation
Describe alternatives you've considered
Use OpenTelemetry, but since the goal is to simply monitor the events and scripts execution, it feels like building a tank to just kill a fly.
Additional context
MongoDB Grafana data source is a plugin for the enterprise version; so defaulting to the good old PostgreSQL would be a better option to build a fully open/free stack.
I can help with most of the things (CI, container and compose), but I'm not (yet) proficient at golang to add the endpoints (and the optional envvar parsing).
Also, since the documentation is in notion, there's no way for a contributor here to edit it.