Hawk Event Service Configurations

You can install the TIBCO Hawk Event Service in an on-premises environment by selecting the Custom Installation profile and then selecting the Event Service feature while installing TIBCO OI Hawk RedTail. The TIBCO Hawk Event Service is a separate process that collects information about Hawk agents. Because it runs independently from other Hawk processes, the Event Service can detect and report the event even when an agent process fails.

The Hawk Event Service can communicate with the Hawk agent only if the Hawk agent is running on an on-premises platform such as Linux or Microsoft Windows. The Hawk Event Service must be configured by using TIBCO EMS, TIBCO Rendezvous or TCP transport for TIBCO Hawk. You must also configure the Hawk agent (hawkagent.cfg) to communicate over TIBCO EMS, TIBCO Rendezvous or TCP transport for TIBCO Hawk so that the Hawk agent can communicate with the Hawk Event Service.

The main tasks of the Event Service are:

Record events reported by agents in text files or relational databases using JDBC
Detect and respond to agent termination
Asynchronous notifications using AMI

The Hawk Event Service records:

All alerts raised and cleared by the Hawk agents across the network, as well as the changes in Agent’s alert level
Record events reported by agents in text files or relational databases using JDBC
Asynchronous notifications using AMI

Persistence of TIBCO Hawk Events using JDBC

All alerts generated and cleared by Hawk agents across the network, as well as agent activation and expiration events, are written to a relational database using JDBC. Data is stored in two separate tables, created automatically at startup (if they are not already present in the specified database):

HawkAgentInfo: The events onAgentAlive, onAgentExpired, onMicroAgentAdded, onMicroAgentRemoved, onRulebaseAdded, and onRulebaseRemoved add rows to this table.
HawkAlertClearInfo: Events onAlert and onClear add rows to this table.

Fault Tolerance

To enable fault tolerance, uncomment the ft parameter.

This instance joins a fault tolerant group named HawkEventService:hawkdomain, where hawkdomain is the domain of the agent.

Note: Separate instances of TIBCO OI Hawk RedTail must be running on at least two machines in order to use fault tolerance. Fault tolerance must be enabled on each instance.

Weight

Assign the weight of this instance using a positive integer. The member with the highest weight receives rank 1 (so it outranks all other members). When an instance fails, the next-highest instance is activated and the member with the next highest weight receives rank 2; and so on.

Be careful not to confuse TIBCO Hawk Event Service data files (Event.dat) with Event Service log files (Event.log).

Event.dat data files contain the data produced by the Event Service.
Event.log log files record the state of the Event Service itself.

You can configure the Hawk Event Service for the on-premises platforms such as Linux or Microsoft Windows. All the required configuration parameters are stored in CONFIG_FOLDER/bin/hawkevent.cfg.

Each of the parameters are explained in more detail in the following table:

Hawk Event Service Configuration Details

Property

Description

hawk_domain

The Hawk domain name. The agents and the event service must have the same hawk domain value in order to communicate.

 

Mandatory: Yes

Suggested Value: "default"

agent_name

The name of the agent to communicate

 

Mandatory: Yes

Suggested Value: Host name

TIBCO Rendezvous Transport

rvd_session

Comment this option if you are using TCP Transport for TIBCO Hawk or TIBCO EMS as the primary transport.

The value of this parameter must be the same as the value of the ami_rvd_session parameter in the Hawk Agent configuration file (hawkagent.cfg).

The format is rvd_session <service> <network> <daemon>.

If you use this option, all three parameters must be present and separated by white space. Use a semicolon (;) to indicate a null value, or use an empty string, for example:

-rvd_session 7474 "" tcp:7474

 

Mandatory: No

Suggested Value: 7474 "" tcp:7474

TCP Transport for TIBCO Hawk

tcp_session

Set this option to configure the TCP Transport for TIBCO Hawk as the primary transport for the communication.

The syntax of the property is:

-tcp_session <self_IP>:<port> <HAWKCONSOLE_IP_ADDRESS>:<port>

where,

<self_IP>:<port> - The unique socket address of the Hawk Event service for joining the cluster.
<HAWKCONSOLE_IP_ADDRESS>:<port> - The IP address of instance running OI Hawk Console.
Note: Multiple agents/OI Hawk Console running on the same instance must be bound to separate ports. For example, if hawkagent1 binds to port 2551, then hawkagent2 can use port 2552 or any port other than 2551.

 

