TIBCO Hawk Interface

The TIBCO Patterns - Search server can act as a Hawk microagent allowing it to be monitored by TIBCO Hawk. By default, the TIBCO Patterns - Search server does not enable Hawk monitoring. To enable Hawk monitoring, the server must be started with the command-line option:

-H "service,network,daemon"

Where service, network, daemon are the connection parameters for TIBCO Hawk as defined in the TIBCO Hawk documentation. For example,

-H "7474,,tcp:7474"

The above is in fact the default settings. If a value is not given, the default value is used. If a daemon is not given, the second comma can be omitted. If both network and daemon are not given, both commas can be omitted. Thus, the following are all valid means of expressing the default values:

-H ""
-H ","
-H ",,"

Note that the argument is required. Giving no argument for the -H parameter is not allowed, even if the argument is to be empty quotes. If the TIBCO Rendezvous network is the local machine, use blank for the network, not localhost.

Only TIBCO Rendezvous transport is supported. If TIBCO Hawk enablement is requested, but it cannot establish a connection to the indicated TIBCO Rendezvous service, the server prints a warning message to the console log and continues with the startup. Startup does not fail if the TIBCO Hawk interface cannot be enabled. So make sure to check the console log to verify that TIBCO Hawk was enabled.

It is not necessary to install TIBCO Hawk or TIBCO Rendezvous on the machine where the TIBCO Patterns - Search server is running, as long as the connection information specifies a reachable TIBCO Rendezvous service. If the TIBCO Rendezvous service is not available, TIBCO Patterns - Search server tries to start a service on the local machine by starting the TIBCO Rendezvous daemon: "rvd". If this daemon is not defined in the PATH, TIBCO Hawk enablement fails with an error message in the console log and the server startup continues as described previously.

The TIBCO Patterns - Search server is compatible with TIBCO Hawk 6.1.0 and TIBCO Rendezvous 8.4.6. For information about the backwards compatibility of 4.9 micro agents with earlier versions of TIBCO Hawk, see the documentation of TIBCO Hawk and TIBCO Rendezvous.

Hawk Methods

The Hawk interface provides the following methods. Most of these methods are available as both subscription and invoke methods. All the subscription methods push data at fixed time intervals. Unless noted, they take a single argument that is the time interval in seconds. A minimum time of 10 seconds is enforced, times lower than 10 seconds are rounded up to 10 seconds. Other values are rounded to the next lower 5 second interval.

getServerInfo

Though the Subscription service is provided, the output of this method remains unchanged for the life of TIBCO Patterns - Search server process.

Output Parameters for getServerInfo

Parameter

Description

ProductName

TIBCO Patterns - Search

Note that the final entry is reserved for special versions and is not currently used.

ServerVersion

The full release version string.

Prefilter

The prefilter enabled. Prefilter names are: GIP, SORT, PSI, NONE.

CheckpointDirectory

The directory for checkpoint files if checkpointing is enabled. Otherwise, it is "(not-enabled)" .

CheckpointAutoRestore

True if the server was started with the Auto-Restore option. Otherwise, it is false.

DurableData True if the server was started with the Durable Data option. Otherwise, it is false.

ClusterConfiguration

The name of the configuration file for the gateway if it is a Gateway server. Otherwise, it is "not a gateway".

PlainTextPortNumber

The port the server is listening on for plaintext communications.

EncryptedPortNumber

The port the server is listening on for encrypted communications.

MaxThreads

The maximum number of command-processing threads the server uses.

MemoryCap

If started with a fixed memory cap on table memory, the server, shows the memory limit in KB, otherwise it is zero.

TransactionTimeout

The time in seconds a transaction must sit idle before it is automatically closed. If no transaction timeout period is set, this is returned as -1.

TransactionAction

The action performed on transactions that exceed the timeout period. This value is one of: A – Abort the transaction, E – abort the transaction if it had Errors, otherwise commit it, C – forcibly Commit the transaction, N – do Nothing.

StopServer

This takes no arguments and returns no values. It is an action method that shuts down the TIBCO Patterns - Search server process. This is not available as a subscription.

