#!/usr/bin/env python
################################################################################
#\defgroup difxmessages DiFXMessages
#
#\brief Echo UDP message traffice from DiFX Processes
#
#Usage: DiFXMessages [options] [list of message types]
#
# DiFXMessages collects an echos UDP message traffic intercepted
# on the DiFX server. Messages are printed in their raw XML form and/or
# parsed into component content. Desired message traffic can be limited to a
# message type (specified by name or a number), source hostname(s), or
# message identifier (which is often a DiFX job name). By default ALL traffic is echoed.
#
#
# -h, --help | Print help information and quit.
# |
-H, --hostname NAME | Use NAME as the host of the DiFX server program.
# Default is to use DIFX_CONTROL_HOST environment variable.
# |
-i, --identifier NAME | Echo only messages with the named identifier. This is (often)
# the DiFX job name, so this option can be used to monitor a
# job or jobs to some degree. The named identifier is a regular
# expression, so multiple jobs can be matched.
# |
-p, --parse | Toggle whether to parse XML messages into a readable format.
# Default is to do so.
# |
-P, --port PORT | Use PORT as the TCP port to communicated with the DiFX server.
# Default is to use DIFX_CONTROL_PORT environment variable.
# |
-r, --raw | Toggle whether to echo \"raw\" XML message strings. Default is
# to do so.
# |
-R, --restrict | Tell difxServer to restrict messages it sends to those types
# Selected. This can cut down on socket traffic, however currently
# not all message types are supported. As a consequence this
# feature is off by default.
# |
-s, --source LIST | Echo only messages originating from one of the comma-separated LIST
# of node names. Default is to echo all sources.
# |
-S, --stats | Toggle whether to produce a list of statistics (messages received, etc.)
# when collection is terminated. Default is not to do so.
# |
-t, --type LIST | Indicate the following items are a list of message types you wish to
# echo. This isn't an explicitly required argument, as the list can be
# included as the final argument(s) - seem below.
# |
#
#