"Personal dashboards" shows this server is offline or unreachable
Migrated a 3011 server from one machine to another, then upgraded it to 4.0.2. After the upgrade, all applications seem to communicate OK. However, when clicking on the Home icon, the Personal Dashboards section shows "this server is offline or unreachable". No dashboard can be loaded.
The following error is found in jts.log: 2013-05-30 11:59:28,689 [ http-bio-9443-exec-32] ERROR m.dashboard.service.internal.DashboardQueryService - Error handling POST on /jts/dashboard-query java.net.SocketTimeoutException: Read timed out at java.net.SocketInputStream.socketRead0(Native Method) at java.net.SocketInputStream.read(SocketInputStream.java:140) |
5 answers
Hi Kot,
The dashboard (and other JFS consumers that use the HTTP API) communicate with other services via local HTTP requests. This means it's important that the server be able to make a local HTTP request to its public URL, otherwise dashboards won't work. The error message indicates that the local request from the dashboard query service to the JFS query service timed out. The most common cause for this is firewalls - if the server happens to go out on the network while trying to make a request to itself, it can get blocked by a firewall, resulting in error message like this. A good test to do is try to ping the server's public URL from the server (make it ping itself). If it's unable to do so, then there is something blocking the request. I recommend adding an entry in /etc/hosts to resolve the server's public URL to a local IP so that the local requests does not go on the network at all. This will not only prevent such problems, but will also make the server faster. |
Hi Curtis,
Are there any other possible causes? The user confirmed that the entry is already in the hosts file and that he can ping the URL from the server itself. |
Can you confirm that the hosts file has an IP like 127.0.0.1 and not the server's external IP? You may be able to use other tools like traceroute to see where the request is going.
Also note that firewalls may block only some ports, so try something like "telnet <hostname> <port>", where hostname is the host in the public URL, and port is the HTTPS port of the JTS (default 9443). See whether it can open a connection, or if it just gets stuck at "Trying <ip>..." Last note, DNS lookups are cached indefinitely on the Jazz servers (I'm not sure if this is a Java thing or just the client we're using), so if you've changed the way the public URL resolves to an IP (like editing the /etc/hosts file) without restarting the JVM, then it's probably still going to the old one. |
I know the server does not have internet. There could be something blocking. Any suggestions on how to verify?
Is there a reason why the 3.0.1.1 dashboards were working before the 4.0.2 upgrade?
I am going to try a clean 4.0.2 install to see if I can reproduce the issue to eliminate the upgrade as the issue.
Comments I can't think of any reason why 3.x would behave differently than 4.0.2 here. It's possible that it's the keys, but I would have expected to see a different error in the logs if that were the case. Are you still seeing the "java.net.SocketTimeoutException: Read timed out" in the logs every time this happens? That one definitely hints at a network issue, can't think of any other obvious reason.
Michael Thai
commented Jun 04 '13, 11:34 a.m.
The 4.0.2 clean install dashboards are appearing. I think we can eliminate the server as the issue. Could it be the inbound and outbound keys? I wonder if this has something to do with the fact that this server has gone thru server rename. Could it be that it is trying to reach out to the old URL and since it does not have internet access, it times out?
Michael Thai
commented Jun 04 '13, 12:22 p.m.
I tried it the upgrade without the rename yesterday and the problem still existed.
Both the old URL and new are in the host file so they return the IP of the server.
|
Your answer
Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.