Follow Us on Twitter

Oracle BAM 12c: de diverse mogelijkheden van het tonen van Middleware data

Het goed volgen en beheren van berichten binnen een Middleware omgeving is altijd een uitdaging geweest. Veel organisaties kiezen ervoor een klantspecifieke oplossing te maken om in een omgeving berichten te kunnen volgen. Met de release van Oracle Business Activity Monitoring (BAM) 12c is er een grote stap gezet naar een kant-en-klare oplossing. BAM wordt vaak ingezet om managers te ondersteunen, zoals een manager van een servicedesk die met behulp van BAM12c vrij snel een dashboard heeft met een overzicht van openstaande en afgesloten servicecalls. In dit Whitebook ga ik er verder op in om BAM te gebruiken voor technisch,- en applicatiebeheer.

Dit Whitebook geeft eerst een introductie van Oracle BAM 12c. Daarna worden de mogelijkheden van Oracle BAM besproken, en dan Oracle BAM in combinatie met Oracle SOA Suite. Tenslotte wordt er een voorbeeld van BAM gegeven.

BAM 12c

Oracle BAM is een complete oplossing voor het maken van real-time dashboards en proactieve monitoring van bedrijfsprocessen en (web)services. Oracle BAM ondersteunt dan ook managers en beheerders met actuele time informatie voor het ondersteunen van hun werkzaamheden. Door ook gebruik te maken van KPI’s kunnen de managers en beheerders meteen reageren om de processen zo efficiënt mogelijk te maken.

De data voor de dashboards kan uit verschillende bronnen komen, zoals trace data uit applicaties, voortgangssignalen uit een BPEL- of BPM-proces, live financiële data, maar ook data uit sensors of RFID-tags.

Deze data kan door middel van queries en het toepassen van bedrijfsregels gebruikt worden in rapporten en dashboards. Eindgebruikers kunnen door middel van de Composer hun eigen dashboards creëren. De mogelijkheden hiervoor zijn uitgebreid.

De data voor de BAM dashboards wordt opgeslagen in het geheugen van een intern “caching framework” dat is gebaseerd op Coherence. (Coherence is een manier om data in het geheugen te laten en is dus snel benaderbaar) Data wordt in deze cache geladen via verschillende aanvoerkanalen waarvan JMS de belangrijkste is. BPEL-, maar ook BPM-processen, genereren data die rechtstreeks in de BAM-tabellen wordt opgeslagen. Out-of-the-box dashboards maken weer gebruik van de data in deze BAM-tabellen. Deze tabellen staan dus in het caching framework. Wanneer er alleen OSB gebruikt wordt in een Middleware omgeving, kan er vanuit het OSB-proces een bericht op een JMS queue gezet worden die weer wordt uitgelezen door BAM.

KPI’s

KPI staat voor Key Performance Indicator. Een voorbeeld van een KPI is om de doorlooptijd van de processen te monitoren. Een KPI kan ook ingericht worden om bedrijfsprocessen te monitoren. Een voorbeeld hiervan is het aantal servicecalls bij een helpdesk. Een ander voorbeeld van een KPI is ook hoe vaak een (web)service wordt aangeroepen. Dit kan dan weer gebruikt worden om bijvoorbeeld de kosten te verdelen.

Binnen BAM zijn er twee typen KPI’s; Realtime KPI’s en Scheduled KPI’s. Realtime KPI’s worden constant bijgewerkt met nieuwe data vanuit de BAM database. Scheduled KPI’s draaien zoals de naam het al zegt, op geplande tijdstippen. Een voorbeeld hiervan is bijvoorbeeld het tellen van het aantal niet afgesloten servicecalls bij een helpdesk op een vast tijdstip.

Real time BAM Continuous Query Service

De Continuous Query Service (CQS) is een specifiek voor BAM ontwikkelde “schil” om de Continuous Query Language (CQL) engine van Oracle Event Processing (OEP). Lees meer over OEP in ons Whitebook over SOA en OEP 12c. CQS ondersteunt gegevensstromen (non-persistent, zogenoemde stream data-objecten) en gearchiveerde (persistent) data-objecten. Stream data-objecten zijn gebaseerd op realtime data. Persistent data-objecten zijn gebaseerd op data die ergens is opgeslagen. Een Continuous Query is dus een resultaat van realtime geselecteerde data of gebaseerd op opgeslagen data. Deze resultaten worden automatisch afgeleverd. Als er een query wordt gemaakt, creëert CQS de tabellen in CQL. De query wordt hier dan geregistreerd. Hierna worden resultaten van de query verwerkt in CQL en doorgezet naar CQS en de report cache. Op deze report cache kunnen er BAM dashboards gemaakt worden die realtime ververst worden.

