Oracle WebLogic

These are the steps to complete the installation and initial configuration:
apmdevops106
These are the steps to complete the installation and initial configuration:
3
Configure WebLogic to Use the Java Agent
To configure Oracle WebLogic to use the Java agent, you edit the WebLogic startup script. By default, the WebLogic startup script is startWebLogic.sh or startWebLogic.cmd in the 
$WEBLOGIC_HOME
/samples/domain/
<domain_name>
/bin directory. Depending on your requirements, the startup script can be specific to a WebLogic domain or you can use a different startup script. For example, an application-specific startup script. You can also use a different location for the startup script.
Follow these steps:
  1. Navigate to the directory that has the WebLogic startup script you want to modify. For example:
    cd $WL_HOME/samples/domain/wl_server
  2. Open the WebLogic startup script in a text editor. For example:
    vi startWebLogic.sh
  3. Locate the command line for setting Java options or the Java command line and add the following command-line options. For example:
     -javaagent:
    <PathToAgentJar> 
    -DagentProfile=
    <PathToAgentProfile>
  4. Save and close the script.
Configure WebLogic with IBM J9 Virtual Machine (JVM) to Use the Java Agent
You can configure your application server on different Java Virtual Machines. When using IBM J9 JVM, consider the following guidelines:
  • IBM J9 JVM with JRE 1.6.0: It is required to use the 
    AgentNoRedefNoRetrans.jar
     file instead of 
    Agent.jar
    .
  • IBM J9 JVM with JRE 1.7.0 or 1.8.0: It is recommended to use the 
    AgentNoRedefNoRetrans.jar
     file instead of 
    Agent.jar
    .
AgentNoRedefNoRetrans.jar
 deactivates class redefinition and retransformation to prevent possibly performance issues.
Using the AgentNoRedefNoRetrans.jar file has the following limitations:
  • Metrics are not reported for system classes (java.*), NIO (Sockets and Datagrams), and SSL sockets because the class redefinition and retransformation functions are deactivated.
  • Instrumentation on sockets reverts to pre-Introscope 9.0.
  • ManagedSocket style remote dynamic instrumentation is disabled.
  • Changes to the PBD files require the instrumented JVM to be restarted before being applied.
  • Deep inheritance and hierarchy support instrumentation features are disabled.
  • Automatic entry point and automatic backend detection are disabled.
  • If you are using the AllAppServer agent distribution with the AgentNoRedefNoRetrans.jar file, the alternate profile is named IntroscopeAgent.websphere.NoRedef.profile.
  • If you have both instrumented and noninstrumented applications on the same computer, include the
    -Xshareclasses:none
    setting in the Generic JVM Argument. This setting avoids errors on AIX. A unique directory is required when there is more than one version of WebSphere using the same agent directory.
  • If you use a non-IBM JVM or an IBM JVM version other than 1.5, not all metrics and messages are output.
Follow these steps:
  1. Edit the WebLogic startup script as explained above.
  2. Set the Java command line options as follows: 
    -javaagent:<Path_To_AgentJar> -DagentProfile=<Path_To_AgentProfile>,
    where <Path_To_AgentJar> and <Path_To_AgentProfile> are the paths to 
    AgentNoRedefNoRetrans.jar
     and 
    IntroscopeAgent.NoRedef.profile
    , respectively. For example:
    -javaagent:<Agent_Home>/AgentNoRedefNoRetrans.jar -DagentProfile=<Agent_Home>/core/config/IntroscopeAgent.NoRedef.profile
  3. Save and close the script and restart the WebLogic application server.
Enable Cross-Process Tracing 
Transaction trace sessions enable you to trace all the operations that occur in a transaction. The operations include transactions that cross JVM boundaries on computers with compatible JVM versions.
Cross-process transaction tracing is supported for synchronous transactions, such as servlets to EJBs, and asynchronous transactions.
Follow these steps:
  1. Add
    -Dweblogic.TracingEnabled=true
     to the java command line for starting WebLogic Server.
  2. Open the IntroscopeAgent.profile in a text editor.
  3. Locate and set the
    introscope.agent.weblogic.crossjvm
    property to true as follows:
    introscope.agent.weblogic.crossjvm=true
  4. Save and close the IntroscopeAgent.profile. Cross-process transaction tracing in WebLogic Server has been enabled.
