jdudmesh2
Contributor
Contributor

Performance Overview Tab Errors

I have vCenter server on a public IP address. Everything works fine except for the Performance Overview. After much fiddling I've made it work by adding a line to my drivers\etc\hosts file with the vCenter server IP address. It looks like the VI client is calling the webservices using the host name and not the FQDN. I've tried changing the web services URL in the vCenter server config (advanced settings) but this doesn't seem to make any difference.

Any thoughts on how to fix this?

0 Kudos
19 Replies
admin
Immortal
Immortal

Hi,

What is th eerror that you get in Performance tab? Are you using vCenter 4.0?

Thanks.

*if you found this or any other answer useful, please consider allocating points for helpful or correct answers*

0 Kudos
jdudmesh2
Contributor
Contributor

Yes, it's vCenter 4.0. The error is an Internet Explorer error - either Navigation Cancelled or Web Page Cannot be Displayed.

0 Kudos
admin
Immortal
Immortal

This might be because the hostname/IP of vCenter Server is not being resolved.

Please check this xml file to see whether the correct IP/hostname of VC is listed: C:\Program Files\VMware\Infrastructure\VirtualCenter Server\extensions\com.vmware.vim.stats.report\extension.xml

Also, could you paste following URL in your IE browser and check results: https://<hostname/IP of VC>:<TCP Port like 8443>/statsreport/vicr.do

Please accept the security warnings that pops up.

Thanks.

*if you found this or any other answer useful, please consider allocating points for helpful or correct answers*

0 Kudos
jdudmesh2
Contributor
Contributor

Thanks - updating the XML file and restarting the services seems to have solved the problem.

many thanks,

John

0 Kudos
jsalinas2323
Contributor
Contributor

My XML file was correct but for some reason the Tomcat service was stopped. Restarted the service and this resolved my issue. Easy fix, always like those. :smileygrin:

0 Kudos
arakelian
VMware Employee
VMware Employee

The reason I had this problem was because my vSphere Client was in a totally separate domain from vCenter Server. The fix was to change the URL in the following file on the vCenter Server machine, as someone else has already suggested:

C:\Program Files\VMware\Infrastructure\VirtualCenter Server\extensions\com.vmware.vim.stats.report\extension.xml

In my case, the host name was correct and fully qualified, but I had to change the domain part of it to be the same domain as my vSphere Client. This worked okay because the AD for the vCenter Server's domain could do forwarding to resolve the name.

0 Kudos
hansenc
Enthusiast
Enthusiast

I'm having this same issue, getting a page cannot be displayed error from within my vSphere Client from my ISA Proxy.

Tried the address just in internet explorer and get-

Perf Charts service experienced and internal error.

function toggleDetailsMsg() {

var toggleLink = document.getElementById('toggleDetailsLink');

var el = document.getElementById('detailsId');

if ( el.style.display != 'none' ) {

el.style.display = 'none';

toggleLink.childNodes[0].nodeValue='Details:';

}

else {

el.style.display = '';

toggleLink.childNodes[0].nodeValue='Hide Details:';

}

return false;

}|!http://communities.vmware.com/img/error.png!|Perf Charts service experienced and internal error.

View details for more information.|

Message:

java.lang.NullPointerException

Details: \

java.lang.NullPointerException

com.vmware.vim.stats.webui.WebHelper.getManagedObjectReference(Unknown

Source)

com.vmware.vim.stats.webui.action.ViClientRequestAction.configureForward(Unknown

Source)

com.vmware.vim.stats.webui.action.ViClientRequestAction.execute(Unknown

Source)

org.apache.struts.chain.commands.servlet.ExecuteAction.execute(ExecuteAction.java:58)

org.apache.struts.chain.commands.AbstractExecuteAction.execute(AbstractExecuteAction.java:67)

org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51)

org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)

org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:304)

org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)

org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283)

org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)

org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449)

javax.servlet.http.HttpServlet.service(HttpServlet.java:690)

javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)

org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)

org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)

org.apache.catalina.valves.CometConnectionManagerValve.invoke(CometConnectionManagerValve.java:256)

org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)

org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)

org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)

org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)

org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)

org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584)

org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)

java.lang.Thread.run(Thread.java:595)

...

So it seems to be loading not sure if it should give an error within internet explorer or load something.

0 Kudos
hansenc
Enthusiast
Enthusiast

Started to do a little more troubleshooting this morning and i'm watching my logging from wthin our firewall and the url its trying to access is-

Request: GET

http://127.0.0.1:55609/statsreport/vicr.do?&moref=ClusterComputeResource:domain-c57&sessionId=7C86D9...

Failed Connection Attempt

*TPAPSVFTMG01 9/8/2009 10:19:09

AM*

Log type: Web

Proxy (Forward)

*Status:

*10061 No connection could be made because the target machine

actively refused it.

Rule: Allow Protected Networks

Source: Internal (10.50.1.16)

Destination: Local Host

(127.0.0.1:55609)

Request: GET

http://127.0.0.1:55609/statsreport/vicr.do?&moref=ClusterComputeResource:domain-c57&sessionId=7C86D9...

Filter information: Req ID: 0c59cf13

Protocol: http

*User:

*anonymous

0 Kudos
ShaneMartin
Contributor
Contributor

Changing this entry worked a treat.

Thanks for the tip.

0 Kudos
JJ_Cain
Contributor
Contributor

