#include <tmon.h>
Public Methods | |
TipcMon (const TipcSrv &tsrv) throw (TipcException) | |
virtual | ~TipcMon () throw () |
const char * | getIdentStr () const throw (TipcException) |
void | setIdentStr (const char *type_str) throw (TipcException) |
void | printWatch (T_OUT_FUNC out_func=(T_OUT_FUNC) TutOut) throw (TipcException) |
Print all monitoring categories being watched. | |
bool | projectNamesGetWatch () const throw (TipcException) |
void | projectNamesSetWatch (bool watch_status) throw (TipcException) |
bool | clientNamesGetWatch () const throw (TipcException) |
void | clientNamesSetWatch (bool watch_status) throw (TipcException) |
bool | serverNamesGetWatch () const throw (TipcException) |
void | serverNamesSetWatch (bool watch_status) throw (TipcException) |
bool | subjectNamesGetWatch () const throw (TipcException) |
Determines whether RTclient is watching subject names. | |
void | subjectNamesSetWatch (bool watch_status) throw (TipcException) |
bool | subjectSubscribeGetWatch (const char *subject_name) const throw (TipcException) |
void | subjectSubscribeSetWatch (const char *subject_name, bool watch_status) throw (TipcException) |
void | projectNamesPoll () throw (TipcException) |
void | subjectNamesPoll () throw (TipcException) |
void | subjectSubscribePoll (const char *dg_name) throw (TipcException) |
void | clientNamesPoll () throw (TipcException) |
void | serverNamesPoll () throw (TipcException) |
bool | serverConnGetWatch () const throw (TipcException) |
void | serverConnSetWatch (bool watch_status) throw (TipcException) |
void | serverConnPoll () throw (TipcException) |
void | serverGeneralPoll (const char *serverName) throw (TipcException) |
void | serverTimePoll (const char *serverName) throw (TipcException) |
void | serverBufferPoll (const char *serverName, const char *connected_process_name) throw (TipcException) |
void | serverOptionPoll (const char *serverName, const char *option_name) throw (TipcException) |
void | serverMsgTrafficPoll (const char *serverName, const char *connected_process_name) throw (TipcException) |
void | serverMsgTrafficExPoll (const char *serverName, const char *connected_process_name) throw (TipcException) |
void | serverRoutePoll (const char *serverName, const char *dest_server_name) throw (TipcException) |
bool | clientSubscribeGetWatch (const char *clientName) const throw (TipcException) |
Determines whether this RTclient is watching the subjects that an RTclient is subscribing to. | |
void | clientSubscribeSetWatch (const char *clientName, bool watch_status) throw (TipcException) |
bool | clientTimeGetWatch (const char *clientName) const throw (TipcException) |
Determines whether this RTclient is watching time information for an RTclient. | |
void | clientTimeSetWatch (const char *clientName, bool watch_status) throw (TipcException) |
bool | clientBufferGetWatch (const char *clientName) const throw (TipcException) |
Determines whether this RTclient is watching message-related buffer information in an RTclient. | |
void | clientBufferSetWatch (const char *clientName, bool watch_status) throw (TipcException) |
bool | clientMsgRecvGetWatch (const char *clientName, const char *msg_type_name) const throw (TipcException) |
Determines whether this RTclient is watching received messages in an RTclient. | |
void | clientMsgRecvSetWatch (const char *clientName, const char *msg_type_name, bool watch_status) throw (TipcException) |
bool | clientMsgSendGetWatch (const char *clientName, const char *msg_type_name) const throw (TipcException) |
Determines whether this RTclient is watching sent messages in an RTclient. | |
void | clientMsgSendSetWatch (const char *clientName, const char *msg_type_name, bool watch_status) throw (TipcException) |
void | clientSubscribePoll (const char *clientName) throw (TipcException) |
void | clientGeneralPoll (const char *clientName) throw (TipcException) |
void | clientTimePoll (const char *clientName) throw (TipcException) |
void | clientBufferPoll (const char *clientName) throw (TipcException) |
void | clientOptionPoll (const char *clientName, const char *option_name) throw (TipcException) |
void | clientMsgTypePoll (const char *clientName, const char *msg_type_name) throw (TipcException) |
void | clientMsgTypeExPoll (const char *clientName, const char *msg_type_name) throw (TipcException) |
void | clientCbPoll (const char *clientName) throw (TipcException) |
void | clientMsgTrafficPoll (const char *clientName) throw (TipcException) |
void | clientSubjectPoll (const char *clientName, const char *subject_name) throw (TipcException) |
void | clientSubjectExPoll (const char *clientName, const char *subject_name) throw (TipcException) |
void | clientNamesNumPoll () throw (TipcException) |
void | clientSubscribeNumPoll (const char *client_name) throw (TipcException) |
void | clientCpuPoll (const char *client_name) throw (TipcException) |
void | serverCpuPoll (const char *server_name) throw (TipcException) |
void | clientInfoPoll (const char *client_name) throw (TipcException) |
void | clientCongestionSetWatch (const char *client_name, int4 high_water, int4 low_water, bool watch_status) throw (TipcException) |
void | serverCongestionSetWatch (const char *server_name, const char *connected_process_name, int4 high_water, int4 low_water, bool watch_status) throw (TipcException) |
void | serverMaxClientLicensesSetWatch (const char *server_name, bool watch_status) throw (TipcException) |
bool | clientCongestionGetWatch (const char *client_name) throw (TipcException) |
bool | serverCongestionGetWatch (const char *server_name, const char *connected_process_name) throw (TipcException) |
bool | serverMaxClientLicensesGetWatch (const char *server_name) throw (TipcException) |
void | clientExtPoll (const char *client_name) throw (TipcException) |
void | serverStartTimePoll (const char *serverName) throw (TipcException) |
void | serverVersionPoll (const char *server_name) throw (TipcException) |
void | clientVersionPoll (const char *client_name) throw (TipcException) |
From within an RTclient, hundreds of pieces of information can be gathered in real time about all parts of a running SmartSockets project. These are some of the kinds of information available:
There is no monitoring available for peer-to-peer connections or for programs that do not use the SmartSockets API or C++ Class Library.
Monitoring is built into SmartSockets. No user-defined code is needed to support monitoring in an RTclient.
|
Constructor
|
|
Destructor |
|
Polls for RTclient message-related buffer information by sending a MON_CLIENT_BUFFER_POLL_CALL message to the client_name RTclient. The client_name argument can be the unique subject name of a single RTclient, a wildcarded subject name to match many RTclients, or T_IPC_MON_ALL to poll all RTclients in the project that match the value of the Monitor_Scope option. The polled RTclient responds by sending back a MON_CLIENT_BUFFER_POLL_RESULT message. The response may or may not come back quickly, depending on what the polled RTclient is doing. The polling RTclient can use methods such as TipcSrv::searchType() or TipcSrv:: mainLoop() to get the response. Each MON_CLIENT_BUFFER_POLL_RESULT message contains five fields:
|
|
Sets whether or not this RTclient is watching message-related buffer information in the client_name RTclient. The client_name argument can be the unique subject name of a single RTclient, a wildcarded subject name to match many RTclients, or T_IPC_MON_ALL to watch all RTclients in the project that match the value of the Monitor_Scope option. clientBufferSetWatch saves the watch status and sends a MON_CLIENT_BUFFER_SET_WATCH message to the client_name RTclient. The watch status controls whether or not the RTclient receives a MON_CLIENT_BUFFER_STATUS message each time the message queue for the connection to RTserver changes in the watched RTclient. The watch status is saved internally so that the RTclient can automatically rewatch all appropriate categories if RTclient has to reconnect to RTserver. Each MON_CLIENT_BUFFER_STATUS message contains five fields:
|
|
Polls for RTclient callback information by sending a MON_CLIENT_CB_POLL_CALL message to the client_name RTclient. The client_name argument can be the unique subject name of a single RTclient, a wildcarded subject name to match many RTclients, or T_IPC_MON_ALL to poll all RTclients in the project that match the value of the Monitor_Scope option. The polled RTclient responds by sending back a MON_CLIENT_CB_POLL_RESULT message. The response may or may not come back quickly, depending on what the polled RTclient is doing. The polling RTclient can use methods such as TipcSrv::searchType() or TipcSrv::mainLoop () to get the response. Each MON_CLIENT_CB_POLL_RESULT message contains nine fields:
|
|
clientCongestionGetWatchis used to determine if a T_MT_MON_CLIENT_BUFFER_HIGH_WATER and T_MT_MON_CLIENT_BUFFER_LOW_WATER watch is currently active for a given server process. The client_name argument indicates the client for which the watch is being checked. The srv argument in clientCongestionGetWatch indicates the connection on which the watch is to be checked.
|
|
clientCongestionSetWatch is used to initiate and terminate the T_MT_MON_CLIENT_BUFFER_HIGH_WATER and T_MT_MON_CLIENT_BUFFER_LOW_WATER watches. The watch_status argument indicates whether the watch is being initiated or terminated. If the watch is being initiated, the client_name argument indicates the name of the client whose write buffer is being watched. If the watch is being terminated, the client_name argument indicates the name of the client whose write buffer is to no longer be watched. The high_water and low_water arguments specify the high and low water marks for the buffers being monitored. The srv argument in clientCongestionSetWatch indicates the connection on which the watch is to be set.
|
|
clientCpuPoll polls for an RTclient's CPU utilization by sending a MON_CLIENT_CPU_POLL_CALL message to the client_name RTclient. The client_name argument can be the unique subject name of a single RTclient, a wildcarded subject name to match many RTclients, or T_IPC_MON_ALL to poll all RTclients in the project that match the value of the monitor_scope option. The polled RTclient responds by sending back a MON_CLIENT_CPU_POLL_RESULT message. The MON_CLIENT_CPU_POLL_RESULT will have the following grammar: str - Client name real4 - Percent CPU utilization (between 0.0 and 100.0) There may be multiple responses if client_name is wildcarded or T_IPC_MON_ALL. If there are no clients that match client_name then the poll request is dropped by the RTserver and no responses will be received. A value contained in the percent CPU utilization field is less than zero indicates that the client cannot query its OS for this information, or that the client has not yet implemented this functionality.
|
|
clientExtPoll polls for RTclient extension information by sending a MON_CLIENT_EXT_POLL_CALL message to the RTserver. The client_name argument can be the unique subject name of a single RTclient, a wildcarded subject name to match many RTclients, or T_IPC_MON_ALL to poll all RTclients in the project that match the value of the monitor_scope option. The RTserver responds by sending back a MON_CLIENT_EXT_POLL_RESULT message.
|
|
Polls for RTclient general information by sending a MON_CLIENT_GENERAL_POLL_CALL message to the client_name RTclient. The client_name argument can be the unique subject name of a single RTclient, a wildcarded subject name to match many RTclients, or T_IPC_MON_ALL to poll all RTclients in the project that match the value of the Monitor_Scope option. The polled RTclient responds by sending back a MON_CLIENT_GENERAL_POLL_RESULT message. The response may or may not come back quickly, depending on what the polled RTclient is doing. The polling RTclient can use methods such as TipcSrv::searchType() or TipcSrv:: mainLoop() to get the response. Each MON_CLIENT_GENERAL_POLL_RESULT message contains sixteen fields:
|
|
clientInfoPoll polls for RTclient information by sending a MON_CLIENT_INFO_POLL_CALL message to the RTserver. The client_name argument can be the unique subject name of a single RTclient, a wildcarded subject name to match many RTclients, or T_IPC_MON_ALL to poll all RTclients in the project that match the value of the monitor_scope option. The RTserver responds by sending back a MON_CLIENT_INFO_POLL_RESULT message. The MON_CLIENT_INFO_POLL_RESULT message will have the following grammar: str - client_name str - ident str - node_name str - user_name int4 - pid str - project str - server_name str - arch int4 - current_sbrk int4 - sbrk_delta_since_startup int2 - int_format int2 - real_format str - logical_conn_name_to_server int4 - number of subscribes for client real4 - Percent CPU utilization (between 0.0 and 100.0) for client
|
|
Sets whether or not this RTclient is watching received messages in the client_name RTclient. The client_name argument can be the unique subject name of a single RTclient, a wildcarded subject name to match many RTclients, or T_IPC_MON_ALL to watch all RTclients in the project that match the value of the Monitor_Scope option. clientMsgRecvSetWatch saves the watch status and sends a MON_CLIENT_MSG_RECV_SET_WATCH message to the client_name RTclient. The watch status controls whether or not the RTclient receives a MON_CLIENT_MSG_RECV_STATUS message each time a received message is inserted or deleted from the message queue for the connection to RTserver in the watched RTclient. The watch status is saved internally so the RTclient can automatically rewatch all appropriate categories if RTclient has to reconnect to RTserver. If msg_type_name is T_IPC_MON_ALL, then all message types in the watched RTclient are watched. Each MON_CLIENT_MSG_RECV_STATUS message contains six fields:
|
|
Sets whether or not this RTclient is watching sent messages in the client_name RTclient. The client_name argument can be the unique subject name of a single RTclient, a wildcarded subject name to match many RTclients, or T_IPC_MON_ALL to watch all RTclients in the project that match the value of the Monitor_Scope option. clientMsgSendSetWatch saves the watch status and sends a MON_CLIENT_MSG_SEND_SET_WATCH message to the client_name RTclient. The watch status controls whether or not the RTclient receives a MON_CLIENT_MSG_SEND_STATUS message each time a message is sent to RTserver in the watched RTclient. The watch status is saved internally so that the RTclient can automatically rewatch all appropriate categories if RTclient has to reconnect to RTserver. If msg_type_name is T_IPC_MON_ALL then all message types in the watched RTclient are watched. Each MON_CLIENT_MSG_SEND_STATUS message contains two fields:
|
|
Polls for RTclient message traffic information by sending a MON_CLIENT_MSG_TRAFFIC_POLL_CALL message to the client_name RTclient. The client_name argument can be the unique subject name of a single RTclient, a wildcarded subject name to match many RTclients, or T_IPC_MON_ALL to poll all RTclients in the project that match the value of the Monitor_Scope option. The polled RTclient responds by sending back a MON_CLIENT_MSG_TRAFFIC_POLL_RESULT message. The response may or may not come back quickly, depending on what the polled RTclient is doing. The polling RTclient can use methods such as TipcSrv::searchType() or TipcSrv::mainLoop() to get the response. Each MON_CLIENT_MSG_TRAFFIC_POLL_RESULT message contains five fields:
|
|
Polls for RTclient message type information by sending a MON_CLIENT_MSG_TYPE_EX_POLL_CALL message to the client_name RTclient. The client_name argument can be the unique subject name of a single RTclient, a wildcarded subject name to match many RTclients, or T_IPC_MON_ALL to poll all RTclients in the project that match the value of the Monitor_Scope option. The polled RTclient responds by sending back a MON_CLIENT_MSG_TYPE_EX_POLL_RESULT message. The response may or may not come back quickly, depending on what the polled RTclient is doing. If msg_type_name is T_IPC_MON_ALL, then all message types in the polled RTclient are polled. The polling RTclient can use methods such as TipcSrv::searchType() or TipcSrv::mainLoop() to get the response. Each MON_CLIENT_MSG_TYPE_EX_POLL_RESULT message contains one fixed field and fifteen field arrays. The fixed field is a STR field containing the name of the RTclient. The fifteen arrays are:
|
|
Polls for RTclient message type information by sending a MON_CLIENT_MSG_TYPE_POLL_CALL message to the client_name RTclient. The client_name argument can be the unique subject name of a single RTclient, a wildcarded subject name to match many RTclients, or T_IPC_MON_ALL to poll all RTclients in the project that match the value of the Monitor_Scope option. The polled RTclient responds by sending back a MON_CLIENT_MSG_TYPE_POLL_RESULT message. The response may or may not come back quickly, depending on what the polled RTclient is doing. If msg_type_name is T_IPC_MON_ALL, then all message types in the polled RTclient are polled. The polling RTclient can use methods such as TipcSrv::searchType() or TipcSrv::mainLoop() to get the response. Each MON_CLIENT_MSG_TYPE_POLL_RESULT message contains one fixed field and one or more groups of fifteen fields. The fixed field is a STR field containing the name of the RTclient. The group of fifteen fields is:
|
|
Determines whether RTclient is watching RTclient names.
|
|
clientNamesNumPoll polls for the number of RTclients in the current project that match the value of the monitor_scope option by sending a MON_CLIENT_NAMES_NUM_POLL_CALL message to the RTserver. The RTserver responds by sending back a MON_CLIENT_NAMES_NUM_POLL_RESULT message. The MON_CLIENT_NAMES_NUM_POLL_RESULT message will have the following grammar: int4 - number of clients The resulting message may have 0 for the number of clients, if no clients match the value of monitor_scope. |
|
Polls for the RTclient names in the current project that match the value of the Monitor_Scope option by sending a MON_CLIENT_NAMES_POLL_CALL message to RTserver. RTserver responds by sending back a MON_CLIENT_NAMES_POLL_RESULT message. The response should come back quickly. The polling RTclient can use methods such as TipcSrv::searchType() or TipcSrv::mainLoop() to get the response. The MON_CLIENT_NAMES_POLL_RESULT message contains three fields:
|
|
Starts or stops watching any RTclient names in the current project that match the value of the Monitor_Scope option. This method saves the watch status and sends a MON_CLIENT_NAMES_SET_WATCH message to RTserver. * The watch status controls whether or not the RTclient receives a MON_CLIENT_NAMES_STATUS message each time an RTclient is created or destroyed. An RTclient is considered created when it connects to RTserver. An RTclient is considered destroyed when it disconnects from RTserver. The watch status is saved internally so that the RTclient can automatically rewatch all appropriate categories if RTclient has to reconnect to RTserver.
Each MON_CLIENT_NAMES_STATUS message contains five fields:
To determine if this RTclient is watching RTclient names, use clientNamesGetWatch(). To poll once for the RTclient names, use clientNamesPoll(). |
|
Polls for RTclient option information by sending a MON_CLIENT_OPTION_POLL_CALL message to the client_name RTclient. The client_name argument can be the unique subject name of a single RTclient, a wildcarded subject name to match many RTclients, or T_IPC_MON_ALL to poll all RTclients in the project that match the value of the Monitor_Scope option. The polled RTclient responds by sending back a MON_CLIENT_OPTION_POLL_RESULT message. The response may or may not come back quickly, depending on what the polled RTclient is doing. If option_name is T_IPC_MON_ALL, then all options in the polled RTclient are polled. The polling RTclient can use methods such as TipcSrv::searchType() or TipcSrv::mainLoop () to get the response. Each MON_CLIENT_OPTION_POLL_RESULT message contains one fixed field followed by one or more groups of five fields. The fixed field is a STR field containing the name of the RTclient. The group of five fields is:
|
|
Polls for RTclient subject information by sending a MON_CLIENT_SUBJECT_POLL_CALL message to the client_name RTclient. The client_name argument can be the unique subject name of a single RTclient, a wildcarded subject name to match many RTclients, or T_IPC_MON_ALL to poll all RTclients in the project that match the value of the Monitor_Scope option. The polled RTclient responds by sending back a MON_CLIENT_SUBJECT_EX_POLL_RESULT message. The response may or may not come back quickly, depending on what the polled RTclient is doing. If subject_name is T_IPC_MON_ALL, then all subjects ever used in the polled RTclient are polled. The polling RTclient can use methods such as TipcSrv::searchType() or TipcSrv::mainLoop() to get the response. Each MON_CLIENT_SUBJECT_POLL_RESULT message contains one fixed field followed by five array fields. The fixed field is a STR field containing the name of the RTclient. The five arrays are:
|
|
Polls for RTclient subject information by sending a MON_CLIENT_SUBJECT_POLL_CALL message to the client_name RTclient. The client_name argument can be the unique subject name of a single RTclient, a wildcarded subject name to match many RTclients, or T_IPC_MON_ALL to poll all RTclients in the project that match the value of the Monitor_Scope option. The polled RTclient responds by sending back a MON_CLIENT_SUBJECT_POLL_RESULT message. The response may or may not come back quickly, depending on what the polled RTclient is doing. If subject_name is T_IPC_MON_ALL, then all subjects ever used in the polled RTclient are polled. The polling RTclient can use methods such as TipcSrv::searchType() or TipcSrv::mainLoop() to get the response. Each MON_CLIENT_SUBJECT_POLL_RESULT message contains one fixed field followed by one or more groups of five fields. The fixed field is a STR field containing the name of the RTclient. The group of five fields is:
|
|
clientSubscribeNumPoll polls for the number of subjects subscribed to by an RTclient by sending a MON_CLIENT_SUBSCRIBE_NUM_POLL_CALL message to the RTserver. The client_name argument can be the unique subject name of a single RTclient, a wildcarded subject name to match many RTclients, or T_IPC_MON_ALL to poll all RTclients in the project that match the value of the monitor_scope option. The RTserver responds by sending back a MON_CLIENT_SUBSCRIBE_NUM_POLL_RESULT message. The MON_CLIENT_SUBSCRIBE_NUM_POLL_RESULT message will have the following grammar: str_array - list of client names int4_array - number of subscribes per client The resulting message may contain arrays of zero length if no clients match the client_name argument.
|
|
Polls for subjects that the client_name RTclient is subscribing to by sending a MON_CLIENT_SUBSCRIBE_POLL_CALL message to RTserver. The client_name argument can be the unique subject name of a single RTclient, a wildcarded subject name to match many RTclients, or T_IPC_MON_ALL to poll all RTclients in the project that match the value of the Monitor_Scope option. RTserver responds by sending back a MON_CLIENT_SUBSCRIBE_POLL_RESULT message. The response should come back quickly. The polling RTclient can use methods such as TipcSrv::searchType() or TipcSrv::mainLoop() to get the response. The MON_CLIENT_SUBSCRIBE_POLL_RESULT message contains one or more groups of two fields:
|
|
Sets whether or not this RTclient is watching the subjects that the client_name RTclient is subscribing to. The client_name argument can be the unique subject name of a single RTclient, a wildcarded subject name to match many RTclients, or T_IPC_MON_ALL to poll all RTclients in the project that match the value of the Monitor_Scope option. clientSubscribeSetWatch saves the watch status and sends a MON_CLIENT_SUBSCRIBE_SET_WATCH message to RTserver. The watch status controls whether or not the RTclient receives a MON_CLIENT_SUBSCRIBE_STATUS message each time the watched RTclient starts or stops subscribing to a subject. The watch status is saved internally so that the RTclient can automatically rewatch all appropriate categories if RTclient has to reconnect to RTserver. Each MON_CLIENT_SUBSCRIBE_STATUS message contains four fields:
|
|
Polls for RTclient time information by sending a MON_CLIENT_TIME_POLL_CALL message to the client_name RTclient. The client_name argument can be the unique subject name of a single RTclient, a wildcarded subject name to match many RTclients, or T_IPC_MON_ALL to poll all RTclients in the project that match the value of the Monitor_Scope option. The polled RTclient responds by sending back a MON_CLIENT_TIME_POLL_RESULT message. The response may or may not come back quickly, depending on what the polled RTclient is doing. The polling RTclient can use methods such as TipcSrv::searchType() or TipcSrv::mainLoop() to get the response. Each MON_CLIENT_TIME_POLL_RESULT message contains seven fields:
|
|
Sets whether or not this RTclient is watching time information in the client_name RTclient. The client_name argument can be the unique subject name of a single RTclient, a wildcarded subject name to match many RTclients, or T_IPC_MON_ALL to poll all RTclients in the project that match the value of the Monitor_Scope option. clientTimeSetWatch saves the watch status and sends a MON_CLIENT_TIME_SET_WATCH message to the client_name RTclient. The watch status controls whether or not the RTclient receives a MON_CLIENT_TIME_STATUS message each time the current time changes in the watched RTclient. The watch status is saved internally so that the RTclient can automatically rewatch all appropriate categories if RTclient has to reconnect to RTserver. Each MON_CLIENT_TIME_STATUS message contains seven fields:
|
|
clientVersionPoll polls for an RTclient's version by sending a MON_CLIENT_VERSION_POLL_CALL message to the client_name RTclient. The client_name argument can be the unique subject name of a single RTclient, a wildcarded subject name to match many RTclients, or T_IPC_MON_ALL to poll all RTclients in the project that match the value of the monitor_scope option. The polled RTclient responds by sending back a MON_CLIENT_VERSION_POLL_RESULT message. The MON_CLIENT_VERSION_POLL_RESULT will have the following grammar: str - Client name int4 - Client version There may be multiple responses if client_name is wildcarded or T_IPC_MON_ALL. If there are no clients that match client_name then the poll request is dropped by the RTserver and no responses will be received.
|
|
Gets the monitoring identification string of this TipcSrv connection; this identification string is used as a descriptive name for the connection when it is being monitored. It is used as part of a field in these message types:
|
|
Determines whether RTclient is watching project name |
|
Polls once for project names by sending a MON_PROJECT_NAMES_POLL_CALL message to RTserver. RTserver responds by sending back a MON_PROJECT_NAMES_POLL_RESULT message. The response should come back quickly. The polling RTclient can use methods such as TipcSrv::searchType() or TipcSrv::mainLoop() to get the response. The MON_PROJECT_NAMES_POLL_RESULT message contains one field, a STR_ARRAY field containing the current project names. To watch for created and destroyed project names, use projectNamesSetWatch(). |
|
Start or stop watching project names. This method also saves the watch status internally and sends a MON_PROJECT_NAMES_SET_WATCH message to RTserver. The watch status controls whether or not the RTclient receives a MON_PROJECT_NAMES_STATUS message each time a project is created or destroyed. A project is considered created when the first RTclient in that project connects to RTserver. A project is considered destroyed when the last RTclient in that project disconnects from RTserver. The watch status is saved internally so that the RTclient can automatically rewatch all appropriate categories if RTclient has to reconnect to RTserver.
Each MON_PROJECT_NAMES_STATUS message contains three fields:
|
|
Polls for RTserver message-related buffer information by sending a MON_SERVER_BUFFER_POLL_CALL message to the server_name RTserver. The server_name argument can be the unique subject name of a single RTserver, a wildcarded subject name to match many RTservers, or T_IPC_MON_ALL to poll all RTservers that match the value of the Monitor_Scope option. The buffer information of connected_process_name (which can be either an RTserver or another RTclient in the same project) is polled. The polled RTserver responds by sending back a MON_SERVER_BUFFER_POLL_RESULT message. The response should come back quickly. If connected_process_name is T_IPC_MON_ALL then the buffers in the polled RTserver of all connected processes are polled. The polling RTclient can use methods such as TipcSrv::searchType() or TipcSrv::mainLoop() to get the response. Each MON_SERVER_BUFFER_POLL_RESULT message contains one fixed field followed by one or more groups of five fields. The fixed field is a STR field containing the name of the RTserver. The group of five fields is:
|
|
serverCongestionGetWatch is used to determine if a T_MT_MON_SERVER_BUFFER_HIGH_WATER and T_MT_MON_SERVER_BUFFER_LOW_WATER watch is currently active for a given server process. The server_name argument indicates the server for which the watch is being checked. The connected_process_name argument indicates for which process the watch status is being determined. The srv argument in serverCongestionGetWatch indicates the connection on which the watch is to be checked.
|
|
serverCongestionSetWatch is used to initiate and terminate the T_MT_MON_SERVER_BUFFER_HIGH_WATER and T_MT_MON_SERVER_BUFFER_LOW_WATER watches. The watch_status argument indicates whether the watch is being initiated or terminated. If the watch is being initiated, the server_name argument indicates the name of the server to set the watch, and the connected_process_name argument indicates the name of the process whose write buffer is to be watched. If the watch is being terminated, the connected_process_name argument indicates the name of the process whose write buffer is to no longer be watched. The high_water and low_water arguments specify the high and low water marks for the buffers being monitored. The srv argument in serverCongestionSetWatch indicates the connection on which the watch is to be set.
|
|
Determine whether this RTclient is watching RTserver connections.
|
|
Polls for RTserver connections of the RTservers that match the value of the Monitor_Scope option by sending a MON_SERVER_CONN_POLL_CALL message to RTserver. RTserver responds by sending back a MON_SERVER_CONN_POLL_RESULT message. The response should come back quickly. The polling RTclient can use methods such as TipcSrv::searchType() or TipcSrv::mainLoop() to get the response. The MON_SERVER_CONN_POLL_RESULT message contains four fields (all the array fields have the same number of elements):
|
|
Sets whether or not this RTclient is watching RTserver connections of the RTservers that match the value of the Monitor_Scope option. This method saves the watch status and sends a MON_SERVER_CONN_SET_WATCH message to RTserver. The watch status controls whether or not the RTclient receives a MON_SERVER_CONN_STATUS message each time a connection between RTservers is created or destroyed. The watch status is saved internally so that the RTclient can automatically rewatch all appropriate categories if RTclient has to reconnect to RTserver. Each MON_SERVER_CONN_STATUS message contains eight fields (all the array fields have the same number of elements):
To determine if this RTclient is watching RTserver connections, use serverConnGetWatch(). To poll once for RTserver connections, use serverConnPoll(). |
|
serverCpuPoll polls for a RTserver's CPU utilization by sending a MON_SERVER_CPU_POLL_CALL message to the server_name RTserver. The server_name argument can be the unique subject name of a single RTserver, a wildcarded subject name to match many RTservers, or T_IPC_MON_ALL to poll all RTservers that match the value of the monitor_scope option. The polled RTservers respond by sending back a MON_SERVER_CPU_POLL_RESULT message. The MON_SERVER_CPU_POLL_RESULT will have the following grammar: str - Server name real4 - Percent CPU utilization (between 0.0 and 100.0) There may be multiple responses if server_name is wildcarded or T_IPC_MON_ALL. If there are no servers that match server_name then the poll request is dropped by the RTserver and no responses will be received. A value contained in the percent CPU utilization field is less than zero indicates that the server cannot query its OS for this information, or that the server has not yet implemented this functionality.
|
|
Polls for RTserver general information by sending a MON_SERVER_GENERAL_POLL_CALL message to the server_name RTserver. The server_name argument can be the unique subject name of a single RTserver, a wildcarded subject name to match many RTservers, or T_IPC_MON_ALL to poll all RTservers that match the value of the Monitor_Scope option. The polled RTserver responds by sending back a MON_SERVER_GENERAL_POLL_RESULT message. The response should come back quickly. The polling RTclient can use methods such as TipcSrv::searchType() or TipcSrv::mainLoop() to get the response. Each MON_SERVER_GENERAL_POLL_RESULT message contains seventeen fields:
To poll once for RTclient general information, use clientGeneralPoll(). For an example of how MON_SERVER_GENERAL_POLL_RESULT messages can be used, see the RTmon GDI Server Information window. |
|
serverMaxClientLicensesGetWatchis used to determine if a T_MT_MON_MAX_CLIENT_LICENSES watch is currently active for a given server. The server_name argument indicates the server for which the watch is being checked. The srv argument in TipcSrvMonServerMaxClientLicensesGetWatch indicates the connection on which the watch is to be checked.
|
|
serverMaxClientLicensesSetWatch is the method that will be called to initiate and terminate the T_MT_MON_MAX_CLIENT_LICENSES watch. The server_name argument indicates the name of the server to set the watch. The watch_status argument indicates whether the watch is being initiated or terminated. The srv argument in serverMaxClientLicensesSetWatch indicates the connection on which the watch is to be set.
|
|
Polls for RTserver message traffic information by sending a MON_SERVER_MSG_TRAFFIC_EX_POLL_CALL message to the server_name RTserver. The server_name argument can be the unique subject name of a single RTserver, a wildcarded subject name to match many RTservers, or T_IPC_MON_ALL to poll all RTservers that match the value of the Monitor_Scope option. The message traffic information of connected_process_name (which can be either an RTserver or another RTclient in the same project) is polled. The polled RTserver responds by sending back a MON_SERVER_MSG_TRAFFIC_EX_POLL_RESULT message. The response should come back quickly. If connected_process_name is T_IPC_MON_ALL then the message traffic in the polled RTserver of all connected processes are polled. The polling RTclient can use methods such as TipcSrv::searchType() or TipcSrv::mainLoop() to get the response. Each MON_SERVER_MSG_TRAFFIC_EX_POLL_RESULT message contains one fixed field followed by five field arrays. The fixed field is a STR field containing the name of the RTserver. The five arrays are:
|
|
Polls for RTserver message traffic information by sending a MON_SERVER_MSG_TRAFFIC_POLL_CALL message to the server_name RTserver. The server_name argument can be the unique subject name of a single RTserver, a wildcarded subject name to match many RTservers, or T_IPC_MON_ALL to poll all RTservers that match the value of the Monitor_Scope option. The message traffic information of connected_process_name (which can be either an RTserver or another RTclient in the same project) is polled. The polled RTserver responds by sending back a MON_SERVER_MSG_TRAFFIC_POLL_RESULT message. The response should come back quickly. If connected_process_name is T_IPC_MON_ALL then the message traffic in the polled RTserver of all connected processes are polled. The polling RTclient can use methods such as TipcSrv::searchType() or TipcSrv::mainLoop() to get the response. Each MON_SERVER_MSG_TRAFFIC_POLL_RESULT message contains one fixed field followed by one or more groups of five fields. The fixed field is a STR field containing the name of the RTserver. The group of five fields is:
|
|
Determines whether RTclient is watching RTserver names
|
|
Polls for the RTserver names that match the value of the Monitor_Scope option by sending a MON_SERVER_NAMES_POLL_CALL message to RTserver. RTserver responds by sending back a MON_SERVER_NAMES_POLL_RESULT message. The response should come back quickly. The polling RTclient can use methods such as TipcSrv::searchType or TipcSrv::mainLoop() to get the response. The MON_SERVER_NAMES_POLL_RESULT message contains two fields:
|
|
Start or stop watching RTserver names that match the value of the Monitor_Scope option. This method saves the watch status and sends a MON_SERVER_NAMES_SET_WATCH message to RTserver. The watch status controls whether or not the RTclient receives a MON_SERVER_NAMES_STATUS message each time an RTserver is created or destroyed. An RTserver is considered created when it starts up (and usually connects to other RTservers). An RTserver is considered destroyed when it terminates or disconnects from other RTservers. The watch status is saved internally so that the RTclient can automatically rewatch all appropriate categories if RTclient has to reconnect to RTserver.
Each MON_SERVER_NAMES_STATUS message contains four fields:
To determine if this RTclient is watching RTserver names, use serverNamesGetWatch(). To poll once for RTserver names, use serverNamesPoll() . |
|
Polls for RTserver option information by sending a MON_SERVER_OPTION_POLL_CALL message to the server_name RTserver. The server_name argument can be the unique subject name of a single RTserver, a wildcarded subject name to match many RTservers, or T_IPC_MON_ALL to poll all RTservers that match the value of the Monitor_Scope option. The polled RTserver responds by sending back a MON_SERVER_OPTION_POLL_RESULT message. The response should come back quickly. If option_name is T_IPC_MON_ALL then all options in the polled RTserver are polled. The polling RTclient can use methods such as TipcSrv::searchType() or TipcSrv::mainLoop() to get the response. Each MON_SERVER_OPTION_POLL_RESULT message contains one fixed field followed by one or more groups of five fields. The fixed field is a STR field containing the name of the RTserver. The group of five fields is:
|
|
Polls for RTserver route information by sending a MON_SERVER_ROUTE_POLL_CALL message to the server_name RTserver. The server_name argument can be the unique subject name of a single RTserver, a wildcarded subject name to match many RTservers, or T_IPC_MON_ALL to poll all RTservers that match the value of the Monitor_Scope option. The route information to the RTserver dest_server_name is polled. The polled RTserver responds by sending back a MON_SERVER_ROUTE_POLL_RESULT message. The response should come back quickly. If dest_server_name is T_IPC_MON_ALL then the routes in the polled RTserver to all other RTservers are polled. The polling RTclient can use methods such as TipcSrv::searchType() or TipcSrv::mainLoop() to get the response. Each MON_SERVER_ROUTE_POLL_RESULT message contains one fixed field followed by one or more groups of four fields. The fixed field is a STR field containing the name of the RTserver. The group of four fields is:
|
|
Polls for RTserver start time information by sending a MON_SERVER_START_TIME_POLL_CALL message to the server_name RTserver. The server_name argument can be the unique subject name of a single RTserver, a wildcarded subject name to match many RTservers, or T_IPC_MON_ALL to poll all RTservers that match the value of the Monitor_Scope option. The polled RTserver responds by sending back a MON_SERVER_START_TIME_POLL_RESULT message. The response should come back quickly. The polling RTclient can use methods such as TipcSrv::searchType() or TipcSrv::mainLoop() to get the response. Each MON_SERVER_START_TIME_POLL_RESULT message contains three fields:
|
|
Polls for RTserver time information by sending a MON_SERVER_TIME_POLL_CALL message to the server_name RTserver. The server_name argument can be the unique subject name of a single RTserver, a wildcarded subject name to match many RTservers, or T_IPC_MON_ALL to poll all RTservers that match the value of the Monitor_Scope option. The polled RTserver responds by sending back a MON_SERVER_TIME_POLL_RESULT message. The response should come back quickly. The polling RTclient can use methods such as TipcSrv::searchType() or TipcSrv::mainLoop() to get the response. Each MON_SERVER_TIME_POLL_RESULT message contains four fields:
|
|
serverVersionPoll polls for a RTserver's version by sending a MON_SERVER_VERSION_POLL_CALL message to the server_name RTserver. The server_name argument can be the unique subject name of a single RTserver, a wildcarded subject name to match many RTservers, or T_IPC_MON_ALL to poll all RTservers that match the value of the monitor_scope option. The polled RTservers respond by sending back a MON_SERVER_SERVER_POLL_RESULT message. The MON_SERVER_VERSION_POLL_RESULT will have the following grammar: str - Server name int4 - Version number There may be multiple responses if server_name is wildcarded or T_IPC_MON_ALL. If there are no servers that match server_name then the poll request is dropped by the RTserver and no responses will be received.
|
|
Sets the monitoring identification string of the TipcSrv connection passed as an argument to the constructor; this identification string is used as a descriptive name for the connection when it is being monitored. It is used as part of a field in these message types:
|
|
Polls for the subject names in the current project that match the value of the Monitor_Scope option by sending a MON_SUBJECT_NAMES_POLL_CALL message to RTserver. RTserver responds by sending back a MON_SUBJECT_NAMES_POLL_RESULT message. The response should come back quickly. The polling RTclient can use methods such as TipcSrv::searchType() or TipcSrv::mainLoop() to get the response. The MON_SUBJECT_NAMES_POLL_RESULT message contains one field, a STR_ARRAY field containing the current subject names. To watch for created and destroyed subject names, use subjectNamesSetWatch() |
|
Start or stop watching subject names in the current project that match the value of the Monitor_Scope option. This method saves the watch status and sends a MON_SUBJECT_NAMES_SET_WATCH message to RTserver. The watch status controls whether or not the RTclient receives a MON_SUBJECT_NAMES_STATUS message each time a subject is created or destroyed. A subject is considered created when the first RTclient starts subscribing to that subject. A subject is considered destroyed when the last RTclient stops subscribing to that subject. The watch status is saved internally so that the RTclient can automatically rewatch all appropriate categories if RTclient has to reconnect to RTserver. Each MON_SUBJECT_NAMES_STATUS message contains three fields:
|
|
Determines whether this RTclient is watching the Rtclients that are subscribing to a subject.
|
|
Polls once for RTclients subscribing to a subject by sending a MON_SUBJECT_SUBSCRIBE_POLL_CALL message to RTserver. If subject_name is T_IPC_MON_ALL then all subjects in the current project that match the value of the Monitor_Scope option are polled. RTserver responds by sending back a MON_SUBJECT_SUBSCRIBE_POLL_RESULT message. The response should come back quickly. The polling RTclient can use methods such as TipcSrv::searchType() or TipcSrv::mainLoop() to get the response. The MON_SUBJECT_SUBSCRIBE_POLL_RESULT message contains groups of two fields:
|
|
Start or stop watching the RTclients that are subscribing to a subject. This method saves the watch status and sends a MON_SUBJECT_SUBSCRIBE_SET_WATCH message to RTserver. The watch status controls whether or not the RTclient receives a MON_SUBJECT_SUBSCRIBE_STATUS message each time an RTclient starts or stops subscribing to the subject. The watch status is saved internally so that the RTclient can automatically rewatch all appropriate categories if RTclient has to reconnect to RTserver. If subject_name is T_IPC_MON_ALL then all subjects in the current project that match the value of the Monitor_Scope option are watched. Each MON_SUBJECT_SUBSCRIBE_STATUS message contains four fields:
|