BAM en SOA Suite

In dit Whitebook wordt er ingegaan op de combinatie van BAM met SOA Suite. BAM is ook te gebruiken door andere Middleware technologieën, zoals BPM. Hierna wordt getoond hoe BAM en SOA Suite met elkaar werken.

Wanneer men gebruik wil maken van BAM met data uit SOA Suite moet er eerst een aantal stappen gedaan worden.

Als eerste moet de analytics MBean geconfigureerd worden. Ga naar de System MBean browser, ga dan naar oracle.as.soainfra.config. Open AnalyticsConfig en selecteer de MBean analytics. Zet DisableProcessMetrics op “false”:

BAM en SOA Suite samen

Na het zetten van de MBean moet er per SOA Suite proces de Analytics geconfigureerd worden. Dit kan in JDeveloper door op “Configure Analytics…” te klikken:

Zet Configure Analytics aan...

Selecteer dan in het SOA Analytics Metrics scherm de optie die men wenst. Door te kiezen voor Generate For All Activities worden bijvoorbeeld ook de data van SOAP Endpoints en Mediators vastgelegd in de database:

Selecteer het gewenste standaard gedrag in SOA Analytics Metrics

Deze instelling kan (te) veel data opleveren. Kijk dus goed wat er gegenereerd wordt per optie en of dit dan voldoende is.

Het SOA Suite proces moet natuurlijk wel opnieuw gedeployed worden. Voer dan de stappen uit die gedaan moet worden om het proces data te laten genereren in de BAM database.

In de BAM Composer zijn er al een aantal out-of-the-box dashboards aanwezig die men meteen kan gebruiken. Deze dashboards zijn gebaseerd op de data-objecten die standaard in de BAM database aanwezig zijn.

Out-of-the-box dashboards in BAM Composer

Hieronder staat een overzicht van de standaard data-objecten die aanwezig zijn in de BAM Composer waar de dashboards weer op gebaseerd zijn. Zoals je kunt zien is er ook een AlertHistory data-object aanwezig. Deze is voor KPI’s.

Standaard data-objecten aanwezig in de BAM Composer

Door het starten van een out-of-the box dashboard wordt er data getoond zoals in onderstaand voorbeeld.

Voorbeeld out-of-the box BAM 12c dashboard

Dit is natuurlijk een vrij simpel dashboard. De data voor het dashboard kan gebaseerd worden op verschillende data-objecten. Een belangrijk onderdeel binnen BAM zijn Business Queries. Business Queries is een generieke naam voor verschillende typen query mogelijkheden, zoals CQL, binnen BAM. Bovenop deze Business Queries kunnen weer business views gemaakt worden. Business Views zijn een visuele representatie van de Business Queries. De visuele representatie kan gedaan worden door middel van veel verschillende componenten, zoals tables, pie-charts, gauges, etc. Uiteindelijk kunnen de Business Views weer gebruikt worden in de dashboards. Er zijn dus enorm veel mogelijkheden en de belangrijkste vraag blijft dan wat men nu echt wil zien.

Met een aantal simpele stappen zijn al vrij snel zogenaamde BAM dashboards te maken. In theorie is dit zelf mogelijk voor eindgebruikers of key-users.

Hieronder staan nog twee out-of-the box dashboards die al standaard beschikbaar zijn binnen BAM. Het eerste voorbeeld geeft inzicht in de Process Cycle Time.

Process Cycle Time: voorbeeld BAM12c dashboard

Het tweede voorbeeld geeft een mooi overzicht van de process workload over de tijd:

Process Workload: voorbeeld BAM12c dashboard

Conclusies

Door de nieuwe versie van BAM heeft Oracle een enorme stap gemaakt voor het tonen van data uit een Middleware omgeving. Doordat er al standaard dashboards aanwezig zijn kan men een vliegende start maken met het tonen van data. Er moet wel goed nagedacht worden over wat en hoe men het wil tonen. Door het genereren van Process Analytics wordt er veel data vastgelegd en het kan gebeuren dat men verdwaald in het woud van data.

Referenties

Lees ook het Whitebook Integratie van SOA met Oracle Event Processing 12c uit 2014.

Waardering:
 

Reacties

Nieuwe reactie inzenden

De inhoud van dit veld is privé en zal niet openbaar worden gemaakt.

Meer informatie over formaatmogelijkheden

CAPTCHA
Deze vraag is om te testen of u een persoon bent en om spam te voorkomen
Image CAPTCHA
Enter the characters shown in the image.