Új diagnosztikai modul és a Harvester - 2. rész

2011-11-14

Cikkünk első részében megismerkedtünk az Oracle méltán népszerú WebLogic Server 11g Java alkalmazásszerverének diagnosztikai moduljával, melyet egy valós, nagyvállalati példán keresztül követtünk végig. Most folytatjuk cikksorozatunkat...

Cikkünk első részében megismerkedtünk az Oracle méltán népszerú WebLogic Server 11g Java alkalmazásszerverének diagnosztikai moduljával, melyet egy valós, nagyvállalati példán keresztül követtünk végig. Most folytatjuk cikksorozatunkat új diagnosztikai modul létrehozásával és a Harvester beállításaival.

 

Amikor új diagnosztikai modult hozunk létre, akkor a WLDF konfigurációját XML file-okban tároljuk el, melyek a SERVER_DIR/config/diagnostics alatt találhatók.

 

Új diagnosztikai modul létrehozása.

Nyissuk meg a WebLogic Consol-t (http://machine:port/console). Amennyiben szükséges lock-oljuk a konfigurációt, hogy szerkeszthessük.

Menjünk a DOMAIN > Diagnostics > Diagnostic Modules laphoz. Klikkeljünk a “New” gombra, hogy új diagnosztikai modult adhassunk környezetünkhöz.

Állítsuk be a nevet mondjuk “DiagModul”-ra. Miután a modul létrejött állítsuk be a “Targets” paramétert minden egyes szerverünkhöz. Ezután nézzük meg a konfigurációs file-t a SERVER_DIR/config/diagnostics alatt, valamint aktiváljuk a változásokat, ha még nem tettük meg.

 

Harvester beállítása

Határozzuk meg azon MBean attribútumok körét, amikből szeretnénk mintát venni. Itt kell azon attribútumokat is meghatározni, amik bizonyos értéke esetén riasztást szeretnénk küldeni.

 

A teljes MBean referenciát az alábbi linken találjuk:

http://download.oracle.com/docs/cd/E14571_01/apirefs.1111/e13951/core/index.html

 

Ezek közül is választhatunk, de a későbbi pontban részletezett Dashboard-ot is használhatjuk a megfelelő MBean kiválasztásához. Itt ugyanis van egy Metric Browser, ami megmutatja, hogy az adott szerver milyen regisztrált MBean-eket tartalmaz.

 

A vállalati rendszernél a következőket választottuk (zárójelben a monitorozott attribútum):

weblogic.management.runtime.JVMRuntimeMBean (HeapFreeCurrent)– JVM aktuális állapotát mutatja, többek között a számunkra fontos szabad heap méretet byte-ban.

 

weblogic.management.runtime.EJBCacheRuntimeMBean (CachedBeansCurrentCount)– ebben az EJB cache-ben tárolja az alkalmazás a memóriában lévő (még nem perzisztált) stateful bean-eket, azaz esetünkben az egyes üzleti tranzakciókat.

 

weblogic.management.runtime.WLDFInstrumentationRuntimeMBean (MethodInvocationStatistics(*)(*)(*)(max|count))– amennyiben beállítjuk az Instrumentation-t, akkor annak egyik típusa a MethodInvocationStatistics. Erről bővebben később olvashat. Itt csak annyit jegyeznék meg, hogy ez egy adott metódushoz készít statisztikát és ebből olvassuk ki a maximum és count értékeket, ami a maximális hívási időt és a hívások számát tartalmazza.

 

Az MBean-ek esetén meg kell határoznunk a konkrét példányt is. Például, ha egy alkalmazásszerveren fut 3 különböző stateless EJB-nk, akkor például a EJBPoolRuntimeMBean-ből 3 különböző példányunk lesz. Hasonlóan például egy klászteres környezet esetén több futó WebLogic példányunk lesz saját JVM példánnyal, így a JVMRuntimeMBean-ből is több példányunk lesz.

 

Miután meghatároztuk az MBean-ek körét vegyük fel azokat a Harvester-hez, mint gyújtendő adatokat.

Ehhez menjünk a DOMAIN > Diagnostics > Diagnostic Moduls > DiagModul lapra.

Itt a Configuration > Collected Metrics alatt láthatjuk, hogy milyen gyújtött értékek vannak beállítva és itt adhatunk hozzá új értéket.

Itt beállíthatjuk a mintavételi időt is a „Sampling Period”-nál milliszekundumban. A Harvester ilyen időközönként fogja lekérdezni a megadott MBean-ek attribútumainak értékét.

A pontos beállításokat megnézzük a Masterfield Oktatóközpont WebLogic tanfolyamán. Jelentkezzen Ön is!.

 

A folytatásban megismerkedhet a Dashboard használatával, figyelje szakmai cikkeinket. Ne hagyja ki a következő részt sem!