Table of Contents
This chapter describes how to register resources that are the monitoring targets of SysMaster.
After SysMaster has been installed, the target resource is registered to notify the Master and Agent to start monitoring the resource.
Resource registration is done through the Web Admin. Normal operation of the Master and Agent and binary update of the target resource must be verified before starting the registration.
The following is a summary of the resource registration process.
Performing Pre-Registration Tasks for each Resource.
Updating compressed file for each resource (reboot the Master server for initial registration)
Adding compressed Web Admin file(Console) for each resource
Installing WAS Provider DC(Data Collector)
Currently, SysMaster 5.0 supports only WAS Provider.
The following tasks must be verified before registering each resource.
If WAS provider is installed during Master installation, pre-registration tasks for the resource are performed automatically.
The file is not required for initial installation. The compressed file for each resource must be copied to the following directory when applying a patch for the resource.
$MASTER_HOME/update/provider
Unzip and copy the compressed file (*.zip) in each folder (provider).
The following shows the result of copying the zip files for the WAS Provider to the provider folder.
[apmqam@tmaxi7:/data1/apmqam/master_5x/update/provider]$ls sysmaster-provider-was_aix5L_32.zip sysmaster-provider-was_aix5L_64.zip sysmaster-provider-was_aix6L_32.zip sysmaster-provider-was_aix6L_64.zip sysmaster-provider-was_hpux11_32.zip sysmaster-provider-was_hpux11_32_ia64.zip sysmaster-provider-was_hpux11_64.zip sysmaster-provider-was_hpux11_64_ia64.zip sysmaster-provider-was_linux2.x.zip sysmaster-provider-was_linux2.x_ia64.zip sysmaster-provider-was_solaris10_32.zip sysmaster-provider-was_solaris10_64.zip sysmaster-provider-was_solaris7_32.zip sysmaster-provider-was_solaris7_64.zip sysmaster-provider-was_solaris8_32.zip sysmaster-provider-was_solaris8_64.zip sysmaster-provider-was_solaris9_32.zip sysmaster-provider-was_solaris9_64.zip sysmaster-provider-was_solaris_32_x86.zip sysmaster-provider-was_win32.zip sysmaster-provider-was.zip
Web UI file must be installed in order to use resource-specific monitoring in SysMaster. The file is not required during initial installation. Copy each compressed Web UI file (zip) under the 'update/console' directory when applying a patch.
$MASTER_HOME/update/console
The following shows the result of copying the Admin, Sysmon and WAS Web Admin files to the console directory.
[apmqam@tmaxi7:/data1/apmqam/master_5x/update/console]$ls -al total 7584 drwxr-xr-x 2 apmqam rnd 256 Nov 21 15:26 . drwxr-xr-x 6 apmqam rnd 256 Nov 7 20:47 .. -rw-r----- 1 apmqam rnd 102303 Nov 21 15:26 sysmaster-ui-admin.zip -rw-r----- 1 apmqam rnd 276637 Nov 21 15:26 sysmaster-ui-was.zip -rw-r----- 1 apmqam rnd 3127893 Nov 21 15:26 sysmaster-ui.zip
This section describes how to register WAS resources. Basic registration information is given based on JEUS, and the configurations for other WAS products are also described for reference.
WAS resource registration process mostly involves installing the DC. No separate updates are required for the Agent, but Agent-related settings are available.
The following is a summary of the DC installation process.
Registering Agent in Web UI
Agent registration will be omitted here since it was already covered in "3.4.2. Agent Registration".
Registering WAS Resources
Register resources in the following order.
Register WAS Resource
Add Node
Add Container
Configuring Environment File (sm.properties)
Creating sminst_rt.jar File
Copying libdcagent Library File
Modifying JEUSMain.xml File
Modify the environment file, JEUSMain.xml, that will be registered when WAS starts up
Restarting WAS and Agent
Verify normal monitoring status in Web UI after restarting WAS
This guide describes resource registration method for JEUS, a WAS product from Tmax.
The following are the files required for registering the WAS DC. They are provided as a separate library.
sminst14.jar(JDK 1.4), sminst15.jar(JDK 1.5)
smrtcvt(executable file)
libdcagent library file(separate library files for JDK 1.4 and 1.5)
sm.properties
The files are in the following path.
MASTER_HOME/provider/was/dc
The DC binary file can be found in the provided 'dc_binary/was_dc' directory.
If the Agent is currently running, stop the Agent before registering WAS.
Right-click on the registered Agent from [ADMIN] > [SysMaster] > [Resource] and [Add Resource] menu will appear. Select [Add Resource] to go to the following input screen.
Enter the 'Resource Name(*)' and select 'WAS' as the 'Resource Type'. The following properties will appear below. Enter all the required fields and click [Save]. The result of resource registration can be seen from the Working Set menu on the left.
The following is description of the fields. Required fields are marked with (*).
Field | Required | Default Value | Description |
---|---|---|---|
Resource ID | O | NONE | Automatically assigned by the system. (Cannot be modified) |
Agent Name | O | NONE | Registered Agent name. (Cannot be modified) |
Resource name(*) | O | NONE | Identification name for the Working Set. |
Resource Type(*) | O | sysmon | WAS or sysmon. Select WAS. |
Version(*) | O | NONE | Version of the target WAS to monitor. Version syntax: JEUS 4.x / 5.x / 6 or later use the actual number instead of 'x'. (e.g., 6.0 ~ 6.6 ~... WebLogic 8.x / 9.x / 10.x Oracle AS 9.x / 10.x) |
User Name(*) | O | NONE | User name of the target WAS account. |
Host Name(*) | O | NONE | Hostname of the target system. |
Product Name(*) | O | Jeus | Select the target WAS vendor.
|
Description | X | NONE | Description of the resource. |
was.account(*) | O | administrator | Admin account. (e.g., admin) |
was.password(*) | O | ********* | Admin account password. |
was.host(*) | O | 127.0.0.1 | IP address of the server where WAS is installed. (e.g., 192.1.1.1) |
was.base.port(*) | O | 9736 | WAS admin port. |
was.node(*) | O | node name | Node name of the server where WAS is installed. |
was.pool.enable(*) | O | Y | Option to enable DB pool monitoring. If the WAS collects pool information like WebLogic or Oracle AS, enter the MBean connection information. Otherwise, the analysis/infra/Java pool information will not be displayed. When WAS DC collects pool information (set dc.pool.stat.enable to 'true' in sm.properties). Set to 'N' to disable the Agent server from collecting pool information. |
was.home(*) | O | NONE | WAS Home Directory |
Right-click on the registered resource and click [Add Node] to display the following input screen.
The following is description of the fields. Required fields are marked with (*).
Field | Required | Default Value | Description |
---|---|---|---|
Alias(*) | O | NONE | Node identification name displayed on the screen. |
Path(*) | O | NONE | Path used to register the container. |
Node Name(*) | O | NONE | Name of the Node to add. |
Status | O | Not Ready | Node status. (Ready or Not Ready) (Cannot be modified) |
Resource ID | O | NONE | Resource ID. (Cannot be modified) |
Resource Type | O | oracle | Set to Oracle. (Cannot be modified) |
Type | O | instance | Set to instance. (Cannot be modified) |
Right-click on the registered resource and click [Add Container] to display the following input screen.
Enter all the required fields and click [Save] to register each one. In the previous versions, the user was able to choose any Container name. Starting from SysMaster 3.2 SP2, the following Container name syntax must be used to support the added functionality of JEUS Admin. Up to 30 Containers can be added.
Full name of the Container (Node Name_Container Name) must be used for registration.
Container Name = Node_Container
Field | Description |
---|---|
Alias(*) | Container Name that will be used for identification from the monitoring screen. |
Path(*) | When registering a Node, ".{ContainerName}" must be appended to the Path for it to be recognized. (tmaxi7.container1). |
Node Name(*) | Node Name used to register the Node. (Cannot be modified) |
Status | Node status. (Ready or Not Ready) (Cannot be modified) |
Resource ID | Resource ID. (Cannot be modified) |
Resource Type | WAS. (Cannot be modified) |
Type | was.container. (Cannot be modified) |
This section describes the environment file that is configured during WAS resource registration process.
The following environment configuration files must be configured.
Modify config/sysmaster.properties of the Master to monitor ProFrame WAS
Modify sm.properties
Create sminst_rt.jar by using sminst14.jar or sminst15.jar file according to the JDK version
Copy libdcagent library file
To monitor ProFrame WAS, add the following setting to config/sysmaster.properties of the Master. After adding the setting, [ProFrame] tab will appear in the [Analysis] > [Service] screen when starting the Master.
was.master.pfwas.enable=true
Only use this setting to monitor ProFrame WAS.
The following are the steps for configuring the sm.properties file.
Copy the was_dc folder to a desired path (generally in 'AGENT_HOME/was_dc')
If sm.home directory is used, create as many sm.properties files as the number of containers in the 'sm.home/sm_properties' directory. Each sm.properties file name should be unique. (e.g., sm.properties1, sm.properties2, etc.)
Configure each sm.properties file according to its container environment.
The following is an example that shows the properties that must be modified for each sm.properties file.
################################################################################ # Sysmaster home # - Data Collector's Home directory ################################################################################ # sm.home=/data1/apmqam/agent_5x/sm1007/dc_was/sm_properties/extendbci.propertie sm.home=/data1/apmqam/agent_5x/sm1007/dc_was ################################################################################ # Network config # # - Data Collector's network properties # - net.master.host : Master's ip # - net.master.port : Master's socket port # - net.collector.host : Collector's ip # - net.history.port : Collector's history socket port # - net.stat.port : Collector's statistic socket port # ################################################################################ # Master Network Config net.master.host=192.168.1.87 net.master.port=22002 # Collector Network Config net.collector.host=192.168.1.87 net.history.port=22007 net.stat.port=22006 ################################################################################ # Container props # # - Set Resource id # - Set cfg path "sm3.properties" 240 lines, 8837 characters # - Set Resource id # - Set cfg path # - Set OutOfMemory Error detect enable : defaule true # - Set Socket Trace enable : defaule true # - Set File Trace enable : defaule true # - Set sun's thread cpu time bug enable (linux & sun jdk1.4.x) # - Set ClassLoader Trace enable : defaule true # ################################################################################ resource.id=R012 container.path=tmaxi7_was.container3 #oomerror.detect.enable=false #socket.trace.enable=false #file.trace.enable=false #sun.threadtime.bug.enable=false #bci.classloader.enable=false .... continued
The following is description of the properties.
Property | Description |
---|---|
sm.home | Path to the home directory for data collection. When monitoring a user specified Java class, the class that is not included in the J2EE specifications must be manually specified. |
net.master.host | IP address of Master server. Default communication port of DC. |
net.master.port | Master Server BasePort+2. |
net.collector.host | IP Address of Master server. |
net.history.port | Master server BasePort+7. Transfer port for history data. |
net.stat.port | Master server BasePort+6. Transfer port for statistical data. |
resource.id | Resource ID registered through Web ADMIN. |
container.path | Resource Container Path value registered through Web ADMIN. |
dc.tx.threshold | Response time threshold for DC to collect tx information. Collects the service stacktrace information when the threshold is exceeded. |
dc.tx.rate | Rate at which the service that exceeds the threshold value is executed. |
exception.collect.enable | Option to collect trace information about the server when an exception occurs. |
logging.enable | Option to enable logging. |
logging.level | Logging level. |
bci.using.genid | If set to false, the user will be checked based on the URL instead of '_smVisitorID' set in the cookie when accessing the target WAS from a web browser. (The visitor ID might be different from actual value.) |
bci.jsp.appid (Priority 1) | App ID extracted from a query parameter in the HTTP Request URL. If there are multiple values, separate them as in 'serviceId:menuId'. (e.g., bci.jsp.appid=dsname) |
bci.jsp.appid.header (Priority 2) | HTTP header name used to collect appname. If there are multiple values, separate them as in 'serviceid1:serviceid2'. (e.g., bci.jsp.appid.header=serviceid) |
bci.jsp.appid.uri.suffix (Priority 3) | URI extension name used to collect appname. If there are multiple values, separate them as in 'extension1:extemsion2'. (e.g., bci.jsp.appid.uri.suffix=biz) |
bci.cookie.userid | Value to extract from a cookie. If there are multiple values, separate them as in 'bci.cookie.userid=a:b'. (e.g., bci.cookie.userid=JSESSIONID:__smGlobalId:__smVisitorID) |
container.pfwas.enable pfwas.user.stat.enable | Option to monitor ProFrame WAS. |
dc.pool.stat.enable | Option to collect pool information from WAS DC. To prevent duplicate collection of pool information, set was.pool.enable to 'N' in the WAS resource properties using Web Admin. For JEUS, pool information collection is enabled regardless of the jeusadmin encryption option. WAS that uses jdk 1.4 or previous version does not collect pool information. (e.g., Jeus4, WebLogic8, etc.) |
dc.jdbc.sqllen.max | Maximum full SQL length to collect. If there is a SQL that has been truncated, it must be deleted from the SMB_META_STRING_ID and SMB_META_STRING_ID_EXT tables. |
full.url.enable | Option to display the full URL information of the service in the service trace. |
By using the smrtcvt executable file in the sm.home directory, create the sminst_rt.jar file from the rt.jar or core.jar file of the JDK. The * rt.jar or core.jar file can be found in the 'JAVA_HOME/jre/lib' directory that is configured in SysMaster.
The following are the purposes for creating the sminst_rt.jar file.
Support of JDK 1.4
While JVM supports the application of BCI using Premain-Class in JDK 1.5 or later, the classloader must be modify to add BCI configuration in JDK 1.4 or earlier.
Applying BCI for the Classes in rt.jar File
BCI can be applied to classes inside an application or WAS, but not to classes in the rt.jar file. This is because the rt.jar files are loaded before other classes.
To apply BCI to the classes in rt.jar file, modify the classes and specify the classes in the Xbootclasspath. The applicable classes are collection, file I/O, and socket classes.
Among the distributed files, sminst14.jar is for JDK 1.4 and sminst15.jar is for JDK 1.5 or later.
The smrtvt command internally uses sminst15.jar. If the JDK1.4 is used, open smrtcvt and replace sminst15.jar with sminst14.jar.
The following is the command syntax for executing the smrtcvt executable file.
By using the which java command, verify the location of the Java file before executing the command. (If a different account from WAS is used for installation, check the location of the Java file used by WAS)
USAGE: smrtcvt(.bat) <rt.jar(or core.jar)> <Expected Name> <Vendor> <jdk version> <current sminst path>
Examples of command usages can be displayed by executing the following smrtcvt command.
[daehun2:/home/daehun2/sysmaster/agent5/was_dc]$ ./smrtcvt USAGE : smrtcvt(.bat) <rt.jar(or core.jar)> <Expected Name> <Vendor> <jdk version> <current sminst path> ex) smrtcvt(.bat) /usr/jdk14/jre/lib/rt.jar sminst_rt.jar SUN 1.3 /home/apmtest/dc/sminst.jar ex) smrtcvt(.bat) /usr/jdk14/jre/lib/rt.jar sminst_rt.jar IBM 1.4 /home/apmtest/dc/sminst.jar ex) smrtcvt(.bat) /usr/jdk14/jre/lib/rt.jar sminst15_rt.jar JROCKIT 1.5 /home/apmtest/dc/sminst15.jar ex) smrtcvt(.bat) /usr/jdk14/jre/lib/rt.jar sminst16_rt.jar SUN 1.6 /home/apmtest/dc/sminst15.jar
For AIX(IBM) J9 1.4, use core.jar instead of rt.jar.
The following is an example of creating the sminst_rt.jar file. Use the sminst15.jar file for Java 1.5 or later, and use the sminst14.jar file for Java 1.4.
The following log can be displayed.
*************************************************** SysMaster Provider(WAS DC) 5.0 *************************************************** SYSMASTER Patch Classes... java/io/FileInputStream.class : patch... java/io/FileOutputStream.class : patch... java/util/HashMap.class : patch... java/util/ArrayList.class : patch... java/util/HashSet.class : patch... java/util/IdentityHashMap.class : patch... java/util/LinkedList.class : patch... java/util/TreeSet.class : patch... java/net/Socket.class : patch... SYSMASTER /usr/java5_64/jre/lib/vm.jar processed SYSMASTER Patch Classes... java/util/Hashtable.class : patch... java/util/Vector.class : patch... SYSMASTER /data1/apmqam/agent/sm1007/dc_was/sminst15_rt.jar created
The CheckEnv.class can be used to verify the library files that are registered in the WAS environment configuration file with the created sminst_rt.jar file. (e.g., IBM J9)
In an HP-UX ia64 environment, if 'java [option] CheckEnv' is executed, it will be recognized as 32 bit, and if java '-d64 [option] CheckEnv' is executed it will be recognized as 64 bit. Use the '-d64' option according to the environment.
The following are the steps for verification.
Check that the library file that retrieves the Java Resource information executes successfully.
apmqam@dc_home]$ java -agentlib:/data1/apmqam/agent/sm1007/dc_was/dcagent/jvmti/aix6L_64/dcagent64 CheckEnv
success jvmti_interface=110206288
sun.boot.library.path:/usr/java5_64/jre/bin
* Enter the path of the folder that contains the libdcagent file. For 64 bit machines, use the 'dsagent64' notation for testing.
Check that the DC environment information has been properly applied to the built sminst JAR file.
apmqam@dc_home]$ java -javaagent:/data1/apmqam/agent/sm1007/dc_was/sminst15_rt.jar CheckEnv
[SMDC] All stdout,stderr will be redirect to: /data1/apmqam/resourceid_node.container1/logs/smlog_resourceid_node.container1
**************************************************************
SysMaster Provider(WAS DC) 5.0
**************************************************************
- Property path : /data1/apmqam/agent/smagent/dc_was/sm_properties/sm2.properties
- Extend BCI path :
- Resource ID : R012
- Container PATH : tmaxi7_was.container2
- Master IP : 192.168.1.87
- Collector IP : 192.168.1.87
- Req Port : 22002
- Tx Port : 22007
- Mon Port : 22006
- OOM Detect : true
- SQL PARAM TRACE : true
- Thread Command : true
- Socket Trace : true
- TX His threshold : 3000 ms
- TX View threshold : 100 ms
- TX His send rate : 0.05
- TX view send rate : 0.2
- TX header send rate : 0.2
- User profile enable : true
- User profile filter : included packages and classes
sun.boot.library.path:/usr/java5_64/jre/bin
Check that the built library file has been successfully loaded.
apmqam@dc_home]$java -Xbootclasspath/p:/data1/apmqam/agent/sm1007/dc_was/sminst15_rt.jar:
/data1/apmqam/agent/sm1007/dc_was/sminst_15.jar CheckEnv
sun.boot.library.path:/usr/java5_64/jre/bin
Check that the configured properties file has been successfully loaded.
apmqam@dc_home]$java -Dsm.property=/data1/apmqam/agent/sm1007/dc_was/properties/sm1.properties CheckEnv
sun.boot.library.path:/usr/java5_64/jre/bin
The libdcagent library is required for monitoring the JVM CPU and memory status. For JDK 1.4, copy the library file to the corresponding WAS library path.
JDK 1.5 or later
System specific libdcagent library is under the following location, and it does not need to be copied manually.
sm.home/dcagent/jvmti
JDK 1.4
Copy the system-specific libdcagent library file from the following location to the 'JEUS_HOME/lib/system' directory (for JEUS).
sm.home/dcagent/jvmpi
For 64 bit machines, change the file name from 'libdcagent64' to 'libdcagent' when copying the file.
Specify the absolute path for the bootclasspath, which is referenced when executing the sminst.jar and sminst_rt.jar files, in the command-option property of each container section in JEUSMain.xml. The path of the sm.properties file, which will be referenced by each container, must also be specified.
When configuring the libdcagent.so file, for JDK1.4, the file must be saved under the 'JEUSHOME/lib/system/' directory or the library path. For JDK1.5, the file is saved under the DC Home(in general) directory and the path must be specified. For JDK 1.5, avoid saving the file under the 'JEUSHOME/lib/system/' directory or other library paths.
The following is an example of configuring JEUSMain.xml for each JDK version.
JDK 1.4
<engine-container> <name>container1</name> <command-option> -Xbootclasspath/p:/data1/apmqam/sysmaster/agent5/was_dc/sminst15_rt.jar -Dsm.property=/data1/apmqam/sysmaster/agent5/was_dc/sm_properties/sm.properties </command-option>
JDK 1.5 or later
<engine-container> <name>container1</name> <command-option> -agentpath:/data1/apmqam/sysmaster/agent5/was_dc/dcagent/jvmti/hpux11_64_ia64/libdcagent64.so -javaagent:/data1/apmqam/sysmaster/agent5/was_dc/sminst15_rt.jar -Xbootclasspath/p:/data1/apmqam/sysmaster/agent5/was_dc/sminst15_rt.jar -Dsm.property=/data1/apmqam/sysmaster/agent5/was_dc/sm_properties/sm.properties </command-option>
JDK 1.5 IBM J9
The following is an example of installing for JDK 1.5 IBM J9.
-agentlib:/data/daehun/sysmaster/agent5/was_dc/dcagent/jvmti/aix5L_64/dcagent64 -javaagent:/data/daehun/sysmaster/agent5/was_dc/sminst15_rt.jar -Xbootclasspath/p:/data/daehun/sysmaster/agent5/was_dc/sminst15_rt.jar -Dsm.property=/data/daehun/sysmaster/agent5/was_dc/sm_properties/sm.properties2 -Dsysmaster.master.trace.sql=3
Since JEUSMain.xml settings can vary depending on the JDK type and version, consult with the administrator to determine the proper options for the installation environment. Note that the settings specified in JEUSMain.xml vary depending on the JDK version.
Specify the absolute path for the bootclasspath, which is referenced when executing the sminst.jar and sminst_rt.jar files, in the jvm-option property of each server section in the domain.xml file. The path of the sm.properties file, which will be referenced by each Managed server, must also specified.
The following is an example of configuring JEUSMain.xml for each JDK version.
JDK 1.5 or later
<listener> <name>http-server1</name> <jvm-config> <jvm-option>-Xmx512m -XX:MaxPermSize=128m</jvm-option> <jvm-option>-agentlib:/data/daehun/sysmaster/agent_20140305/was_dc/dcagent/jvmti/aix5L_64/dcagent64</jvm-option> <jvm-option>-javaagent:/data/daehun/sysmaster/agent_20140305/was_dc/rt_15.jar</jvm-option> <jvm-option>-Xbootclasspath/p:/data/daehun/sysmaster/agent_20140305/was_dc/rt_15.jar</jvm-option> <jvm-option>-Dsm.property=/data/daehun/sysmaster/agent_20140305/was_dc/sm_properties/sm.properties</jvm-option> </jvm-config>
JDK 1.5 IBM J9
The following is an example of installing for JDK 1.5 IBM J9.
-agentlib:/data/daehun/sysmaster/agent_20140305/was_dc/dcagent/jvmti/aix5L_64/dcagent64 -javaagent:/data/daehun/sysmaster/agent_20140305/was_dc/rt_15.jar -Xbootclasspath/p:/data/daehun/sysmaster/agent_20140305/was_dc/rt_15.jar -Dsm.property=/data/daehun/sysmaster/agent_20140305/was_dc/sm_properties/sm.properties -Dsysmaster.master.trace.sql=3
Note that the settings specified in JEUSMain.xml vary depending on the JDK version.
The following lists the files that contain the DC settings for other WASs.
WAS | Configuration File |
---|---|
WebLogic | startWebLogic.sh |
Oracle AS | Opmn.xml |
WebSphere | $WEBSPHERE_HOME/profiles/AppSrv02/config/ cells/tmaxi7Node02Cell/nodes/tmaxi7Node02/servers/server1/server.xml |
Tomcat | $TOMCAT_HOME/bin/startup.sh Resin : {resin home}/conf/resin.xml |
JBoss | $JBOSS_HOME/bin/run.conf(6.x) Standalone mode: $JBOSS_HOME/bin/standalone.conf(7.x) Domain mode: sysmaster and jeus modules must be added (7.x) |
Jetty | Jetty.sh |
The startXXXX.sh file is generally created as startWebLogic.sh, but the name of executed shell varies depending on the site. The startXXXX.sh file is located in the following directory or can be in another location depending on the production site.
-Xbootclasspath/p:PATH /sminst.jar:PATH /sminst_rt.jar -Dsm.property=PATH/sm. properties1
When there are two or more containers, add a command-option for each container and also create sm*.properties for each container in '$AGENT_HOME/dc/properties'.
WebLogic 8.x (JDK 1.4)
Configure the following in JAVA_OPTIONS of the WebLogic startup shell script.
-Xbootclasspath/p:PATH /sminst.jar:PATH /sminst_rt.jar -Dsm.property=PATH/sm. properties1
WebLogic 9.x & WebLogic 10.x (JDK 1.5)
Configure the followings in JAVA_OPTIONS of the WebLogic startup shell script.
-javaagent:PATH/sminst.jar -Xbootclasspath/p:PATH/sminst.jar:PATH/sminst_rt.jar -Dsm.property=PATH/properties/sm.properties2
libdcagent.so File Configuration
JDK 1.4
Copy the file to the 'WEBLOGIC_HOME/bin' directory.
JDK 1.5
-agentpath:PATH/libdcagent.so
The following is an example of the libdcagent.so configuration file.
# START WEBLOGIC . . if [ "${SERVER_NAME}" = "server1" ] ; then JAVA_OPTIONS="${JAVA_OPTIONS} -javaagent:/home/weblogic/sysmaster/agent/dc/sminst.jar -Xbootclasspath/p:/home/weblogic/sysmaster/agent/dc/sminst.jar: /home/weblogic/sysmaster/agent/dc/sminst_rt.jar -Dsm.property=/home/weblogic/sysmaster/agent/dc/properties/sm1.properties" else if [ "${SERVER_NAME}" = "server2" ] ; then JAVA_OPTIONS="${JAVA_OPTIONS} -javaagent:/home/weblogic/sysmaster/agent/dc/sminst.jar -Xbootclasspath/p:/home/weblogic/sysmaster/agent/dc/sminst.jar: /home/weblogic/sysmaster/agent/dc/sminst_rt.jar -Dsm.property=/home/weblogic/sysmaster/agent/dc/properties/sm2.properties" else if [ "${SERVER_NAME}" = "server3" ] ; then JAVA_OPTIONS="${JAVA_OPTIONS} -javaagent:/home/weblogic/sysmaster/agent/dc/sminst.jar -Xbootclasspath/p:/home/weblogic/sysmaster/agent/dc/sminst.jar: /home/weblogic/sysmaster/agent/dc/sminst_rt.jar -Dsm.property=/home/weblogic/sysmaster/agent/dc/properties/sm3.properties" fi
Add the setting to the Server xml (1), or configure properties in webadmin (2 & 3).
Add to server xml
Add settings in C:\IBM\WebSphere\AppServer\profiles\AppSrv01\config\cells\starkohNode01Cell\nodes \starkohNode01\servers\server1\server.xml
... genericJvmArguments="-Dwas.vendor=websphere -javaagent:C:\TmaxSoft\SysMaster\agent\was_dc\sminst16_rt_ws85.jar -Dsm.property=C:\TmaxSoft\SysMaster\agent\was_dc\sm_properties/sm.properties_ws85 -agentpath:C:\TmaxSoft\SysMaster\agent\was_dc\dcagent\jvmti\win64\dcagent64.dll" executableJarFileName="" disableJIT="false"> <bootClasspath>C:\TmaxSoft\SysMaster\agent\was_dc\sminst16_rt_ws85.jar</bootClasspath> ...
Configure the webadmin property: configure the JVM boot class path.
Select [Application Server] > [server Name] > Server Infrastructure – Manage Java and Process – Define Process > JVM. Configure directory information in the 'Boot Class Path' field of the General Features section.
$WEBLOGIC _HOME/server/bin
Configure the webadmin property: configure the values in sm.properties.
Select [Application Server] > [server Name] > Server Infrastructure – Manage Java and Process – Define Process > JVMUser Defined Features. Set the sm.properties path to the 'Value' field of the General Features section.
PATH/sm.properties
The following describes how to configure JBoss.
JBOSS AS 7.0 and 7.1
Pool information cannot be collected because the pool information is not exposed through MBean.
Add java options to JBOSS AS 7.3 $JBOSS_HOME/bin/standalone.conf as in the following.
... JAVA_OPTS="$JAVA_OPTS -agentpath:/home/gmrcb/sysmaster/jboss/was_dc/dcagent/jvmti/linux2.x/libdcagent64.so -javaagent:/home/gmrcb/sysmaster/jboss/was_dc/sminst_rt.jar -Xbootclasspath/p:/home/gmrcb/sysmaster/jboss/was_dc/sminst_rt.jar -Dsm.property=/home/gmrcb/sysmaster/jboss/was_dc/sm_properties/sm.properties2 -Djava.util.logging.manager=org.jboss.logmanager.LogManager" ...
Add a package to JBOSS AS 7.3
Configure the following under $JBOSS_HOME/bin/standalone.conf when in the standalone mode.
if [ "x$JBOSS_MODULES_SYSTEM_PKGS" = "x" ]; then
JBOSS_MODULES_SYSTEM_PKGS="org.jboss.byteman,sysmaster,jeus"
fi
When in the domain mode
Modify domain.xml by assuming that -Djboss.domain.default.config is set to domain.xml.
<system-properties>
<property name="jboss.modules.system.pkgs" value="org.jboss.byteman,com.javaservice,sysmaster,jeus"/>
</system-properties>
Modify host.xml by assuming that -Djboss.host.default.config is set to host.xml.
<server name="server_01" group="group_01" auto-start="true">
<system-properties>
<property name="testprop" value="this is test value"/>
</system-properties>
<socket-bindings port-offset="2000"/>
<jvm name="default" debug-enabled="false">
<jvm-options>
….
<option value="-Djboss.modules.system.pkgs=org.jboss.byteman,com.javaservice,sysmaster,jeus"/>
….
</jvm-options>
</jvm>
</server>
The following describes the configurations in Oracle 9i & 10g (JDK 1.4 & 1.5).
OracleAS can execute a multi-process instance. The following shows how to configure a single-instance for a single process and a multi-instance for multiple processes.
Single-Instance
Specify the following for the java-options of ias-component in the Opmn.xml file.
-Xbootclasspath/p:PATH/sminst.jar:PATH/sminst_rt.jar -Dsm.property=PATH/sm.properties
Multi-Instance
Specify the following for the java-options of ias-component in the Opmn.xml file.
-Xbootclasspath/p:PATH/sminst.jar;PATH/sminst_rt.jar -Dsm.autoconfig=true -Dsm.conids=1:2 -Dsm.configpath=PATH/properties
When using multi-instance, the '-Dsm.autoconfig' setting must be set to true and the range of the IDs used by the instances must be specified. In the previous example, the instances will use 1 or 2 as ID.
Specify the directory that contains the property files used by the DC.
Similar to other configurations, 'PATH' represents an absolute path and 'properties' is the directory that contains the configuration file. The 'properties' directory contains property files that use the following naming conventions.
sm.propertiesID e.g., sm.properties1, sm.properties2
Configure the libdcagent.so file. Place the libdcagent file according to the JDK as shown in the following.
JDK 1.4
Copy to 'ORACLE_HOME/bin' directory
JDK 1.5
agentpath:PATH/libdcagent.so
JEUS and Agent must be restarted in order to apply the configuration changes.
Restart WAS
WAS Termination
$jeusadmin <HOSTNAME> -U{administrator-id} -P{passwd} jeusexit
WAS Start
$ jeus -U{administrator-id} -P{passwd} &
Restart the SysMaster Agent. For more information about restarting the agent process, refer to "3.5. Starting and Terminating Agent".
If the following error occurs while registering a WAS resource, check the configurations in the following order.
java.lang.UnsatisfiedLinkError: sysmaster/was/datacollector/profile/JVMPIManager5.getCurrentThreadCpuTime() at sysmaster.was.datacollector.profile.JVMPIManager5.getThreadCpuTime(JVMPIManager5.java:55) at sysmaster.was.datacollector.data.MethodTrace.startTraceAux(MethodTrace.java:107) at sysmaster.was.datacollector.data.EnterpriseTraceProxy.startTrace(EnterpriseTraceProxy.java:440) at javax.servlet.http.HttpServlet.service(HttpServlet.java) at javax.servlet.http.HttpServlet.service(HttpServlet.java:856) at jeus.servlet.engine.ServletWrapper.executeServlet(ServletWrapper.java:313) at jeus.servlet.engine.ServletWrapper.execute(ServletWrapper.java:214) at jeus.servlet.engine.HttpRequestProcessor.run(HttpRequestProcessor.java:283)
Check if libdcagent.so generates an error, and then execute the following command from the directory of the sminst.jar file and verify that the cputime is correctly displayed.
JDK 1.5
$java –agentpath:PATH/libdcagent.so –classpath sminst.jar sysmaster.was.datacollector.profile.JVMPIManager5
IBM JDK J9 1.5
Use the agentlib option instead of the agentpath option.
$java -agentlib:PATH/dcagent -classpath ./sminst.jar sysmaster.was.datacollector.profile.JVMPIManager
If CPU Time is displayed correctly, it means that the libdcagent.so executes normally. Hence, check the DC settings inside WAS section for issues.