cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Narendra.Chaluchalamala
AppDynamics Team

Configure javaagent on IBM Cognos

If the OS is Windows, configure javaagent on "bootstrap_wlp_winx64.xml" .
If the OS is Unix/Linux, configure javaagent on "bootstrap_wlp_linux.xml"

 

These bootstrap XML files are located under <cognos_install>/bin directory.

 

Sample Configuration :

 

<param>-javaagent:"<agent-install-dir>/javaagent.jar"</param> 
<param>-Dorg.osgi.framework.bootdelegation=com.singularity.*</param>

 

Comments
Razziq.Khusro
Discoverer

Narendra,

 

I tried this config, but it's not allowing the process to start properly. Is the second param line written exactly how it should be entered?

Narendra.Chaluchalamala
AppDynamics Team

Razziq

 

  Yes , use it as it is . If you already have configuration for

"-Dorg.osgi.framework.bootdelegation" , then add "com.singularity.*" by separating with comma (,).

Razziq.Khusro
Discoverer

Narendra,


Thanks for the information! I attempted adding the javaagent.jar reference on line 89 as seen below. The cognos JVM starts, but the javaagent.jar from AppD does not start with it. Do you see another location in the below file information that looks more ideal to reference the jar?

Also there is a location inthe Cognos Admin Console that has "additional java arguments" for specific services. Perhaps that would work as well?

 

<?xml version="1.0" encoding="UTF-8"?>
<!--
	Licensed Materials - Property of IBM
	IBM Cognos Products: btsv
	(C) Copyright IBM Corp. 2003, 2015
	US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
