Database with TIBCO Enterprise Message Service™ Configuration for bwagent

The bwagent can be configured to use an external relational database for persistence and TIBCO Enterprise Message Service™ (EMS) for transport among bwagents. PostgreSQL, MySQL, Microsoft SQL, and Oracle are the supported databases.

In your production environment, ensure you are using an external database for data persistence and either TIBCO FTL® or TIBCO Enterprise Message Service for communication transport.
Note: Regularly back up domain data using the bwadmin backup command. For more information about backing up and restoring domain data, see Backing up and Restoring a Domain
Note: For a non admin EMS user, the following permissions are to be given to use bwagent:
grant topic "$sys.monitor.>" user=<username> all
grant admin user=<username> view-connection,view-server,create-destination
Note: Make sure that TIBCO Enterprise Message Service (EMS) server has a dynamic permission for topics or queues. For more information, see "Wildcards and Dynamically Created Destinations" in the TIBCO Enterprise Message Service™ User's Guide.

For a multi-agent, multi-machine environment using an external database and TIBCO Enterprise Message Service, the following properties in the bwagent.ini file are important.

bwagent properties for Multi-Agent, Multi-Machine Environments using Database/EMS
Property Name Description
bw.agent.technology.dbems.db.provider Database provider. One of:
  • postgresql
  • mysql
  • mssql
  • oracle
  • db2
bw.agent.technology.dbems.db.driver The database driver.

Example: dbDriver=org.postgresql.Driver

bw.agent.technology.dbems.db.connectionURL The URL to connect to the database.

Example: jdbc:postgresql://localhost:5432/bwadmindb

bw.agent.technology.dbems.db.userName The user name to authenticate to the database.
bw.agent.technology.dbems.db.password The password to authenticate to the database.
bw.agent.technology.dbems.ems.serverUrl The URL to connect to the EMS server.

Example: tcp://localhost:7222

bw.agent.technology.dbems.ems.userName The user name to authenticate to the EMS server. The default is admin.
To authenticate a non-admin user, create a user and set the password. Run the following two commands in the TIBCO EMS admin console:
  • grant topic "$sys.monitor.>" user=sri2 all
  • grant admin user=sri2 view-connection,view-server
bw.agent.technology.dbems.ems.password The password to authenticate to the EMS server. There is no password by default. You can provide obfuscated password. For more information about how to obfuscate passwords, see Obfuscating or Encrypting Password for Database, EMS, and FTL Users.
bw.agent.technology.dbems.ems.requestQueueName Member Queue Name. Set the value as bw6.admin.operations.queue.<memberQueueName> where memberQueueName is the value of bw.agent.memberName.

For example, If bw.agent.memberName=machine1, bw.agent.technology.dbems.ems.requestQueueName=bw6.admin.operations.queue.machine1

bw.agent.technology.requestTimeout Timeout for requests sent to other bwagents The default value is 6000 milliseconds.
bw.agent.technology.remote.status.requestTimeout

Timeout for requests sent to bwagents to find the status of AppNodes, applications, and other bwagents. The default value is 3000 milliseconds.

bw.agent.technology.dbems.ems.reconnection.interval Set the bw.agent.technology.dbems.ems.reconnection.interval property to specify, in milliseconds, how often the bwagent checks its connection with the EMS server.

The default value is 10000 milliseconds.