PushTableInfo

This provides information on all loaded tables. Note that if there are no loaded tables, this report has one line with a TableName value of "...No Tables...".

Output Parameters for PushTableInfo

Parameter

Description

TableName

The name of the table.

TableType

The type of table. The possible values are “Standard”, “Child”, “Parent”, “Unknown”.

Prefilter

The name of the prefilter for this table: GIP, SORT, PSI, or NONE

CheckpointStatus

Indicates the checkpoint status. Either the time of the last checkpoint for this table or one of the following:

"Checkpoints Disabled" - if checkpointing is not enabled.
"Never Checkpointed" - if checkpointing is enabled but this table has not been checkpointed.
Automatic” - if durable data is enabled.

NumRecords

The number of records currently in the table.

NumFields

The number of fields in the table.

KeyMemory

The number of KB of memory used to store the unique record key index.

RecordMemory

The number of KB of memory used to store record data.

HeaderMemory

The number of KB of memory used for various bookkeeping structures.

IndexMemory

The number of KB of memory used to store all indexes other than the unique record key index.

TotalMemory

The total number of KB of memory used to hold this table.

ParentName

The name of the parent table of this table, if this is not a “Child” table this value is: *No Parent*.

TableTranId

The full ID of the transaction currently holding this table. The value is zero if no transaction is holding this table.

TableTranState

The state flags for this object. The value is an OR of the following bits: 0x01 – the object exists, 0x02 the object is updated, 0x04 the object is held, 0x08 the object is added, 0x10 the object is deleted, 0x20 the object is renamed, 0x40 the object is replaced. For a gateway server the state may also include: 0x4000 the object has different states on different nodes. Deleted tables are not listed. So, the 'deleted' state is never actually returned.

PushThesaurusInfo

This provides information on all the loaded thesauri. Note that if there are no loaded thesauri, this report displays one line with a ThesaurusName value of "...No Thesauri...".:

Output Parameters PushThesaurusInfo

Parameter

Description

ThesaurusName

The name of the thesaurus.

ThesaurusType

The type of thesaurus, it can be one of: "substitution", "weighted term", or "combined"

NumTerms

The number of unique tokens in the thesaurus. It is useful when comparing two thesauri for equivalence. If this number is not the same, the thesauri are different. Note that this number is only an approximate indicator of the size of the thesaurus.

ThesaurusTranId

The full ID of the transaction currently holding this thesaurus. The value is zero if no transaction is holding this thesaurus.

ThesaurusTranState

The state flags for this object. The value is an OR of the following bits: 0x01 – the object exists, 0x02 the object is updated, 0x04 the object is held, 0x08 the object is added, 0x10 the object is deleted, 0x20 the object is renamed, 0x40 the object is replaced. For a gateway server the state may also include: 0x4000 the object has different states on different nodes. Deleted thesauri are not listed. So, the 'deleted' state is never actually returned.

CheckpointStatus

Indicates the checkpoint status. Either the time of the last checkpoint for this thesaurus or one of the following:

"Checkpoints Disabled" - if checkpointing is not enabled.
"Never Checkpointed" - if checkpointing is enabled but this table has not been checkpointed.
"Automatic" - if durable data is enabled.

pushModelInfo

This provides information on all loaded RLink Models.

Output Parameters for pushModelInfo

Parameter

Description

ModelName The name of the RLink Model.
ModelMetadata Metadata of the model.
NumFeatures Number of features in the model.
ModelTranId The full ID of the transaction currently holding this rlink model. The value is zero, if no transaction is holding this rlink model.
ModelTranState The state flags for this object. The value is an OR of the following bits: 0x01 – the object exists, 0x02 the object is updated, 0x04 the object is held, 0x08 the object is added, 0x10 the object is deleted, 0x20 the object is renamed, 0x40 the object is replaced. For a gateway server the state may also include: 0x4000 the object has different states on different nodes. Deleted rlink models are not listed. So, the 'deleted' state is never actually returned.
CheckpointStatus

Indicates the checkpoint status. Either the time of the last checkpoint for this rlink model or one of the following:

