Previously on WLSDM blog, we have learned about monitoring applications' database statements (JDBC SQL) and performance on Oracle WebLogic server.
In this blog post we have created another tutorial to learn how to monitor and diagnose WLSDM back-end EJB business method invocation events.
What is Enterprise Java Beans?
EJB is written in Java programming language and it is component that contained the business logic of an Java application.
To host and run EJB applications, you need an application server (EJB Container) such as Oracle WebLogic Server. EJB performs and supports life cycle management, security, transaction management, and object pooling.
EJB application is deployed on the server that is also called server side component.
Enterprise Java Beans types
1. Session Beans
- Stateful Session Bean
- Stateless Session Bean
- Singleton Session Bean
2. Message Driven Beans (MDB)
3. Entity Beans
Monitoring Enterprise Java Beans (EJB)
WLSDM has back-end dashboards that offers monitoring EJB container. On WLSDM EJB dashboard you are able to view EJB Business Methods, its applications and method duration... etc. You can set alarm and configure EJB method duration threshold in "Monitoring & Diagnostics" page. You will be notified if EJB performance duration exceeds the threshold that you have defined.
Let's learn how to monitor and configure EJB business method monitoring infrastructure on WLSDM console.
1. How to access WLSDM EJB dashboard?
Go to "Monitoring & Diagnostics > Back-end Systems > EJB"
2. EJB dashboard page can be viewed as chart or grid list.
3. Click button to open EJB event details. You are able to list and monitor; "Application Name, Component Name, EJB Name, EJB Method Name, Total EJB Method Duration, Start Time and End Time of the EJB transactions" by using WLSDM console. Take below screen-capture as reference.
4. Go to "Page Operations" to configure dashboard visual settings.
5. Define alarm for the EJB event, then get notifications if EJB duration exceeds alarm threshold.
Back-end EJB Monitoring Configurations: Go to "Configuration > Monitoring & Diagnostics > Back-end Systems (tab)" page then click "edit" or add new monitoring event by clicking "Page Operations > New Back-end Systems Monitoring" button.
5.1. Select relevant WebLogic managed server
5.2. Select event as "EJB Business Method Invoke"
5.3. Click "Add Event" button
5.3. Define a value for alarm threshold (ms). We defined 1 ms for test purpose. 45 seconds is recommended.
6. Let's create an EJB transaction via StuckThreadForFree demo application.
We have received a new Web-Push notification by WLSDM. Because EJB duration is bigger than the threshold.
7. Click on Web-Push notification box and go to back-end notification page.
8. Check HTML email notification for the EJB alarms.
That's all. By using WLSDM, you can monitor your EJB methods, applications continuously without missing any bottleneck in the EJB container. Happy EJB monitoring :)