Problem launching the diagnostics server url

If you are unable to launch Diagnostics server URL http://<Diagnostics Server>:2006 , this happens because the archive folder in the Server folder of the Diagnostics Server installation is huge and when launching the javaw.exe process is taking up high CPU.

This issue can be resolved by renaming the archive folder in the Server folder on the Diagnostics Server.

Configure non-IIS applications in .NET Probe

Non-IIS apps are standalone .NET applications that run as processes outside of IIS. By default the Diagnostics .NET probe does not detect .NET applications which are not members of an ASP.NET “application domain”. We need to identify application process name using Task Manager. After, we manually add a process entry in the probe_config.xml. Finally, applications/services must be restarted conventionally.

Example:

<process name="CustomerAppName.exe">

<points file="mypoints.points"/>

</process>

Silent install of .NET Agent

To perform a silent install of the .NET Agent use the following commands:

For silent install, e.g.:

cmd /c msiexec /quiet /i "C:\DotNetAgentSetup_x86.msi" MEDIATORHOST="<MEDIATOR_HOST>" PROBEGROUP="<dotNet_GROUP>" INSTALLLOCATION="dotNETPROBE_HOMEDIR>" /log dotNetProbe_install.log

For silent un-install, e.g.:

cmd /c msiexec /quiet /x "C:\DotNetAgentSetup_x86.msi" REMOVELOGS="yes" REMOVECONFIG="yes" /log dotNetProbe_rm.log

or

msiexec /x "D:\Diagnostics_Installers\HPDiagTV.NetAgt_9.10_win32.msi" REMOVELOGS="yes" REMOVECONFIG="yes" /qn /log c:\dotNetProbe_rm.log

For more details about the above commands please refer to:

http://msdn.microsoft.com/en-us/library/windows/desktop/aa372024(v=vs.85).aspx

http://technet.microsoft.com/en-us/library/cc759262(v=ws.10).aspx#BKMK_Uninstall

Error: “ADMN0022E: Access is denied for the getState operation on Server MBean because of insufficient or empty credentials.” is reported by WebSphere 7.x when probed with HP Diagnostics

Having configured an HP Diagnostics Java Agent 9.01 probe on a WebSphere 7.x application server to allow JMX metrics information to be accessed, the following error is reported in the WebSphere server log:

[03-02-12 10:21:50:579 CET] FFDC Exception:javax.management.JMRuntimeException SourceId:com.ibm.ws.management.AdminServiceImpl.invoke ProbeId:422 Reporter:com.ibm.ws.management.AdminServiceImpl@49024902

javax.management.JMRuntimeException: ADMN0022E: Access is denied for the getState operation on Server MBean because of insufficient or empty credentials.

at com.ibm.ws.management.AdminServiceImpl.preInvoke(AdminServiceImpl.java:2370)

at com.ibm.ws.management.AdminServiceImpl.preInvoke(AdminServiceImpl.java:2180)

at com.ibm.ws.management.AdminServiceImpl.preInvoke(AdminServiceImpl.java:2080)

at com.ibm.ws.management.AdminServiceImpl.preInvoke(AdminServiceImpl.java:2053)

at com.ibm.ws.management.AdminServiceImpl.getAttribute(AdminServiceImpl.java:852)

at com.ibm.ws.management.PlatformMBeanServer.getAttribute(PlatformMBeanServer.java:673)

at com.mercury.diagnostics.capture.metrics.jmx.WebSphereJMXCollector.isStartupCompleted(WebSphereJMXCollector.java:173)

at com.mercury.diagnostics.capture.metrics.jmx.WebSphereJMXCollector.doInitialize(WebSphereJMXCollector.java:74)

at com.mercury.diagnostics.capture.metrics.jmx.JMXCollector.initialize(JMXCollector.java:141)

at com.mercury.diagnostics.capture.metrics.CollectorControl.initialize(CollectorControl.java:385)

at com.mercury.diagnostics.capture.metrics.CollectorAgent.validateInitialization(CollectorAgent.java:947)

at com.mercury.diagnostics.capture.metrics.CollectorAgent.run(CollectorAgent.java:716)

at java.lang.Thread.run(Thread.java:736)

