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

eye timed out without responding... #99

Closed
dmerrick opened this issue Dec 8, 2014 · 5 comments
Closed

eye timed out without responding... #99

dmerrick opened this issue Dec 8, 2014 · 5 comments

Comments

@dmerrick
Copy link

dmerrick commented Dec 8, 2014

Hello,

We use eye to manage a large set of resque processes... currently around 100 per server.

Unfortunately, running eye info occasionally times out, due to the low default client timeout set by eye (5 seconds).

We'd like to be able to increase that timeout easily, but the only way we could is by monkey-patching Eye::Client#attempt_command (and I don't think that is working anyway).

Is there a better way to go about this? If not, could we add an easy-to-configure timeout for configurations with many subprocesses?

@kostya
Copy link
Owner

kostya commented Dec 8, 2014

I very rare saw client timeout, for server with 134 processes, eye info 0.381s.
5s actually is a pretty much. May be you have very big LA for the server, or may be using some custom checks (which mistakenly not using defer, and block process actors). Also you can enable debug logger to see time which server spend to prepare info command.
I think we can add timeout by env variable, like this: EYE_CLIENT_TIMEOUT=10 eye i

@dmerrick
Copy link
Author

dmerrick commented Dec 8, 2014

What does LA mean?

We don't have custom checks, but we have 100 processes, each with daemonize true and they each have a child. So it's managing 200 pids in total.

I'd like to be able to run eye info (or even eye oinfo) across ~50 servers at the same time and parse their output, but the timeout issue makes it unreliable. The EYE_CLIENT_TIMEOUT env variable would be enough for me!

@kostya
Copy link
Owner

kostya commented Dec 8, 2014

LA is server load average.
Not need to parse, you can output json, eye i -j.

@dmerrick
Copy link
Author

dmerrick commented Dec 8, 2014

Ah, yes, we have a very high LA. That being said, we don't mind waiting for output from eye.

That's a great trick about the JSON output, thanks!

@kostya kostya closed this as completed in 87e43bc Dec 9, 2014
@dmerrick
Copy link
Author

dmerrick commented Dec 9, 2014

Thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants