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

[Dashboard] Improve handling of logs and errors in dashboard backend #5857

Merged
merged 2 commits into from Oct 10, 2019
Merged

[Dashboard] Improve handling of logs and errors in dashboard backend #5857

merged 2 commits into from Oct 10, 2019

Conversation

mitchellstern
Copy link
Contributor

@mitchellstern mitchellstern commented Oct 7, 2019

Why are these changes needed?

This addresses an efficiency issue in the initial version of the dashboard backend wherein the full set of logs and errors were being sent on every update. This PR introduces a better solution where only the log and error counts are sent by default, with two new API routes for retrieving logs and errors themselves (either for a specific (IP address, PID) pair or everything for a single IP address).

This PR moreover unifies the backend handling of logs and errors through the consistent use of IP addresses as identifiers, instead of using IP addresses for logs and hostnames for errors.

In addition, a minor discrepancy on some systems in the reporter is fixed by replacing a the custom determine_ip_address() function with a call to ray.services.get_node_ip_address().

CC @simon-mo @robertnishihara

Related issue number

N/A

Checks

@mitchellstern mitchellstern changed the title Improve handling of logs and errors in dashboard backend [Dashboard] Improve handling of logs and errors in dashboard backend Oct 7, 2019
@AmplabJenkins
Copy link

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Ray-PRB/17533/
Test FAILed.

@simon-mo simon-mo self-assigned this Oct 8, 2019
@mitchellstern
Copy link
Contributor Author

This PR also includes some minor UI updates.

General dashboard:

localhost_3000_

Log display:

localhost_3000_ (1)

Error display:

localhost_3000_ (2)

@AmplabJenkins
Copy link

Can one of the admins verify this patch?

Copy link
Contributor

@simon-mo simon-mo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Few minor comments. Otherwise looks good! I really like the massive refactoring of hostname -> ip

python/ray/dashboard/dashboard.py Outdated Show resolved Hide resolved
python/ray/dashboard/dashboard.py Outdated Show resolved Hide resolved
@simon-mo
Copy link
Contributor

simon-mo commented Oct 8, 2019

jenkins add to whitelist

@virtualluke
Copy link
Contributor

Was anything done to remove the token, or is anyone doing anything interesting with say nginx to make access to the webserver easier than reconfiguring nginx each time? I mean I could of course set up a reverse tunnel each time as well but would be better if the uri anchors worked long-term in a reverse proxy (like nginx).

@mitchellstern
Copy link
Contributor Author

Was anything done to remove the token, or is anyone doing anything interesting with say nginx to make access to the webserver easier than reconfiguring nginx each time? I mean I could of course set up a reverse tunnel each time as well but would be better if the uri anchors worked long-term in a reverse proxy (like nginx).

Hi @virtualluke, we'll be removing the token and addressing some of the other concerns brought up on the Ray Slack group in a separate PR right after this one, thanks.

@AmplabJenkins
Copy link

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Ray-PRB/17565/
Test FAILed.

@ericl ericl merged commit 195ca43 into ray-project:master Oct 10, 2019
@mitchellstern mitchellstern deleted the dashboard-backend branch October 10, 2019 19:03
esseivaju pushed a commit to esseivaju/ray that referenced this pull request Nov 21, 2019
…ay-project#5857)

* Improve handling of logs and errors in dashboard backend

* Update nested dict comprehension for clarity
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

Successfully merging this pull request may close these issues.

None yet

5 participants