Knowledge Base
The VMware Knowledge Base provides support solutions, error messages and troubleshooting guides

|
Performance Overview charts fail with STATs Report Service internal error (1012812)
Resolution
Troubleshooting
When accessing the Performance Overview tab in vCenter Server or VirtualCenter Server, it attempts to establish a connection to the database server. These errors indicate that there is a problem connecting to the database server.
Events that are logged within the Tomcat logs provide information about the failing services that are attempting to connect to the database.
To locate and examine the Tomcat log files:
Events that are logged within the Tomcat logs provide information about the failing services that are attempting to connect to the database.
To locate and examine the Tomcat log files:
-
Open Windows Explorer.
-
Navigate to:
%ProgramFiles%\VMware\Infrastructure\tomcat\logs\
Note: In vCenter Server 4.1, the stats.log file is located at C:\ProgramData\VMware\VMware VirtualCenter\Logs\. -
Search the stats.log file for the words [ERROR] or [FATAL].
-
Record any events that have been logged with the above words. Proceed to Causes to troubleshoot these events.
Causes
TCP Port Usage
This issue can occur if you use a non-standard / dynamic SQL port on the database server. The Performance Overview uses TCP Port 1433 to connect to the database by default. If the plug-in attempts to establish a connection to the database server and the SQL server is running on another port, you may observe an event similar to:
[ERROR] com.vmware.vim.stats.webui.startup.StatsApplicationLauncher : Task execution produced an error. Re-initialization attempt #62 will startup after 60 seconds...
java.util.concurrent.ExecutionException: java.lang.IllegalStateException: com.vmware.vim.stats.webui.StatsReportException: Unable to open VC DataSource.
at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:205)
at java.util.concurrent.FutureTask.get(FutureTask.java:80)
at com.vmware.vim.stats.webui.startup.StatsApplicationLauncher$1.run(Unknown Source)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.lang.IllegalStateException: com.vmware.vim.stats.webui.StatsReportException: Unable to open VC DataSource.
To determine the port SQL 2005 server is using:
-
Click Start > Programs > Microsoft SQL Server 2005 > Configuration Tools > SQL Server Configuration Manager.
-
Click SQL Server 2005 Network Configuration > TCP/IP > TCP/IP Properties > IP Addresses.
-
Confirm the TCP Port setting in IP1, IP2 and IPAll.
-
If changing the port, input the port in IP1, IP2 and IPAll, then click OK.
-
Restart the VirtualCenter Management Webservices. For more information, see Stopping, starting, or restarting vCenter services (1003895).
Note: If you are using a different version of Microsoft SQL or a different database service, consult the vendor documentation on how to change the TCP/IP settings for your database server.
- Click Start > Programs > Microsoft SQL Server 2008 > Configuration Manager
- Click Protocols for MSSQLSERVER > TCP/IP > TCP/IP Properties > IP Addresses
- Confirm the TCP Port setting in IP1, IP2 and IPAll.
- If changing the port, input the port in IP1, IP2 and IPAll, then click OK.
- Restart the VirtualCenter Management Webservices. For more information, see Stopping, starting, or restarting vCenter services (1003895).
Note: If you are using a different version of Microsoft SQL or a different database service, consult the vendor documentation on how to change the TCP/IP settings for your database server.
Java Database Connectivity (JDBC) configuration settings
The Performance Overview plugin requires that the settings within the registry and the context.xml file reflect the DNS, IP, or TCP Port number of the SQL server. If the registry is not configured correctly, you may observe an event similar to:
The Performance Overview plugin requires that the settings within the registry and the context.xml file reflect the DNS, IP, or TCP Port number of the SQL server. If the registry is not configured correctly, you may observe an event similar to:
[ERROR] com.vmware.vim.stats.webui.startup.StatsApplicationLauncher : Task execution produced an error. Re-initialization attempt #62 will startup after 60 seconds...
java.util.concurrent.ExecutionException: java.lang.IllegalStateException: com.vmware.vim.stats.webui.StatsReportException: Unable to open VC DataSource.
at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:205)
at java.util.concurrent.FutureTask.get(FutureTask.java:80)
at com.vmware.vim.stats.webui.startup.StatsApplicationLauncher$1.run(Unknown Source)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.lang.IllegalStateException: com.vmware.vim.stats.webui.StatsReportException: Unable to open VC DataSource.
If you are using a custom SQL port, replace port 1433 in the configuration files below with your custom SQL port. To ensure that configuration files and registry are properly configured:
Note: For vCenter 4.x, see vCenter Server fails to populate performance charts and displays an error message when using a custom JDBC SQL port (1012812).
Note: For vCenter 4.x, see vCenter Server fails to populate performance charts and displays an error message when using a custom JDBC SQL port (1012812).
-
Stop the VMware VirtualCenter Management Webservices service on the vCenter Server. For more information, see Stopping, starting, or restarting vCenter services (1003895).
-
Open Windows Explorer.
-
Locate the file context.xml at ProgramFiles%\VMware\Infrastructure\tomcat\webapps\statsreport\META-INF\.
Note: In vCenter Server 4.0 Update 1, the configuration file is located at C:\Program Files\VMware\Infrastructure\tomcat\conf\Catalina\localhost\statsreport.xml. -
Open context.xml and locate the line that appears similar to:
<Resource auth="Container" name="jdbc/StatsDS" url="jdbc:sqlserver://<serverName>:<port>;instanceName=<instanceName>;
databaseName=<databaseName>;integratedSecurity=true" /> -
Change the url= statement to explicitly state the JDBC connection with a port number.
Note: Ensure that the line is not commented using the <!-- and --> characters.
For example, if you are using an Oracle database, change the url= statement to:
url="jdbc:oracle:thin:@<ip/fqdn or netbios name of oracle server>:<port of oracle server>:<SID>"
username="<dbUsername>"
password="<dbPassword>"
Note: Only use a username and password when absolutely necessary. If SYSTEM_DSN is used then there is a bridge between the ODBC cached username/password to the Oracle JDBC driver and the credentials do not need not be specified here.
If you are using a Microsoft SQL database change the url= statement to:
<Resource auth="Container" name="jdbc/StatsDS" url="jdbc:sqlserver://VCS:1433;instanceName=SQLEXP_VIM;databaseName=
VIM_VCSDB;integratedSecurity=true;" />
Notes:-
The content within the < > brackets must be set to your servername, port, instancename and databasename.
-
If no instanceName is available, the instanceName value is the same as the SQL servers NETbios name.
-
The plugin uses Java Database Connectivity (JDBC) to connect to the database. In the URL, ensure that the sqlserver shortname, port, instance name and database name are configured correctly.
-
For remote SQL servers, when using SQL authentication you may have to change integratedSecurity=true to integratedSecurity=false. If the line does not exist in the file, you can insert it.
-
-
Start the VirtualCenter Management Webservices service. For more information, see Stopping, starting, or restarting vCenter services (1003895).
Note: In some cases restarting the VirtualCenter Management Webservices is not required.
Registry or Configuration File Settings
This issue may occur if the FQDN or shortname of the SQL or Oracle server in the ODBC System DNS configuration or tnsnames.ora file does not match the vCenter Server's registry settings.
To resolve this issue:
-
Click Start > Run, type regedit, and click OK.
Note: For 64-bit Windows operating systems, type %systemroot%\syswow64\regedit and click OK. -
Navigate to the key \HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ODBC\ODBC.INI\<odbc_name> on 64 bit systems or \HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\<odbc_name> on 32 bit systems.
Note: The <odbc_name> represents the name of the appropriate ODBC connection. -
Click Edit > New > String value.
-
Edit the name column to Server.
-
Edit the value column include the SQL Server's fully qualified domain name (FQDN).
-
Restart VirtualCenter Management Webservices. For more information, see Stopping, starting, or restarting vCenter services (1003895).
This issue can occur if your browser settings are incorrect. For more information, see Performance Overview charts do not work (1028501).
Service Users and Permissions
The Performance Overview plugin requires that the vCenter Server and vSphere Management Webservice service have the same permissions. If each of the services are running as different users, you may observe an event similar to:
The Performance Overview plugin requires that the vCenter Server and vSphere Management Webservice service have the same permissions. If each of the services are running as different users, you may observe an event similar to:
[FATAL] com.vmware.vim.stats.webui.startup.VcDataSourceInitializer : Unable to open VC DataSource. Details: Cannot create PoolableConnectionFactory (Login failed for user org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Login failed for user...
To determine if the Management Webservices service is running under a different account than the vCenter Server service, check the Tomcat logs at %ProgramFiles%\VMware\Infrastructure\VirtualCenter Server\tomcat\logs\stats.log
Note: In vCenter Server 4.1, the stats.log file is located at C:\ProgramData\VMware\VMware VirtualCenter\Logs\.
To ensure that you are using the same credentials for both services:
-
Click Start > Settings > Control Panel, then double-click Administrative Tools.
-
Double-click Services.
-
Right-click the VirtualCenter Server service, and click Properties.
-
On the Log On tab, change the password, and click Apply.
-
On the General tab, click Start to restart the service. For more information, see Stopping, starting, or restarting vCenter services (1003895).
-
Repeat steps 2 to 5 for the vSphere Management Webservice service.
-
Quit the Services tool.
Oracle Java Dependencies
Oracle must use a specific version of JAR files to function properly with the Performance Overview plugin. VMware does not install the Oracle ojdbc5.jar file with the overview performance charts due to licensing constraints. VMware installs a placeholder file.
To ensure that you are using the correct JAR files:
-
Go to the Oracle Technology Network and download the ojdbc5.jar file that is distributed with Oracle 11g or later.
Note: ojdbc5.jar is compatible with both Oracle 10g and 11g databases. -
Copy the downloaded file to %ProgramFiles%\VMware\Infrastructure\tomcat\lib.
-
Click Yes when prompted to overwrite the existing file.
-
Restart VirtualCenter Management Webservices. For more information, see Stopping, starting, or restarting vCenter services (1003895).
Tomcat Java Dependencies
Tomcat must use a specific version of the jvm.dll file to function properly.
To ensure that you are using the correct version of the DLL:
-
Click Start > All Programs > VMware > VMware Tomcat > Configure Tomcat.
-
In the Java tab, ensure the Java Virtual Machine (JVM) entry points to %ProgramFiles%\VMware\Infrastructure\jre\bin\server\jvm.dll.
-
Restart the VirtualCenter Management Webservices. For more information, see Stopping, starting, or restarting vCenter services (1003895).
SQL Browser Service
The SQL Browser Service must be running on the vCenter Server database. If the service is not running this appears in %ProgramFiles%\VMware\Infrastructure\VirtualCenter Server\tomcat\logs\stats.log:
Note: In vCenter Server 4.1, the stats.log file is located at C:\ProgramData\VMware\VMware VirtualCenter\Logs\.
Note: In vCenter Server 4.1, the stats.log file is located at C:\ProgramData\VMware\VMware VirtualCenter\Logs\.
- com.vmware.vim.stats.webui.StatsReportException: Unable to open VC DataSource.
- Caused by: org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (The connection to the named instance has failed. Error: java.net.SocketTimeoutException: Receive timed out.)
- Caused by: com.microsoft.sqlserver.jdbc.SQLServerException: The connection to the named instance has failed. Error: java.net.SocketTimeoutException: Receive timed out.
To ensure that theSQL Browser service is running on the vCenter Server database:
- Connect to the SQL server running the vCenter Server database.
Note: This may be local or remote to the vCenter Server. To locate the ODBC System DSN configuration settings, see vCenter Server installation fails with ODBC and DNS errors (1003928).
- On the server with SQL installed, click Start > Run, type services.msc, then press Enter.
- Right-click the SQL Browser service and click Properties.
- Ensure that the SQL Browser is set to Automatic and that the Service Status is Started.
TNS issue - Oracle Database
If the TNS_ADMIN System Environment Variable is not set. Add the directory containing the tnsnames.ora file to System Environment to resolve this issue.
- To check this, open a dos window and type:
echo %TNS_ADMIN%
- If it does not return the location of TNS_ADMIN (for example C:\Oracle) then set the path in the Environment Variables.
- Add the new environment variable under System , Name the key as TNS_ADMIN and set the Value to the directory containing the tnsnames.ora file. For example, C:\Oracle.
- Click OK to save the settings.
- Restart the Web Services and check if the issue persists.
Additional Information
Note: The following error as outlined in KB symptoms:
Caused by: java.lang.IllegalStateException: com.vmware.vim.common.vdb.VdbException: Unknown DSN type for vCenter: type = SQL Server, driver = C:\Windows\syste m32\SQLSRV32.dll at com.vmware.vim.common.lifecycle.InitializerExecutor$MonitorCallback$1.run(Unknown Source) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at
This error message may also occur as a result of the incorrect type of DSN. When using the SQL Native Client driver instead of the SQL Native Client 10 driver, this message may be reported and related performance overview chart issues may occur.
To check this, look at the ODBC connection and verify that the DSN is a System DSN, and is using the SQL Native Client 10 Driver.
Tags
See Also
- Stopping, starting, or restarting vCenter services
- vCenter Server installation fails with ODBC and DSN errors
- Performance Overview charts fail with STATs Report Service internal error
- Performance Overview charts do not work
- Viewing performance charts in vCenter Server 4.1 fails with the error: Perf Charts service experienced an internal error
This Article Replaces
1009833
1010243
1009872
1008884
1017338
Request a Product Feature
To request a new product feature or to provide feedback on a VMware product, please visit the Request a Product Feature page.
Actions
KB:
- Updated:
- Categories:
- Languages:
- Product Family:
- Product(s):
- Product Version(s):