-->
<!-- uncomment the following for large c8 instances start, the following is just an example -->
<!-- bootstrap startupDelaySec="25" pingRetries="40" pingRetryIntervalSec="30"-->
<bootstrap startupDelaySec="25">
	
  <processManager pollIntervalsec="30" checkForShutdownIntervalms="500"/>
	
  <process name="wlp">
		
    <start>
			
      <spawn sync="0" wait_time="5">
				
        <path quoteAsParam="true">${java_home}/bin/java.exe</path>
        <param condName="${ip_protocol}" condValue="IPv6">-Djava.net.preferIPv6Addresses=true</param>
        <param condName1="${java_vendor}" condValue1="IBM" condName2="${java_version}" condValue2="1.6.0" condOp2="gteq">-Xcompressedrefs</param>
        <param condName="${java_vendor}" condValue="Sun">-XX:+UseCompressedOops</param>
        <param condName="${java_vendor}" condValue="Oracle">-XX:+UseCompressedOops</param>
		<param condName="${ip_protocol}" condValue="IPv4">-Djava.net.preferIPv4Stack=true</param>
		
		
        <param>-Xmx${dispatcherMaxMemory}m</param>
		<param>-XX:MaxPermSize=512m</param>
				
        <param>-Xms${dispatcherMaxMemory}m</param>
				
        <param condName="${java_vendor}" condValue="IBM">-Xgcpolicy:gencon</param>
				
        <param condName="${java_vendor}" condValue="Sun">-XX:MaxNewSize=${dispatcherMaxMemoryBy2}m</param>
				
        <param condName="${java_vendor}" condValue="Sun">-XX:NewSize=${dispatcherMaxMemoryBy4}m</param>
				
        <param condName="${java_vendor}" condValue="Sun">-XX:MaxPermSize=512m</param>
				
        <param condName="${java_vendor}" condValue="Oracle">-XX:MaxNewSize=${dispatcherMaxMemoryBy2}m</param>
				
        <param condName="${java_vendor}" condValue="Oracle">-XX:NewSize=${dispatcherMaxMemoryBy4}m</param>
				
        <param condName="${java_vendor}" condValue="Oracle">-XX:MaxPermSize=128m</param>
				
        <param condName="${java_vendor}" condValue="IBM">-Xdump:heap+system:none</param> 
				
        <param condName="${java_vendor}" condValue="IBM">-Xdump:system:events=gpf+abort,range=1..2,request=serial+compact+prepwalk</param> 
				
        <param condName="${java_vendor}" condValue="IBM">-Xdump:system:events=systhrow+throw,filter=java/lang/OutOfMemory*,range=1..2,request=serial+compact+prepwalk</param>
				
        <param condName="${java_vendor}" condValue="IBM">-Xmn${dispatcherMaxMemoryBy2}m</param>
				
        <param condName="${java_vendor}" condValue="IBM">-Xdisableexplicitgc</param>
				
        <param condName="${java_vendor}" condValue="Sun">-XX:+DisableExplicitGC</param>
				
        <param condName="${java_vendor}" condValue="Oracle">-XX:+DisableExplicitGC</param>
				
        <param>"-Djdk.map.althashing.threshold=512"</param>				
				
        <param>"-verbose:gc"</param>
				
        <param condName="${java_vendor}" condValue="IBM">"-Xshareclasses:name=liberty-%u,nonfatal,cacheDir=${install_path}/wlp/usr/servers/.classCache"</param>
				
        <param condName="${java_vendor}" condValue="IBM">-XX:ShareClassesEnableBCI</param>
				
        <param condName="${java_vendor}" condValue="IBM">-Xscmx60m</param>
				
        <param condName="${java_vendor}" condValue="IBM">-Xscmaxaot4m</param>
				
        <!-- this parameter helps address the problems related to the large number of static objects in the content store -->
				
        <!--
					<param>-DuseCMLargeResultSet=true</param>
				-->
				
        <!-- uncomment these for debug -->
				
        
					<param>-Xdebug</param>
					<param>-Xnoagent</param>
					<param>-Xrunjdwp:transport=dt_socket,address=9091,server=y,suspend=n</param>
					<param>-Djava.compiler=NONE</param>
				
				
        <!-- end debug params -->
		<param>"-javaagent:D:/AppDynamics1/AppServerAgent-ibm-4.3.7.4/ver4.3.7.4/javaagent.jar"</param>
		<param>-Dorg.osgi.framework.bootdelegation=com.singularity.*</param>
       <param>"-javaagent:${install_path}/wlp/bin/tools/ws-javaagent.jar"</param>
		<param>-jar</param>
		<param>"${install_path}/wlp/bin/tools/ws-server.jar"</param>
        <param>cognosserver</param>
		
		

		
		
	  </spawn>
		
    </start>
		
    <ping>
			
      <!-- use this one to ping tomcat -->
			
      <socketSend wait_time="0" URI="${dispatcherURI}" dependency="DISP" commandString="GET /p2pd/servlet/gc HTTP/1.1${CRLF}Host: localhost${CRLF}${CRLF}" sockIOTimeoutSec="30" responseSize="16" responseOK="200" responseFatal="403" responseRetry="503"/>
			
      <!-- use this one to ping CM -->
			
      <XXXsocketSend wait_time="0" URI="${contentManagerURI}" commandString="GET /p2pd/servlet HTTP/1.1${CRLF}Host: localhost${CRLF}${CRLF}" sockIOTimeoutSec="30" responseSize="16" responseOK="200" responseRetry="503"/>
		
    </ping>
		
    <stop type="spawn">
			
      <spawn sync="0" wait_time="50">
				
        <path quoteAsParam="true">${java_home}/bin/java.exe</path>
				
        <!-- uncomment these for debug --> -->
				
       
					<param>-Xdebug</param>
					<param>-Xnoagent</param>
					<param>-Xrunjdwp:transport=dt_socket,address=9091,server=y,suspend=n</param>
					<param>-Djava.compiler=NONE</param>
				
				
        <!-- end debug params -->
				
        <param>"-javaagent:${install_path}/wlp/bin/tools/ws-javaagent.jar"</param>
				
        <param>-jar</param>
				
        <param>"${install_path}/wlp/bin/tools/ws-server.jar"</param>
				
        <param>cognosserver</param>
				
        <param>--stop</param>
			
      </spawn>
		
    </stop>
	
  </process>
	
  <daemonSpawn sync="0" wait_time="5">
		
    <path>${bin_path}/cogbootstrapservice.exe</path>
		
    <param>-fakeUnix</param>
		
    <param>-install_root=${install_path}</param>
		
    <param>-java_home=${java_home}</param>
		
    <param>runAsDaemon</param>
	
  </daemonSpawn>

</bootstrap>

2018-02-23 11_48_42-IBM Cognos Administration.png 

 

Razziq.Khusro
Discoverer

Narendra,


Thanks for the information! I attempted adding the javaagent.jar reference on line 89 as seen below. The cognos JVM starts, but the javaagent.jar from AppD does not start with it. Do you see another location in the below file information that looks more ideal to reference the jar?

Also there is a location inthe Cognos Admin Console that has "additional java arguments" for specific services. Perhaps that would work as well?

 

<?xml version="1.0" encoding="UTF-8"?>

<!-- Licensed Materials - Property of IBM IBM Cognos Products: btsv (C) Copyright IBM Corp. 2003, 2015 US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. -->

<!-- uncomment the following for large c8 instances start, the following is just an example -->