{After much fiddling I've made it work by adding a line to my drivers\etc\hosts file...}

jdudmesh2,

where is this file with the IP address of the vCenter server located? what is the full direcotry path?

======== VCP4, VCP5
0 Kudos
ShaneMartin
Contributor
Contributor

Go to

C:\Program Files\VMware\Infrastructure\VirtualCenter Server\extensions\com.vmware.vim.stats.report\extension.xml

0 Kudos
Petzi02
Contributor
Contributor

My problem was slightly different.

From what I can understand the VMWare client must download the graphs.charts in some sort of HTML files to your local PC. Once this is done it opens a internet browser window(perhaps internet explorer) and looks at you PC local IP address to load the content. This caused problems with our proxy server. Details below

On my PC(not the vSphere server) when using our companies proxy(in IE) the Performance overview tab does not work. Instead I get a proxy page stating access is denied. It seems that the VMWare client displays the performance graphs/charts using a internet browser window component. This component gets its proxy settings from IE. Another thing to note is that unlike IE and Firefox this browser component in VMWare does not do NTLM authentication. Therefore if your proxy server is like our and locked down to certain users etc... it will block these unauthenticated proxy requests.

The temporary fix for me is to disable the IE proxy setting before opening the VMWare client and then the Performance overview tabs works.

The permanent fix will be for us to either.

1. Allow unauthenticated proxy requests to local addresses.

2. Update our proxy pac file so that when it sees local IPs(list below) then to bypass the proxy as they are internal sites that don't need proxy caching and security/monitoring.

"10.0.0.0", "255.0.0.0"

"127.0.0.0", "255.0.0.0"

"172.16.0.0", "255.240.0.0"

"192.168.0.0", "255.255.0.0"

I am going for option 2.

0 Kudos
JJ_Cain
Contributor
Contributor

Thanks for the update. I will try this as well.

======== VCP4, VCP5
0 Kudos
Adminafterwork
Enthusiast
Enthusiast

Dear gents

I corrected my host settings in C:\Program Files\VMware\Infrastructure\VirtualCenter Server\extensions\com.vmware.vim.stats.report\extension.xml, restarted services.

checked config of vcenter advanced settings, host resolution is also working.

:smileyangry: But I couldn't soolve that problem, THANK YOU FOR ANY FURTHER TIPS !

cheers

0 Kudos
gnmugoya
Contributor
Contributor

Hi All,

I am also having the same error on two of my VSphere VC servers. I changed the hostname and also tried to use the VCservers IP address on the extension.html file with no success.

Here are the errors:

VCSERVER1

Perf Charts service experienced and internal error.

Message:

Report application initialization is not completed successfully. Retry in 60 seconds.

VCSERVER2

Perf Charts service experienced and internal error.

View details for more information.

Message:

java.net.ConnectException: Connection timed out: connect

Hide Details:\

com.vmware.vim.stats.webui.SessionException

com.vmware.vim.stats.webui.form.SessionContextImpl.openConnection(Unknown Source)

com.vmware.vim.stats.webui.form.SessionContextImpl.<init>(Unknown Source)

com.vmware.vim.stats.webui.startup.StatsReportInitializer.createSessionContext(Unknown Source)

com.vmware.vim.stats.webui.WebHelper.createSessionContext(Unknown Source)

com.vmware.vim.stats.webui.WebHelper.getSessionContext(Unknown Source)

com.vmware.vim.stats.webui.WebHelper.getVcUserConnection(Unknown Source)

com.vmware.vim.stats.webui.action.AbstractMEAction.extractManagedObject(Unknown Source)

com.vmware.vim.stats.webui.action.AbstractMEAction.execute(Unknown Source)

org.apache.struts.chain.commands.servlet.ExecuteAction.execute(ExecuteAction.java:58)

org.apache.struts.chain.commands.AbstractExecuteAction.execute(AbstractExecuteAction.java:67)

org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51)

org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)

org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:304)

org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)

org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283)

org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)

org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449)

javax.servlet.http.HttpServlet.service(HttpServlet.java:690)

javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)

org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654)

org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445)

org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379)

org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292)

org.apache.struts.chain.commands.servlet.PerformForward.handleAsForward(PerformForward.java:113)

org.apache.struts.chain.commands.servlet.PerformForward.perform(PerformForward.java:96)

org.apache.struts.chain.commands.AbstractPerformForward.execute(AbstractPerformForward.java:54)

org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51)

org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)

org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:304)

org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)

org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283)

org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)

org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449)

javax.servlet.http.HttpServlet.service(HttpServlet.java:690)

javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)

org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)

org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)

org.apache.catalina.valves.CometConnectionManagerValve.invoke(CometConnectionManagerValve.java:256)

org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)

org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)

org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)

org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)

org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)

org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584)

org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)

java.lang.Thread.run(Thread.java:595)

...

Any ideas please?

0 Kudos
Pneumatix
Contributor
Contributor

I had the same problem as describe by Petzi02.

The correction with the proxy.pac file work fine Smiley Happy

0 Kudos
gnmugoya
Contributor
Contributor

I called VMware Tech support in Toronto yesterday about the error and they informed me that there is going to be a fix(update) that will be released ed of Nov 2009 to fix the error. I will post it once they send it to me.

0 Kudos
meistermn
Expert
Expert

Is the fix in vsphere update 1 included ?

0 Kudos
GixxerDave
Enthusiast
Enthusiast

Also check your firewall on the computer where the client is running from. Disable your firewall and see if you can see the performance, if so then ass the port 8443 to be allowed. Make sure to turn your firewall backon.

0 Kudos