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

Prometheus Endpoint for metrics #3239

Open
Tracked by #3229
ZoesDev opened this issue Nov 26, 2024 · 1 comment
Open
Tracked by #3229

Prometheus Endpoint for metrics #3239

ZoesDev opened this issue Nov 26, 2024 · 1 comment
Labels
feature User-facing features and product enhancements

Comments

@ZoesDev
Copy link

ZoesDev commented Nov 26, 2024

Describe the solution you'd like
It would be great to have an endpoint ether built in (you can use https://github.com/prometheus/client_ruby) or using an API as a separate exporter, that exposes metrics and statistics of the running manyfold. By having this endpoint as ether way, It will allow people to use standard monitoring tools that they are use to for anything that can ingest Prometheus endpoints. The benefits of using a Prometheus based endpoint is that it is a pulling based monitoring solution and in such case will just need a page that pulls the more recent information from below on each scrape from the Prometheus sever. By having these metrics, we can have better insight into issues and throttling before it starts to effect the application running.

Some of the main metrics that would be great to have are

  • user count
  • Library count
  • model count
  • file count
  • tag count ( total amount of tags)
    • how many models are on each tag ( so we can see which tags have the most on say grafana)
  • creator count
  • everything listed under /admin/performance if possible

Nice to have metrics

  • downloads count of each model/file
  • disk space used for each library (not sure if this is tracked internally or not. if not it can be gotten using other tools easily enough)

Describe alternatives you've considered
I have started minor work on this feature myself using Nodejs using the database to get a few of features listed above into my monitoring stack. Having a REST API with an auth token for security, I can change paths on my design to use less resources over all and be easier on the system preventing deadlocks that may happen currently.

Additional context
some examples of well designed exporters are

@ZoesDev ZoesDev added the feature User-facing features and product enhancements label Nov 26, 2024
@Floppy
Copy link
Collaborator

Floppy commented Nov 26, 2024

Fantastic, thank you for all the detail!

@Floppy Floppy mentioned this issue Nov 26, 2024
2 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature User-facing features and product enhancements
Projects
Development

No branches or pull requests

2 participants