This error is reported even though the server.policy file has been correctly configured to add entries as follows:

diag permissions

grant codeBase "file:C:/hp/MercuryDiagnostics/JavaAgent/DiagnosticsAgent/lib/probe-jmx.jar" {

permission java.security.AllPermission;

};

diag permissions

grant codeBase "file:C:/hp/MercuryDiagnostics/JavaAgent/DiagnosticsAgent/lib/probe-jmx-was6.jar" {

permission java.security.AllPermission;

};

and also while JMX metrics data is being collected and made available in the HP Diagnostics UI.

This error is reported by the WebSphere 7.x server as the default configuration of the "metrics.config" probe configuration file contains both "WebSphere V5.x Collector" entries and "WebSphere V6.x Collector" entries. The "WebSphere V5.x Collector" entries are not compatible with a WebSphere 7.x servers and result in this error being reported when present.

Note that the "WebSphere V6.x Collector" entries apply the WebSphere V6.x and later releases.

To stop this error being reported by the WebSphere application server, delete all of the "WebSphere V5.x Collector" entries from the "metrics.config" probe configuration file. It may be necessary to restart the WebSphere server for the new probe configuration to take effect.

Information displayed in the Diagnostics UI Layers View for a SAP application

In the HP Diagnostics User Interface (UI) the Layers View presents a breakdown of the processing across the layers in applications being monitored. While the HP Diagnostics User’s Guide provides a description of the information in this view for Java and .NET Agents, there is no documentation describing Layers View information displayed when using a SAP Collector to collect information from a SAP R/3 application.

The Layers View displayed for a SAP R/3 application that is collected using the SAP Collector consists of the following layers:

Database,

System,

Interface, and,

Application.

The Database layer represents the time spent in the database and may contains the following sub-layers:

Direct Read = READDIRTI – Time for Direct Read Requests in Microseconds

Sequential Read = READSEQTI – Time for Sequential Read Requests in Microseconds

Insert = INSTI – Time Used for Insert Requests in Microseconds

Update = UPDTI – Time for Update Requests in Microseconds

Delete = DELTI – Time for Delete Requests in Microseconds

Commit = COMMITTI – Time for COMMIT WORK in Microseconds

The System layer represents system and may contains the following sub-layers:

Queue = QUEUETI – Dispatcher Waiting Time of a Dialog Step in Milliseconds

Rep Load = REPLOADTI – Time for Loading Report in Microseconds

CUA Load = CUALOADTI – Time for Loading CUA Objects in Microseconds

Dynp Load = DYNPLOADTI – Time for Loading Screen Objects in Microseconds

Roll In = ROLLINTI – Time for SAP Rolling Procedure in Microseconds

Generate = GENERATETI – Generation Time in Microseconds

Enqueue = LOCKTI – Time for Semaphore Locks During a Dialog Step in Microsecs

The Interface layer does not have sub-layers and represents "rollWaitTime", which is received from JCO.Record attribute "ROLLED_OUT". Additional information on this may be found at:

http://www.kai600.com/en/sap-dict/table/S/14/STAD-13Y-STATREC.htm

The Application layer also does not have sub-layers and represents all the remaining timespent, that is, Total Time – Interface – Database – System.

Diagnostics is not pulling data from controller machine only during load test

If the Diagnostics is not pulling data from controller machine when a load test is run and at other times, if it is pulling the data.

Modify configuration for COPY_AD_TO_AM

A: On each Probe:

1. open <probe>/etc/probe.properties,

2. change "active.products" to Enterprise,

3. save the file,

4. restart the probe and application.

NOTE: If "active.products" is already Enterprise, there is no need to change or restart anything on probe.

B. ON DIAGNOSTIC server UI: Set mode to ‘copy AD to AM’

1. Go to

http://<Diagnostics_Server>:2006/configuration/Online+Cache?level=60

2. SET the value of "Copy AD to AM" to true.

3. Click the button to restart the Diagnostics Server.

Collector refuses to start after logging SEVERE missing library error

There has been an occurrence where not all the required jars were located in this single folder, causing the MQ collector to fail with the following error messages in collector.log:

2011-12-16 18:56:12,703 SEVERE mq_collector [main] Required library missing. Please add com.ibm.mq.jar & related jars to the collector lib folder and restart. Class missing: javax/resource/ResourceException

2011-12-16 18:56:12,719 SEVERE mq_collector [main] Required library missing. Please add com.ibm.mq.jar & related jars to the collector lib folder and restart. Class missing: com.ibm.mq.pcf.PCFMessage

2011-12-16 18:56:12,719 SEVERE mq_collector [main] Required library missing. Please add com.ibm.mq.jar & related jars to the collector lib folder and restart. Class missing: javax.resource.ResourceException

As of version 9.12, the MQ Collector no longer includes the IBM jars and, instead, requires you to provide the path where those jars are located.

It is necessary to use the attached IBM MQ jars, which are the same as the pre 9.12 MQ jars, but with one file renamed.

Place the below listed jar files in the <collector_install>\lib folder:

Pre-9.12 name: comibmmq.jar has been, in version 9.12, renamed to com.ibm.mq.jar

mqmonitor.jar

pcf-6.0.jar

Manual instrumentation of .NET applications for Diagnostics Probe

Follow these steps to manually configure an ASP application to be instrumented by the Diagnostics Probe:

1) The application is installed as a web site

2) Run the following command:

– <NET PROBE>\bin HP.Util.exe rescanIIS true

3) This will create an AutoDetect.log in <Probe>\log folder. The log file will have a bunch of detected and non-detected ASP.NET applications. For applications that are not detected, you will find a bunch of lines of the format as below:

Discarding non-ASP.NET app (1514616617/Default) (<PATH TO APPLICATION>).

4) See if the path of the application is what you are interested in monitoring. If yes, add the following to probe_config.xml file:

<process enablealldomains="true" name="ASP.NET">

<points file="ASP.NET.points" />

<points file="ADO.points" />

<points file="WCF.points" />

<appdomain enabled="true" name="1514616617/Default “>

</appdomain >

</process>

5) Once the above is added to probe_config.xml file, reset IIS and make activity on the application. Now go to log folder and see if the logs are created. If logs are created it is an indication that it is working fine.

For the above appdomain you should have a log with name ASP.NET.XXXXXXX. 1514616617-Default.1.log

Diagnostics server keeps running out of disk space

If the Diagnostics server keeps running out of disk space the following can be changed to optimize Diagnostics use of disk space.

For the time being, if both commander and mediator are supporting lots of probes, please do the changes given below :

1. For both servers in server.properties:

probe.pull.max.threads = 15

correlation.max.thread.count=6

aggregation.thread.count=6

externalstorage.thread.count=6

2. For mediator server only, in webserver.properties:

facade.request_threads = 100

3. Increase the jvm max heap size as needed in server.nanny file.

Please also look into each probe and see if there are lots of unique server request. If yes, please consider ways to reduce the number of unique server requests. This is the root cause of the issue.

Also, considering the size of the symbol table in archive, please do the configuration changes given below:

1. Copy the symboltable/backup directory to another drive, and delete the complete backup directory on the local drive. It will save lots of disk space.

2. Change server.properties parameters:

This property defines how long to wait before flushing the default threshold for a newly discovered Server Requests (SRs) out to disk. If a lot of new SRs are coming into the system many jdb files are getting written. Let’s make it 6hour to improve the server performance:

thresholding.synchronize.changes.frequency = 6h

Java probes instrumentation on JBoss version 6.0

When injecting a Java Probe into a JBoss server, this has to be restarted. After the Restart of the Application Server, it is possible to see the following abnormal behavior:

JBoss boot.log does not appear under log folder of the same.

Server.log and <Application_server_name>.log are created but do not register any data and are sized 0 Kb.

All the above, appeared empty before adding the Java probe in the startup file of JBoss.

This does not seem to affect to either the probe (which starts normally) or the Diagnostics Server. The Diagnostics logs do not show any error related.

In order to resolve this, the following line has to be added on the java command line (or run.bat):

Djava.util.logging.manager=org.jboss.logmanager.LogManager

After the restart of the JBoss, all the expected logs will appear in the designated path.