<!-- bootstrap startupDelaySec="25" pingRetries="40" pingRetryIntervalSec="30"-->

-<bootstrap startupDelaySec="25">

<processManager checkForShutdownIntervalms="500" pollIntervalsec="30"/>


-<process name="wlp">


-<start>


-<spawn wait_time="5" sync="0">

<path quoteAsParam="true">${java_home}/bin/java.exe</path>

<param condValue="IPv6" condName="${ip_protocol}">-Djava.net.preferIPv6Addresses=true</param>

<param condOp2="gteq" condValue2="1.6.0" condName2="${java_version}" condValue1="IBM" condName1="${java_vendor}">-Xcompressedrefs</param>

<param condValue="Sun" condName="${java_vendor}">-XX:+UseCompressedOops</param>

<param condValue="Oracle" condName="${java_vendor}">-XX:+UseCompressedOops</param>

<param condValue="IPv4" condName="${ip_protocol}">-Djava.net.preferIPv4Stack=true</param>

<param>-Xmx${dispatcherMaxMemory}m</param>

<param>-XX:MaxPermSize=512m</param>

<param>-Xms${dispatcherMaxMemory}m</param>

<param condValue="IBM" condName="${java_vendor}">-Xgcpolicy:gencon</param>

<param condValue="Sun" condName="${java_vendor}">-XX:MaxNewSize=${dispatcherMaxMemoryBy2}m</param>

<param condValue="Sun" condName="${java_vendor}">-XX:NewSize=${dispatcherMaxMemoryBy4}m</param>

<param condValue="Sun" condName="${java_vendor}">-XX:MaxPermSize=512m</param>

<param condValue="Oracle" condName="${java_vendor}">-XX:MaxNewSize=${dispatcherMaxMemoryBy2}m</param>

<param condValue="Oracle" condName="${java_vendor}">-XX:NewSize=${dispatcherMaxMemoryBy4}m</param>

<param condValue="Oracle" condName="${java_vendor}">-XX:MaxPermSize=128m</param>

<param condValue="IBM" condName="${java_vendor}">-Xdump:heap+system:none</param>

<param condValue="IBM" condName="${java_vendor}">-Xdump:system:events=gpf+abort,range=1..2,request=serial+compact+prepwalk</param>

<param condValue="IBM" condName="${java_vendor}">-Xdump:system:events=systhrow+throw,filter=java/lang/OutOfMemory*,range=1..2,request=serial+compact+prepwalk</param>

<param condValue="IBM" condName="${java_vendor}">-Xmn${dispatcherMaxMemoryBy2}m</param>

<param condValue="IBM" condName="${java_vendor}">-Xdisableexplicitgc</param>

<param condValue="Sun" condName="${java_vendor}">-XX:+DisableExplicitGC</param>

<param condValue="Oracle" condName="${java_vendor}">-XX:+DisableExplicitGC</param>

<param>"-Djdk.map.althashing.threshold=512"</param>

<param>"-verbose:gc"</param>

<param condValue="IBM" condName="${java_vendor}">"-Xshareclasses:name=liberty-%u,nonfatal,cacheDir=${install_path}/wlp/usr/servers/.classCache"</param>

<param condValue="IBM" condName="${java_vendor}">-XX:ShareClassesEnableBCI</param>

<param condValue="IBM" condName="${java_vendor}">-Xscmx60m</param>

<param condValue="IBM" condName="${java_vendor}">-Xscmaxaot4m</param>

<!-- this parameter helps address the problems related to the large number of static objects in the content store -->


<!-- <param>-DuseCMLargeResultSet=true</param> -->


<!-- uncomment these for debug -->


<param>-Xdebug</param>

<param>-Xnoagent</param>

<param>-Xrunjdwp:transport=dt_socket,address=9091,server=y,suspend=n</param>

<param>-Djava.compiler=NONE</param>

<!-- end debug params -->


<param>"-javaagent:D:/AppDynamics1/AppServerAgent-ibm-4.3.7.4/ver4.3.7.4/javaagent.jar"</param>

<param>-Dorg.osgi.framework.bootdelegation=com.singularity.*</param>

<param>"-javaagent:${install_path}/wlp/bin/tools/ws-javaagent.jar"</param>

<param>-jar</param>

<param>"${install_path}/wlp/bin/tools/ws-server.jar"</param>

<param>cognosserver</param>

</spawn>

</start>


-<ping>

<!-- use this one to ping tomcat -->