"Checkpoints Disabled" - if checkpointing is not enabled.
"Never Checkpointed" - if checkpointing is enabled but this table has not been checkpointed.
"Automatic" - if durable data is enabled.

pushCharmapInfo

This provides information on all loaded character maps. The two preloaded character maps are:

=PUNCT= Punctuation-sensitive map
=STD= Standard default character map always appears in this report.

Output Parameters for pushCharmapInfo

Parameter

Description

CharacterMapName

The name of the character map.

CharacterMapTranId

The full ID of the transaction currently holding this character map. The value is zero if no transaction is holding this character map.

CharacterMapTranState

The state flags for this object. The value is an OR of the following bits: 0x01 – the object exists, 0x02 the object is updated, 0x04 the object is held, 0x08 the object is added, 0x10 the object is deleted, 0x20 the object is renamed, 0x40 the object is replaced. For a gateway server the state may also include: 0x4000 the object has different states on different nodes. Deleted character maps are not listed. So, the 'deleted' state is never actually returned.

CheckpointStatus

Indicates the checkpoint status. Either the time of the last checkpoint for this character map or one of the following:

Checkpoints Disabled - If checkpointing is not enabled.
Never Checkpointed - If checkpointing is enabled but this table has not been checkpointed.
Automatic - If durable data is enabled.

pushQueryInfo

This provides information on query performance. It takes no input arguments. The numbers reflect the performance of search queries, they do not include score records commands. It produces a summary report of query performance statistics for time periods of the last: 1 Minute, 5 Minutes, 15 Minutes, and since the server started or since the last resetQueryInfo method was invoked.

In the output parameters all times are in seconds. If no queries were completed during the time period, the time values are -1 and counts are 0.

Output Parameters for pushQueryInfo

Parameter

Description

StatsWindow

Indicates the time period for the statistics on this line.

QueryCount

The number of query commands completed in the time period.

MaxQueryTime

The elapsed time for the longest running query completed in the time period.

MinQueryTime

The elapsed time for the shortest running query completed in the time period.

AvgQueryTime

The average elapsed time for all the queries completed in the time period.

AvgQueryOverhead

The average amount of time taken for parse query arguments, wait for an available command processing thread, and transmit query results.

QueryThroughput

The average number of queries per second processed during this time interval. This is computed as QueryCount and its duration.

QueryMaxThroughput

This is the maximum throughput in queries per second over any one minute interval during the time report period or the last 17 minutes, whichever is less.

QueryConcurrency

This is a rough approximation for the average number of command-processing threads in concurrent use for the query processing during the report time period.

resetQueryInfo

This is an action method, it takes no argument and returns no values. It resets all query statistics.

commitTransaction

This forcibly commits a transaction. It takes one argument.

Input Parameter for commitTransaction

Parameter

Description

TranId

The full transaction ID of the transaction to be committed. This is a 64-bit integer value.

abortTransaction

This aborts a transaction. It takes one argument.

Input Parameter for abortTransaction

Parameter

Description

TranId

The full transaction ID of the transaction to be committed. This is an integer value.

pushTransactionInfo

This provides information on active transactions. This method takes one argument in addition to the report interval.

Input Parameter for pushTransactionInfo

Parameter

Description

TransactionIdleTime

This is a time in seconds. Only transactions that have been idle longer than this time are included in the report. If this time is less than or equal to zero all active transactions are reported.

Output Parameters for pushTransactionInfo

Parameter

Description

TranId

The full transaction ID for the transaction.

TranType

One of “implicit” or “explicit”.

TranIsGateway

A true or false value. True if this is a gateway transaction.

TranIsRunning

A true or false value. True if there was a command in progress on this transaction.

TranIdleTime

The time in seconds the transaction has been idle. This is the time since the last command executing under this transaction completed.

TranErrorCount

This is the number of commands executed under this transaction that failed.

TranLogSize

This gives the number of items in the transaction rollback log. It is an estimate of the amount of work performed under this transaction.

If there are no transactions meeting the input criteria, a single line is returned with all integer values set to zero, all true and false values set to false and the TranType parameter set to: “No-Transactions”.