Mandatory: No

Suggested Value: localhost:2582 localhost:2561

TCP Transport for TIBCO Hawk SSL Parameters

The following TLS/SSL parameters are applicable to tcp_session and ami_tcp_session.

tcp_key_store

Path of the key store file

 

Mandatory: No

Suggested Value: -

tcp_trust_store

Path of the trust store file

 

Mandatory: No

Suggested Value: -

tcp_key_store_password

Password for the key store file

 

Mandatory: No

Suggested Value: -

tcp_key_password

Encrypted key password

 

Mandatory: No

Suggested Value: -

tcp_trust_store_password

Password for the trust store file

 

Mandatory: No

Suggested Value: -

tcp_ssl_protocol

Protocol for a secure connection

 

Mandatory: No

Suggested Value: TLSv1.2

tcp_enabled_algorithms

Algorithm to be used for the security protocol. You can specify multiple algorithms as a comma-separated list without space.

 

Mandatory: No

Suggested Value: TLS_RSA_WITH_AES_128_CBC_SHA

max_reconnect_attempts_after_restart

Specifies the number of reconnect attempts to be made when the agent gets disconnected from the Daemon

 

Mandatory: No

Suggested Value: 1000

max_reconnect_attempts_during_connect

Specifies the number of reconnect attempts made when the connection is disconnected from the Daemon after it has been established

 

Mandatory: No

Suggested Value: 20

transport_timeout

The default timeout used by transport for internal invocations

 

Mandatory: No

Suggested Value: 30000

TIBCO EMS Transport

ems_transport

Comment this option if you are using TCP Transport for TIBCO Hawk or TIBCO Rendezvous as the primary transport.

Specifies location of EMS server. For example,

ems_transport tcp://server1:7222.

