webMethods Optimize for Infrastructure

Software AG Optimize for Infrastructure (OFI): Installation and Configuration

webMethods Optimize is used to monitor resource availability and thresholds. It also sends alerts and takes actions in case of failures or rule violations.  

The two different implementations of Optimize are: 

  • Optimize for Infrastructure (OFI)

    OFI is used to monitor system data in real-time such as the status of Scheduler and the trigger or ports on Integration Server (IS). It can monitor individual objects as well as the overall status of your system.
  • Optimize for Process (OFP)

    OFP is used to monitor how business processes are performing across the enterprise.

Components of OFI

a)    Infrastructure Data Collector
It collects the infrastructure data using the Monitoring API and passes it to the Analytic Engine.

b)    Web Service Data Collector

The Web Service Data Collector provides an interface through which clients or programs can send operational or process data about applications to the Analytic Engine.

c)    The Analytic Engine

The Analytic Engine receives business, system, and process data from the data collection engine and saves it in the database. Optimize for Infrastructure analyzes data, saves the analysis in the database, and sends information about the status of business and system activity to the My webMethods user interface. It also performs other actions such as sending alerts to specified users, when problems occur. 

Software AG Products Required for OFI Implementation 

SAG ComponentFunction
Web Service Data Collector (WSDC)
Infrastructure Data Collector (IDC)
Data Collection
Software AG Universal MessagingData Communication
Analytic Engine (AE)Data Processing and Analysis
Database ComponentsData Storage
My webMethods User InterfaceData Presentation



Sub-components of Analytic Engine  

AE ComponentsFunctions
Event HandlerReceives system data from IDC and business data from Web Service Descriptor (WSD).
Process TrackerReceives data from WSD and tracks the state of processes such as 
wait and cycle time.
Statistical EngineRuns algorithms on data.
Rules EngineCompares the data received from the Analytic Engine with existing or custom rules. 
Web ServicesSends the analysis results to the Marketplace Web Service (MWS) user interface. It displays the results, along with icons, and indicates if there is a rule violation. 

OFI Installation 

   a) Database for OFI

  • Create a separate schema (Oracle) or database (SQL server) for OFI and run the database script for Optimize. 
 WebMethods Database Component Configurator


  • The script will install the below tables in the database.

    Database Configurator
    b) Install Optimize 

Software AG Installer

The script will install the below tables in the database.

Software AG Installation

Starting and Stopping OFI Components 

Once the installation is done, start the Optimize components by running the below .bat or .sh script.


Optimize ComponentStartup Batch Application
AE<SAG Directory>\optimize\analysis\bin\startup.bat
IDC<SAG Directory>\optimize\dataCollector\bin\startup.bat
WSDC<SAG Directory>\profiles\InfraDC\bin\startup.bat

Note: If these components were registered as windows demons during installation, they can also be started through windows services.


Optimize ComponentStartup Batch Application
AE<SAG Directory>\optimize\analysis\bin\startup.sh
IDC<SAG Directory>\optimize\dataCollector\bin\startup.sh
WSDC<SAG Directory>\profiles\InfraDC\bin\startup.sh

Checking Server Status

  • Analytic Engine

    In MWS, navigate to Administrator->My webMethods->System Settings->Server
    and click on Check Server Status. Green color means AE is running. 

Analytics Engine Host

  • Infrastructure Data Collector

    Open the below-mentioned URL in a browser. 
    If IDC is running, the below window will open

Software Web Methods

OFI Configuration 

        c) Integration Server Configuration 

            Once the Integration Server is up, configure using the below-mentioned steps:

  1. Optimize package configuration 
  • Navigate to Packages->Management
  • Click on the home page of the package WmOptimize
  • Set the Analytic Engine host, port, and the Unified Messaging (UM) server URL other than Default


2. JMS Configuration

  • Navigate to Settings->Messaging->JMS Configuration- JNDI Settings
  • Change the provider URL and make it other than Default on the Default JNDI provider



  • Click on Test lookup and make sure that it is returning the list of connection factories, topic, and queue
  • Navigate to Settings->Messaging->JMS Settings and enable the Default IS JMS connection


d) MWS (My webMethods Server) configuration 

1. Database Pool Configuration for OFI  

  • In MWS, Navigate to Administrator->System Wide->Environment and click on Add Pools to create a database connection pool to Optimize database and test the connection
  • This is similar to the JDBC pool on the Integration Server.


2. Define Environment 

  • The Define Environment page enables you to configure Optimize components such as Analytic Engine and Data Collector
  • My webMethods provides a user interface to configure Optimize (Environment), once all the components are running
  • In MWS, navigate to Applications->Administration->System-Wide-> Environments>Define Environments to add a new environment 

    The following are the seven configuration steps:
  1. Add Design Servers
  2. Configure Servers
  3. Define Host
  4. Map Server
  5. Map Endpoints
  6. Map Database Pools
  7. Validate

3. Deploy Environment


4. Discovery
5. Assets
6. Monitor Components 

Configuration Overview and Analytics Overview

a)    Configuration Overview

Configuration Overview

b)    Analytics Overview

Analytics Overview





 KPIs and Rules

    a)    Key Performance Indicators (KPIs)

  • It is used to monitor quantitative business and system data. Optimize uses KPIs to monitor data for exceptions and trends.
  • System KPI instances store application data and business KPI instances store data on business processes.
  • Optimize create and store data that corresponds to the KPI in a KPI instance.

    State KPI instance is used to store the value of the last data collected in each collection interval where the possible values are 1 (online) or 0 (offline).

 b)    Rules

  • A rule signifies a condition under which a processor resource becomes problematic and requires attention when the IS trigger or UM is down.
  • We can also define the alert notification or action required, in case of a rule violation.
  • Optimize provides inbuilt rules that can be modified or, a new custom rule that can be created.  
  • By default, Optimize applies the rule on all processes or applications. To apply the rule on specific processes or applications, the rule filter needs to be created. 

Types of rules 

  • KPI Rules:  This applies to KPIs that were created for business or system data 
  • Event and Threshold Rules: These rules are applied on all types of data that require immediate response, such as unexpected shut down of an application or the CPU usage exceeding its limits

OFI Use Case 

a)  Alert notification when an application is down 

  1. When the Integration Server is down

    Failed Status
  2. When the UM server is down

            Error in Optimize       Error in Optimize

b) Alert notifications when a Software AG component is offline or down
Alert notification when any webMethods component is offline or down

  1.   When the IS Scheduler is disabled

    Host Name
  2.  When the IS Port is disabled

    Disable the https port 5557 on IS

     Failed Status
  3. If any package is disabled

    Disable the package on the server

    Failed Status

c)  Alert notification when the server memory threshold is reached

When the used memory of IS exceeds 10% of the allocated memory

  Host Name

d)  Alert notification when Realm Channel has queued up documents

   Failed Status

e)  Alert notification when CSQ for Native Connection is more than 0

Failed Status   

f) Take an action when the rule is violated             

In case a trigger is down, it is considered to be a violation of rules. The desired action should be taken to execute the services instantly, which will enable the trigger again.