Collecting Performance Parameters with respect to Activities and Processes

It is important to identify activity instances and process instances with respect to time and memory.

The activity instance and process instance data is collected from the AppNodes and is stored in a database. The stored data can be retrieved by using REST APIs with the help of Swagger UI.

Prerequisites

Use the PostgreSQL database to store the activity instance and process instance data.

Procedure

  1. Run the <TIBCO_HOME>\bw\6.x\config\dbscripts\engine\postgresql\create-analyzer.sql script.
    Optionally set the bw.analyzer.db.create.schema = true property in the analyzer_config.ini file stored at <TIBCO_HOME>\bw\6.x\config folder.
  2. Set the following configuration properties in the analyzer_config.ini file stored at .
    Property Description
    bw.analyzer.db.create.schema Create tables on startup if not exists. This property is optional.

    The default value is true.

    bw.analyzer.data.interval

    Set the value in minutes, hours, or in days.

    For example: bw.analyzer.data.interval=15days.

    The default value is not set. If the property is not set the query is executed on the complete data.

    bw.analyzer.refresh.interval Refresh interval for memory cache.

    The default value is 60000 milliseconds.

    bw.analyzer.udp.host Set the UDP server host address.

    The default value is localhost.

    bw.analyzer.udp.port Set the UDP server listening port.

    The default value is 34567.

    bw.analyzer.db.driver org.postgresql.Driver

    Currently only the PostgreSQL database is supported.

    bw.analyzer.db.connectionURL Set the database connection URL.

    The default value is jdbc:postgresql://localhost:5432/analyzer

    bw.analyzer.db.userName Set the database username.

    The default value is postgres.

    bw.analyzer.db.password Set the database password.

    The default value is admin.

    bw.analyzer.log.level Set the root log level.

    The default value is info.

    bw.analyzer.jetty.server.port Set jetty server port.

    The default value is 8080.

  3. Run the analyzer script.
    • For Windows: Run the analyzer.bat stored at <TIBCO_HOME>\bw\6.7\bin
    • For Mac OS and Unix: Run the analyzer.sh stored at <TIBCO_HOME>\bw\6.7\bin
  4. Enable the Java agent for an AppNode. Uncomment the following property in the AppNode's or AppSpace's .tra file.
    java.extended.properties=-Xmx1024m -Xms128m -XX:+HeapDumpOnOutOfMemoryError -javaagent:<BW_HOME>/bw/6.x/system/lib/com.tibco.bw.thor.admin.node_<version>.jar

    Set the property in an AppSpace's .tra file to enable Java agent for all AppNodes under that AppSpace.

  5. Set the bw.engine.analyzer.subscriber.enabled property to True in an AppNode's config.ini file.
    This property starts sending the activity instance and process instance data from an AppNode.

    Set the following properties in an AppSpace or AppNode's config.ini file:

    Property Description
    bw.engine.analyzer.udp.host Set UDP server hostname or an IP value.

    The default value is localhost.

    bw.engine.analyzer.udp.port Set UDP server listener port value.

    The default value is 34567.

    bw.engine.analyzer.batchsize Set the threshold value for activity or process instances to analyze the data in one batch.

    The default value is 100.

    bw.engine.analyzer.publishtimer Set subscriber publisher time interval in milliseconds.

    The default value is 30000.

  6. Start appnode and application.
    Use REST APIs to interact with the data using Swagger UI at URL http://<hostname/IP>:<PORT>/. By default, the Swagger documentation is available at http://localhost:8080.
    Note: Base path for all REST APIs exposed is http://<host or IP address>:<port>/api/

Example

Note: Activity instances and process instances with respect to time and memory is only applicable for Docker platform.