Check connection state #16
Labels
No labels
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
wontfix
bug
duplicate
enhancement
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: DGNum/uptime-kuma-api#16
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Hello,
Is there some function to check if the connection is already established and login is done?
Trying to get_monitors without previous login, results in a "no end" call. Should this has some timeout?
I don't know if the login expires at some point.
However, it is possible that there is no longer a connection to the server due to a timeout or a connection failure.
Currently there is no way to check this, except to recreate the instance and log in again in case of such an exception.
Has this happened more than once? Can you determine a pattern? How long does it take before the connection gets lost?
I tried to force some kind off network failure in order to get some error, but had no success, even if after a network error, your lib keeps working.
But, it is expected to have some kind of failure behavior that requires a new login.
The point is avoid login on each call. I have a remote probe to use with "push" monitor type today getting the sensor configuration from a local configuration, but I want top get this from some tags in the monitor to have it more dynamic, to do this I create an API using your package to call it from my code that is C#, and this call will happen each minute.
By the way, your lib helped a lot since there is no official implementation for get sensors details directly from UptimeKuma.
This is my App if can be usefull for you: UptimeKumaRemoteProbe
I had a similar problem. I think even an invalid login might hang the process.
The only way I found to unstuck was to disconnect it.
So I just wrap the code into a try-catch block (so errors wont block code execution) and then disconnect at the end:
I wraped the get_monitors inside a function with this lib wrapt_timeout_decorator
This way if I dont get a proper return, I can take another action like login again.
Wanted to all of you guys, thanks for the amazing work you have just both literally saved me so so so much work.