Enable JMX Metrics
Application Performance Management (Digital Experience Insights from CA) does not support JMX metric reporting.
Introscope can collect management data that application servers or Java applications expose as JMX-compliant MBeans. The JMX metrics display in the metric browser tree.
WebLogic provides the following sources of JMX metrics:
  • RuntimeServiceMBean
     
    provides per-server runtime metrics, including active effective configuration
  • DomainRuntimeServiceMBean
    – provides domain-wide runtime metrics
  • EditServiceMBean
     
    allows user to edit persistent configuration
Introscope polls only RuntimeServiceMBean for metrics, and supports local access and contains data that is expected to be relevant. However, Introscope can support any MBean built to the JMX specification. For more information about the JMX specification, see the Oracle.com website.
To support the collection of JMX metrics, the following keywords are defined and enabled by default in the IntroscopeAgent.profile file for WebLogic:
  • ActiveConnectionsCurrentCount
  • WaitingForConnectionCurrentCount
  • PendingRequestCurrentCount
  • ExecuteThreadCurrentIdleCount
  • OpenSessionsCurrentCount
Introscope displays the JMX metrics in the Metric Browser tree under the following node:
<Domain>|<Host>|<Process>|AgentName|JMX|
Configure WebLogic with JRockit JVM to Use the Java Agent
If you are using WebLogic with JRockit JVM, use the following command-line options to start the JVM:
JAVA_VENDOR=Bea
JAVA_OPTIONS=%JAVA_OPTIONS% -javaagent:PathToAgentJar -DagentProfile=PathToIntroscopeAgent.profile
Troubleshoot WebLogic with JRockit JVM to View Socket Metrics
Symptom:
Due to a third-party compatibility issue, you can experience a problem with viewing metrics for socket clients.
Solution:
Turn on metrics for socket clients by using the Managed Socket option.
Follow these steps:
  1. Open the toggles_typical.pbl or toggles_full.pbl file in a text editor.
  2. Turn on the
    Managed Socket
    option to trace socket metrics. For example:
    #######################
    # Network Configuration
    # ================
    #TurnOn: SocketTracing
    # NOTE: Only one of SocketTracing and ManagedSocketTracing should be 'on'. ManagedSocketTracing is provided to
    # enable pre 9.0 socket tracing. 
    TurnOn: ManagedSocketTracing
    TurnOn: UDPTracing
  3. Save your changes.
Troubleshoot WebLogic to Fix WebAppSupport Failure
WebAppSupport is implemented as an agent extension. Starting with CA Application Performance Management 10.7, no WebAppSupport configuration is normally needed on any application server. However, unpredictable classload behavior of some application servers when using certain JVMs can cause the WebAppSupport extension to fail. In this case, you must configure a startup class or custom service manually and apply a small workaround to use the legacy WebAppSupport configuration.
Follow these steps:
  1. Open the WebLogic Administrative console and select the 
    Environments
    folder.
  2. Click the
    Startup & Shutdown
    folder, then click
    Configure a New Startup Class
    .
  3. In the
    Name
    field, enter:
    Introscope Startup Class
  4. In the
    ClassName
    field, enter:
    com.wily.introscope.api.weblogic.IntroscopeStartupClass
  5. Click
    Create
    The Target and Deploy tab displays.
  6. Select the servers where this startup class is available. 
  7. Click
    Apply
    and select the
    Run
     above the Application Deployments option.
  8. Add the location of the
    WebAppSupport.jar
    to the <server or application server> startup classpath. The location of the
    WebAppSupport.jar
    is
    /wily/core/ext
    .
  9. Open the
    /core/config/wl100x.pbd
    file in a text editor and comment out the following line:
    #
     TurnOn:  webappTracing
  10. Restart the application server.