I have 3 pi 4 2gb models running for my 3 printers I have. 2 of the three update just fine but one does not seem to update anymore. They are all running identical images and I have kept things updated. This behavior started for the one within the last week or two. When I look at the Software Update in settings some but not all plugins indicate in red " Rate limit exceeded while checking for update, please try again later". I try again later and I get the same error. There is no issue using the octoprint set-up with my printer just cannot update the one.
What did you already try to solve it?
I tried a complete shut down and restart, no issues with power delivery that I see.
Have you tried running in safe mode?
No I have not.
Did running in safe mode solve the problem?
NA
Complete Logs
octoprint.log, serial.log or output on terminal tab at a minimum, browser error console if UI issue ... no logs, no support! Not log excerpts, complete logs.) octoprint.log (66.0 KB)
WRITE HERE
Additional information about your setup
OctoPrint version, OctoPi version, printer, firmware, browser, operating system, ... as much data as possible
Running OctoPrint 1.5.3. Most plugin's are updated routinely except for 1 or 2 that won't update now since it does not see them as needing an update even though I know is it an older version.
GITHUB only allows a specific amount of queries per hour from any IP address. so your external IP (Cable co. assigned to the router) is what it sees. if more than a specific number of requests are made, you will get that message and usually have to wait 60-90 minutes to check again. If you have a ton of plugins, you could see that before it finishes all of them.
Not an octoprint issue, but just the way GITHUB is set up
Thanks for the reply. Why would this not be an issue before then? It seems is just started recently. Did they change something?
The other two pi's with the same octoprint image don't have this issue and they would be on the same IP. Why wouldn't I get that message for those two and only on select plugins? How can I adjust it so it will check less often or only when I tell it to?
Sorry for all the questions just trying to process this and problem solve the issue.
If the other 2 are checking for updates, and say they each have 12 plugins each, and the pi with the issue is checking last, by the time the new pi checks it's already had 24 queries before it gets to the last one. (One query for each plugin) so if it allows 34 queries in an hour, then 10 will check good and the last 2 will give you the error message. I believe you can set update frequency under updates
I will play around with that but it had been working fine for months with no issues. I just saw advanced option in the bottom of the software update section and told it to force check for updates and it worked. I will need to see if it continue to function. Maybe the cache was messed up?
You can add a personal API key for your own github account in config.yaml to try and increate the limits.
plugins:
softwareupdate:
# global credentials to provide to version checks
credentials:
# GitHub API token to use for the github_release and github_commit version checks.
# Helpful if you regularly run into rate limit issues with the GitHub API using
# the default anonymous access. Use a personal access token:
# https://docs.github.com/en/free-pro-team@latest/github/authenticating-to-github/creating-a-personal-access-token
# Unset by default
github:
most likely it had automatically checked within the last hour, and forcing the updated just added up to max queries exceeded before it checked all the plugins
To answer this - the update check previously failed silently, as of 1.5.0 there's a warning in the UI. The rate limit is 60 requests per hour, which can be easily exceeded since each plugin and OctoPrint itself uses at least one request.
Thanks Charlie, that makes sense. I have looked at how I can add the API key for github. I am trying to figure it out but is there a tutorial somewhere on how to do this to prevent this rate limited error from happening? It sounds like you can increase the checks using this method?
Is is possible to get an example of what I need to add to the config.yaml file? It sounds like I get a key from github and enter it in somehow?
I was going to suggest using the config CLI but due to a bug that's currently broken.
So you have to find the config.yaml file, open it up and find the plugins section, and then the softwareupdate section. You will have to create the credentials section, then add your token. The example given above should be enough, there's probably a bunch of other plugins settings in there so you probably will have to do some digging. Be sure to use 4 spaces to indent, not tabs.
So in this example from Jneilliii I would simply add my API token after the 'github:' entry? Is there some specific way I need to type the key in or just enter it in after the entry?
For Example:
github: githubAPIkeyhere
Also to edit the config.yaml file I simply need to enter 'sudo config.yaml'?