<socketSend wait_time="0" responseRetry="503" responseFatal="403" responseOK="200" responseSize="16" sockIOTimeoutSec="30" commandString="GET /p2pd/servlet/gc HTTP/1.1${CRLF}Host: localhost${CRLF}${CRLF}" dependency="DISP" URI="${dispatcherURI}"/>

<!-- use this one to ping CM -->


<XXXsocketSend wait_time="0" responseRetry="503" responseOK="200" responseSize="16" sockIOTimeoutSec="30" commandString="GET /p2pd/servlet HTTP/1.1${CRLF}Host: localhost${CRLF}${CRLF}" URI="${contentManagerURI}"/>

</ping>


-<stop type="spawn">


-<spawn wait_time="50" sync="0">

<path quoteAsParam="true">${java_home}/bin/java.exe</path>

<!-- uncomment these for debug -->

--> 
<param>-Xdebug</param>

<param>-Xnoagent</param>

<param>-Xrunjdwp:transport=dt_socket,address=9091,server=y,suspend=n</param>

<param>-Djava.compiler=NONE</param>

<!-- end debug params -->


<param>"-javaagent:${install_path}/wlp/bin/tools/ws-javaagent.jar"</param>

<param>-jar</param>

<param>"${install_path}/wlp/bin/tools/ws-server.jar"</param>

<param>cognosserver</param>

<param>--stop</param>

</spawn>

</stop>

</process>


-<daemonSpawn wait_time="5" sync="0">

<path>${bin_path}/cogbootstrapservice.exe</path>

<param>-fakeUnix</param>

<param>-install_root=${install_path}</param>

<param>-java_home=${java_home}</param>

<param>runAsDaemon</param>

</daemonSpawn>

</bootstrap>

2018-02-23 11_48_42-IBM Cognos Administration.png

Narendra.Chaluchalamala
AppDynamics Team

Hi Razziq, 

 

  Can you try as suggested below.

 

<param>-javaagent:"D:/AppDynamics1/AppServerAgent-ibm-4.3.7.4/ver4.3.7.4/javaagent.jar"</param>

 

  If still the problem persists , please log an support ticket to get more assistance on this.

Request you to be in touch with your account/sales manager for more details on it.

 

Thanks

Naren

Vamsi.Nandula
Wanderer

Hi @Narendra.Chaluchalamala 

I have to install java agent for IBM Cognos running in IHS. I have opened bootstrap_wlp_linux.xml file . Can I add as below ? Will it work ? Do we really need to include the double quotes also ?

 

<param>-javaagent:<java-agent-installation-directory>/javaagent.jar</param>

<param>-Dorg.osgi.framework.bootdelegation=com.singularity.*</param>

 

Also can you please suggest if any other additional steps I need to do apart from the above ?

Hi @Razziq.Khusro , hope it worked for you. Can you please help me too ?

Narendra.Chaluchalamala
AppDynamics Team

Hi @Vamsi.Nandula 

    Yes, keep in double quotes and check the beaviour.

     If any concerns , please log a help desk ticket along with the logs to analyse the issue.

 

Thanks

Naren 

Vamsi.Nandula
Wanderer

@Narendra.Chaluchalamala 

Hi Naren,

I have added the below path under bootstrap_wlp xml file and tried to restart the cognos server. It failed to start. All the processes are showing down due to below issue

CBSBootstrapService Process is not running

 

<param>-javaagent:"/opt/appdynamics/app-agent/ver4.5.18.29239/javaagent.jar"</param>
<param>-Dorg.osgi.framework.bootdelegation=com.singularity.*</param>

 

Later I have commented the appd java agent path in bootstrap xml file and restarted and then the machine is up and running. Please suggest ?

Narendra.Chaluchalamala
AppDynamics Team

Hi @Vamsi.Nandula 

   Thanks for the update.

   Can you log a new help desk ticket and enclose the configuration files , application logs and agent logs (if any) to analyse the issue.

 

Thanks

Naren

Vamsi.Nandula
Wanderer

@Narendra.Chaluchalamala 

Hi Naren,

I'm getting permission denied while trying to log a ticket. Hence commented here again. Will you be able to support / suggest me if I update my logs here ?

 

You are trying to access an AppDynamics Resource but you don't have the required permissions. Sign in with a different user account.

Claudia.Landivar
Community Manager

@Vamsi.Nandula, Looks like your current question lands outside of the self-help we can offer here in Community. Your next step should be to open a Support ticket.

 

Do let us know how it works out!

 

Claudia Landivar

Community Manager & Editor

Knowledge Base

Version history
Last update:
‎01-01-2019 08:44 PM
Updated by: