E-Business Suite Workflow

  • Last Updated 6/30/2023, 3:28:54 PM UTC
  • About 3 min read

Plugin info

name: ora-ebs-wf-status

Monitors the workflow component statuses

# Prerequisites

Important, if the connection to the database/ASM takes place over BEQ, the process resource limits for myrmex-ad must match those set for the oracle database/ASM processes. Set these limits in the systemd unit file for myrmex-ad and then reload and restart the myrmex-ad service. Refer to https://www.man7.org/linux/man-pages/man5/systemd.exec.5.html#PROCESS_PROPERTIES (opens new window) for the process limit directives and their ulimit equivalents.

# Events

  • oracle/ebs/wf/component_status the component status. This is emitted on every plugin run
    • Dimensions
      • sid the Oracle SID
      • component the workflow component name
  • oracle/ebs/wf/components/down the number of components which are unhealthy This is emitted only when one or more components are unhealthy
    • Dimensions
      • sid the Oracle SID
    • Tags
      • components comma separated list of component name which are not running

# Configuration

Plugin is configured with a yaml file:

  • instance_name: unique identifier for this database instance that will appear in emitted events. It does not affect the connection parameters.

  • source: the value that will appear as the source of metrics generated by this configuration. defaults to instance_name

  • oracle_home: set this only if you are logging on via a local (BEQ) connection. Not required when connecting via Oracle Net

  • oracle_sid: set this only if you are logging on via a local (BEQ) connection. Not required when connecting via Oracle Net

  • oracle_logon: the connection string just like in sqlplus. If the username or password contain the characters '@', '/', ' ' escape them in double quotes just like you would do for sqlplus; for example:

    oracle_logon: '"user@name"/"passw@rd"@//localhost:1521/TEST'
    // same applies for secrets
    oracle_logon: '"user@name"/"${polaris.db.test.pwd}"@//localhost:1521/TEST'
    
  • timeout: (optional default 10s), how long to wait before abandoning collection

  • interval: (optional default 90s), EBS workflow component status poll interval

  • healthy_threshold: (optional default 1), how many consecutive time a component must be in RUNNING state before it is declared healthy

  • unhealthy_threshold: (optional default 3), how many consecutive time a component must not be in RUNNING state before it is declared unhealthy

# Example Configuration


# the unique identifier for this database instance that will appear in the metrics. It does not affect the connection paramters 
instance_name: TEST

# set this only if you are logging on via a local (BEQ) connection. Not required when connecting via Oracle Net 
oracle_home: /u01/app/oracle/product/12.2.0.1/dbhome_1
# set this only if you are logging on via a local (BEQ) connection. Not required when connecting via Oracle Net
oracle_sid: TEST
# the connection string just like in sqlplus
# {<username>/<password>[@<connect_identifier>] | / } [AS {SYSDBA | SYSOPER | SYSASM}]
# local connection examples. make sure that you have set params oracle_home and oracle_sid above
#   - / as sysdba
#   - system/password as sysoper
# Oracle Net connection examples: 
#   - system/password@//localhost:1521/MY_INSANCE
# Encypted parameters (such as password or usernames) can be referenced using ${param_name} format
# For example to connect as sys where the password was encrypted in paramter /oracle/MY_INSTNCE/sys_pwd:
#   - sys/${/oracle/MY_INSTNCE/sys_pwd}@//localhost:1521/MY_INSANCE
oracle_logon: 'polaris/${polaris.db.test.pwd}@//localhost:1521/TEST'

# Validate Configuration

ora-ebs-wnm-status --run-conf /path/to/config/file.yaml --validate

# Testing

Run the plugin from the command line and get any emitted events on stdout

ora-ebs-wnm-status --run-conf /path/to/config/file.yaml

# List events emitted by this plugin

ora-ebs-wnm-status --events
Last Updated: 6/30/2023, 3:28:54 PM