Note: If EMS is configured as Transport, the ami_rvd_session parameter must be configured.
Note: When using encrypted password generated using tibhawkpassword, the password must be placed within double quotation marks (").

 

Mandatory: No

Suggested Value: -

TIBCO EMS SSL Parameters (In case EMS Server is configured for SSL communication)

ssl_vendor

The name of the vendor of the SSL implementation. On IBM platforms (such as AIX), this option defaults to ibm. The valid choices are

j2se-default: Use this option when you want to use the default JCE bundled with the Java JRE.
entrust61: Use this option when you want to use the Entrust libraries.
ibm: On non-IBM platforms, this option can be used only if the IBM version of JCE is installed.

 

Mandatory: No

Suggested Value: j2se

ssl_ciphers

Cipher suite name. Use circumflex (^) instead of hyphen (-) when specifying -ssl_ciphers

 

Mandatory: No

Suggested Value: -

ssl_no_verify_host

Indicates not to verify the EMS server

 

Mandatory: No

Suggested Value: -

ssl_trusted

File name of the server certificates. The file must be accessible locally/ shared drive

 

Mandatory: No

Suggested Value: -

ssl_no_verify_hostname

Indicates not to verify the name in CN field of the server certificate

 

Mandatory: No

Suggested Value: -

ssl_expected_hostname

If the ssl_no_verify_host is not specified, the option ssl_trusted has to be used. Along with the option ssl_trusted, specify either ssl_no_verify_hostname or ssl_expected_hostname.

 

Mandatory: No

Suggested Value: -

ssl_identity

Digital certificate

 

Mandatory: No

Suggested Value: -

ssl_private_key

Private key

 

Mandatory: No

Suggested Value: -

ssl_password

Password

 

Mandatory: No

Suggested Value: -

character_encoding

Character encoding to be used across the configured transport

 

Mandatory: No

Suggested Value: UTF-8

AMI Session Configurations
ami_rvd_session

Specifies the TIBCO Rendezvous session used by the Hawk Event Service for AMI communications. If this option is used, all three parameters must be present and separated by whitespace but any of them can be an empty string to indicate a null value.

Note: The default ami_rvd_session uses rvd_session values.

For example:

-rvd_session 7474 127.0.0.1 tcp:7474

 

Mandatory: No

Suggested Value: 7474 "" tcp:7474

ami_tcp_session

The AMI TCP session needs self address (different from tcp_session) and the AMI address of the agent that is supposed to detect hawkEventService microagent.

The syntax for the property is:

-ami_tcp_session <self_IP>:<port> <hawk_agent_IP>:<AMI_session_port>

where,

<self_IP>:<port> - The unique socket address of the Hawk Event service for AMI communication. The socket address should be different from the <self_IP>:<port> specified for the -tcp_session property of Hawk Event Service.
<hawk_agent_IP>:<AMI_session_port> - The socket address of the Hawk agent for AMI communication. This socket address is the same as <self_IP>:<port> specified for the -ami_tcp_session parameter in hawkagent.cfg.

 

Mandatory: No

Suggested Value: localhost:2575 localhost:2571

max_reconnect_attempts_after_restart_for_ami

Specifies the number of reconnect attempts to be made when the AMI gets disconnected from the Hawk agent

 

Mandatory: No

Suggested Value: 1000

max_reconnect_attempts_during_connect_for_ami

Specifies the number of reconnect attempts made when the connection is disconnected from the Hawk agent after it has been established

 

Mandatory: No

Suggested Value: 20

Logging

logdir

The directory in which to store log files generated by the Hawk Event Service

 

Mandatory: No

Suggested Value: CONFIG_FOLDER/logs

logmaxsize

The maximum size of a rotating log files in kilobytes

 

Mandatory: No

Suggested Value: 10M

logmaxnum

The maximum number of rotating log files

 

Mandatory: No

Suggested Value: 10

log_level

Specifies the level of diagnostic information stored in the logs. The following are the logging levels:

4 - Indicates error level trace messages should be enabled

6- Indicates warning level trace messages should be enabled

7 - Indicates information level trace messages should be enabled

8 - Indicates debug level trace messages should be enabled

16 - Indicates AMI level trace messages should be enabled

A value of zero turns all tracing off.

A value of -1 turns all tracing on.

 

Mandatory: No

Suggested Value: 7

log_format

The format for trace log messages

 

Mandatory: No

Suggested Value: "default"

Data event
script

Specifies the fully-qualified name of an executable file to be executed when an agent is lost

 

Mandatory: No

Suggested Value: -

datamaxnum

The maximum number of rotating data files

 

Mandatory: Yes

Suggested Value: 5

datamaxsize

The maximum size of a rotating data file in KB. You can apply a suffix 'm' or 'M' for indicating MB values

 

Mandatory: Yes

Suggested Value: 1024

datadir

The directory in which the data files generated by the TIBCO Hawk Event are stored

 

Mandatory: Yes

Suggested Value: CONFIG_FOLDER/data

Fault Tolerance

ft

Fault tolerance weight for TibrvFtMember

 

Mandatory: No

Suggested Value: no fault tolerance

ft_rvd_session

TIBCO Rendezvous session used for fault tolerance. This option is ignored if the -ft option is not specified.

 

Mandatory: No

Suggested Value: 7474 "" tcp:7474

character_encoding

Specifies the character encoding to be used for strings sent over all TIBCO Rendezvous transport

 

Mandatory: No

Suggested Value: UTF-8

Database Based Event Store

JDBCdriverClassName

Class name for the vendor's JDBC driver. For example,

com.microsoft.jdbc.sqlserver.SQLServerDriver

 

Mandatory: No

Suggested Value: -

JDBCuserName

User name to connect to the database

 

Mandatory: No

Suggested Value: -

JDBCpassword

User’s password to connect to the database

 

Mandatory: No

Suggested Value: -

JDBCurl

URL which identifies the database connection

 

Mandatory: No

Suggested Value: -

JDBCdbType

Database vendor type. Supported values are ORACLE, SQLSERVER, DB2 or SYBASE.

 

Mandatory: No

Suggested Value: -

JDBCalertTableFields

User defined alert action property fields that must be created as additional columns in the HawkAlertClearInfo table

 

Mandatory: No

Suggested Value: -

Database Configuration

To setup the database, add the appropriate .jar file of the JDBC driver classes, from the database vendor, to the OIHR_HOME/lib based on the value of the -JDBCdbType parameter.

-JDBCdbType Value Required .jar Files
ORACLE ojdbc6.jar
SQLSERVER

sqljdbc.jar

sqljdbc4.jar

DB2 jconn3.jar
SYBASE db2jcc4.jar