Celebrar los logros y la vida compartida
C ONCEBIR LO QUE SE TRAE ENTRE MANOS COMO PROCESO DE FONDO, COMO DESARROLLO HUMANO INTEGRAL
7.1. About
WebLogicMonitor allows you to monitor a WebLogic Server. WebLogicMonitor uses the JMX Remote API and and accesses MBeans deployed within WebLogic that contain performance information about the components that are being managed. This performance information includes pool sizes for data sources (JDBC), threads, connections (JCA), queues (JMS), servlets, JSPs, Enterprise Java Beans (EJB), timer queues.
Throughput is also monitored when it is available. This metric is computed by WebLogic and is based on the number of messages moving through a queue at any given time. The throughput metric gives a good picture of the health of the messaging subsystem, which is commonly used throughout many enterprise applications. Stateless, Stateful, and Entity EJB performance metrics are monitored, as are message driven bean performance.
Security realms are also monitored for potential denial of service attacks. This includes recording of authentication failures, broken out by valid accounts, invalid accounts, and accounts that are currently locked out. Application specific realms can be monitored by customizing the built in WebLogic default realm.
7.1.1. Overall Application Server Vitals
• Number of total and active JMS connections and servers
• Overall number of JTA transactions that are rolled back or abandoned • JTA transactions rolled back due to system, application, or resource issues • Number of JTA rollbacks that timeout
• Active and committed JTA transaction count
• Timer exceptions, executions, and scheduled triggers • User accounts that are locked and unlocked
• Authentication failures against locked accounts and non-existent accounts • Total sockets opened, and the current number of open sockets
• JVM Mark/Sweep and Copy garbage collector execution counts • Number of JVM daemon threads
• JVM Heap/Non-Heap used and committed memory
7.1.2. Entity EJB, Message Driven Bean (MDB), and Session EJB Subsystem Met-
rics
• Rollback and commit count on a per-EJB basis • Bean pool accesses, cache hits, and cache misses • Number of Beans in use, idle, and destroyed • Number of activations and passivations
7.1.3. Data Pool (JDBC) metrics
• Leaked, Total, and Active connections • Number of requests waiting for a connection • Number of reconnect failures
BEA WebLogic Application Server
7.1.4. Queue (JMS) Metrics
• Bytes received, currently active, and pending in the queue • Number of queue consumers
• Number of current, pending, and receives messages
7.2. Prerequisites
Prerequisite Restriction
Product Resource Manager 4.x, Zenoss Version 2.2 or higher
Required ZenPacks ZenPacks.zenoss.ZenJMX,
ZenPacks.zenoss.WebLogicMonitor BEA WebLogic Versions WebLogic 9.0 or higher
Table 7.1. BEA WebLogic Prerequisites
7.3. Enable Monitoring
7.3.1. Configuring WebLogic to Allow JMX Queries
If you have not set up a domain and server then run the startWLS.sh script located in the ${BEA_HOME}/wlserv- er_10.0/server/bin directory. If you don't have the Terminal I/O package installed you can set the JAVA_OPTIONS
variable to the following value:
JAVA_OPTIONS="-Dweblogic.management.allowPasswordEcho=true" export JAVA_OPTIONS
Provide a user name and password to start WebLogic. Note that WebLogic requires a password that is at least eight characters long. Wait for WebLogic to generate a configuration and start up. Shut down WebLogic and restart it with remote JMX access enabled.
To enable remote JMX access set the following variable:
JAVA_OPTIONS="-Dcom.sun.management.jmxremote.port=12347"
JAVA_OPTIONS="${JAVA_OPTIONS} -Dcom.sun.management.jmxremote.authenticate=false" JAVA_OPTIONS="${JAVA_OPTIONS} -Dcom.sun.management.jmxremote.ssl=false"
export JAVA_OPTIONS
Then re-run the ./startWLS.sh script. JConsole can then communicate with the server on port 12347.
7.3.2. Configuring Resource Manager
All WebLogic services must have a device entry under the /Devices/Server/WebLogic device class.
Note
The zenjmx daemon must be configured and running. See Section 29.2.1, “Sun Java Runtime Environment (JRE)” for more information about configuring the zenjmx daemon with the Sun JRE tools.
1. Navigate to the device class or device. • If applying changes to a device class:
BEA WebLogic Application Server
a. Select the class in the devices hierarchy. b. Click Details.
c. Select Configuration Properties. • If applying changes to a device:
a. Click the device in the device list. b. Select Configuration Properties.
2. Edit the appropriate configuration properties for the device or devices.
Name Description
zWebLogicJmxManagementAuthenticate This configuration property is deprecated zWebLogicJmxManagementPassword JMX password
zWebLogicJmxManagementPort The port number used to gather JMX information zWebLogicJmxManagementUsername JMX username for authentication
Table 7.2. WebLogic Configuration Properties
3. Click Save to save your changes.
You will now be able to start collecting the WebLogic server metrics from this device.
4. Navigate to Graphs and you should see some placeholders for performance graphs. After approximately 15 minutes you should see the graphs start to become populated with information.
Tip
The out-of-the-box WebLogic data source configuration has been defined at the macro level, but can be configured to operate on a more granular basis. For example, the Servlet Reload Count applies to all servlets in all web applications but it could be narrowed to be Servlet /submitOrder in web application "production server".
7.4. Change the Amount of Data Collected and Graphed
1. Navigate to the device or device class.2. Select Monitoring Templates in the left panel.
3. From the Action menu, select Bind Templates to display the Bind Templates dialog. 4. Move templates from the Available area to the Selected area, and then click Save.
Name Description
WebLogic Core Core information about any WebLogic server, including memory usage, threads, and uptime.
WebLogic JCA WebLogic JMS
WebLogic JMS Destination WebLogic JTA
WebLogic JTA Rollbacks WebLogic JVM
BEA WebLogic Application Server
Name Description
WebLogic Timer Service WebLogic User Lockouts
Table 7.3. WebLogic Templates
5. Click the OK button to save your changes.
7.5. Viewing Raw Data
See the Section 29.5, “Using JConsole to Query a JMX Agent” section for more information about how to investigate raw data returned back from the application.
7.6. Monitor SSL-Proxied WebLogic Servers
If you are monitoring a Web application running on a BEA WebLogic server you may find that the transaction always fails with a code 550 regardless of how you configure the script. This could be a result of the WebLogic server being behind an SSL proxy. When used in this configuration, WebLogic requires that a WL-Proxy-SSL header be added to
the request so that it knows to redirect to HTTPS instead of HTTP.
To support this extra header in your Resource Manager Web transaction, you must make the following changes on the script tab of your WebTx data source.
• Remove any content from the Initial URL field. • Add the following to the beginning of the Script box.
add_extra_header WL-Proxy-SSL true go
7.7. Daemons
Type Name
Performance Collector zenjmx