Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve Telemetry Server #2157

Open
8 tasks
sanzoghenzo opened this issue Mar 16, 2024 · 2 comments
Open
8 tasks

Improve Telemetry Server #2157

sanzoghenzo opened this issue Mar 16, 2024 · 2 comments
Labels
New Feature New feature request [class->Implemented #{number}: {title}]

Comments

@sanzoghenzo
Copy link
Contributor

sanzoghenzo commented Mar 16, 2024

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.

@sanzoghenzo sanzoghenzo added the New Feature New feature request [class->Implemented #{number}: {title}] label Mar 16, 2024
@jmcouffin
Copy link
Contributor

since the documentation is in notion, there's no way for a contributor here to edit it.

I can help with that.

@github-actions github-actions bot added the needs-more-info Issue required to follow the bug report template. Triggered by the stale issue workflow label Mar 17, 2024
@dosymep
Copy link
Member

dosymep commented Apr 4, 2024

I can rewrite my telemetry server (simple port Go server to .net), but I need time 🫠

I use PowerBI with MongoDB and create simple report.

https://github.com/Bim4Everyone/Bim4EveryoneTelemetry

markup_1000019648

@github-actions github-actions bot removed the needs-more-info Issue required to follow the bug report template. Triggered by the stale issue workflow label Apr 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
New Feature New feature request [class->Implemented #{number}: {title}]
Projects
None yet
Development

No branches or pull requests

3 participants