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

Probot Metrics #957

Closed
lswith opened this issue Jul 3, 2019 · 5 comments

Comments

@lswith
Copy link

commented Jul 3, 2019

Feature Request

Is your feature request related to a problem? Please describe.
There is a hard limit on how many github api calls can be made from a specific user. The current api limit is 5000 per hour. Being able to track how many github api calls have been made is needed.

Describe the solution you'd like
I'd like to be able to collect metrics from probot. The metrics I'd like to collect are:

  • how many github api calls have been made
  • how many webhook requests have been received
  • how long it took for a specific event to be handled

Describe alternatives you've considered
Adding it into the bot itself through editing the server directly.

Teachability, Documentation, Adoption, Migration Strategy
If you can, explain how users will be able to use this and possibly write out a version the docs.
Maybe a screenshot or design?

@issue-label-bot

This comment has been minimized.

Copy link

commented Jul 3, 2019

Issue-Label Bot is automatically applying the label enhancement ➕ to this issue, with a confidence of 0.91. Please mark this comment with 👍 or 👎 to give our bot feedback!

Links: app homepage, dashboard and code for this bot.

@gr2m

This comment has been minimized.

Copy link
Contributor

commented Jul 3, 2019

We handle the rate limit in latest probot by throttling requests as needed. It’s more complex that counting requests. The implementation is here: https://github.com/octokit/plugin-throttling.js

GitHub
Octokit plugin for GitHub’s recommended request throttling - octokit/plugin-throttling.js
@lswith

This comment has been minimized.

Copy link
Author

commented Jul 3, 2019

That's perfect! I agree that it is more complex than counting requests but it's nice to have metrics from an operations point of view. Are metrics still in the works?

@tcbyrd

This comment has been minimized.

Copy link
Contributor

commented Jul 16, 2019

We typically track metrics in external solutions like New Relic/Datadog internally. The challenge with this ask is tracking API requests per installation. I think it's definitely useful, but I'm not sure how it could be done in Probot itself. For example in a Lambda function, we simply couldn't track calls inside the framework. What you're suggesting would require an external service to monitor what's happening across the entire app. For Stale I'm experimenting with Logz.io, which is basically an ELK/Grafana solution as a service. This has given me some decent observability and is free for up to 3GB of data/day.

@stale

This comment has been minimized.

Copy link

commented Sep 14, 2019

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the wontfix label Sep 14, 2019

@stale stale bot closed this Sep 21, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
3 participants
You can’t perform that action at this time.