moncmd - send commands to mon daemon and show the results.
moncmd [-a] [-d] [-l username]
[-f file] [-s server] [-p port]
[command]
moncmd sends commands to the mon server.
- -a
- Authenticate with the server.
- -d
- enable debugging, which is the same as -s localhost.
- -f file
- Read and execute commands from file.
- -l username
- Supply username as the username while authenticating to the
server.
- -s server
- Connect to server.
- -p port
- Use TCP port port when connecting to the server, instead of the
default of 32777.
moncmd will use the host specified by the -s
parameter as the server. If there is no -s parameter it will use the
host specified in the MONHOST environment variable. If there is no host in
either of these locations it will exit with an error.
If no commands are supplied to moncmd on the command line,
then commands will be taken from either standard input, or from the file
specified by the -f parameter. If standard input is connected to a TTY and
the -a option is supplied, then it will prompt for a password. If the -a
option is supplied without the -f option and standard input is not a TTY,
then the username and password are read from standard input using the syntax
"USER=username" and "PASS=password". The remaining input
lines are interpreted as commands to send to the server. moncmd will
not take usernames or passwords from a file, for obvious security
reasons.
If the username is neither supplied by the -l parameter or through
standard input, it is taken from the effective user ID of the current
process.
The following is a list of the commands that the server
understands.
- enable | disable
service group servicename
- Enables/disables alerts for group and servicename. All
disabled states are automatically saved to the state file, which may
optionally be re-loaded upon restarting or initial startup of the server.
- ack group service
comment
- Acknowledge a failure condition. This will store comment in the
state of service (queryable by doing a list opstatus command), and
will surppress further alerts for the service. Once the service returns to
a non-failure state, then the acknowledgement is reset.
- version
- Displays the protocol version in the form of "version
num" where num is the protocol version number.
- list aliases
- Lists aliases.
- list
aliasgroups
- Lists alias groups.
- savestate
- Save the state of the server. Currently, the only state which is saved is
the host/watches/services which are disabled.
- loadstate
- Load the state of the server. Currently, the only state which is loaded is
the host/watches/services which are disabled.
- enable | disable
host hostname
- Enables/disables host hostname in all groups. When the monitor is
called, this hostname will not be included in the list of hostnames sent
to the monitor. If a group has only one hostname in it, then the enable
| disable watch command should be used instead.
- enable | disable
watch watchgroup
- Enables/disables an entire watch for watchgroup, as defined in the
configuration file. Disabling a watch not only stops alerts from
happening, but it stops the actual monitor processes from being scheduled.
- reset
- Resets the server, forcing it to re-read the configuration file, kill off
currently running monitors, restart all monitoring, and reset all
counters. This command is only accessible if moncmd connects from
the host which is running the mon server.
- reset stopped
- Resets the server and immediately stops the scheduler. This is an atomic
version of the commands reset and stop.
- reload
auth
- Reloads the auth.cf file in order to incorporate any new changes. The auth
table is completely re-generated; it is not merged.
- reset keepstate
- If the word "keepstate" comes after the reset command, the
server will do a "loadstate" right after the reset, before the
scheduler kicks back in.
- stop
- Stops the scheduler, but continues to allow client connections.
- start
- Re-starts the scheduler after it has been stopped.
- test monitor
group servicename
- Triggers a test for group and service immediately by setting
the service's countdown timer to zero.
- test (alert | upalert |
startupalert) group servicename
retval period
- Triggers a test alert, upalert, or startupalert for group and
servicename. retval is the integer exit value to pass to the
alert via the MON_RETVAL environment variable. You must also specify the
period as it appears in the configuration file. All alerts of the
given type in that period will be triggered, but the alert will not be
logged.
- servertime
- Returns the current time of the server as seconds since Jan 1, 1970.
- list group
groupname
- Lists the members of group groupname.
- list
descriptions
- List the descriptions of each service, as defined in the configuration
file. If a service description is undefined, then it is not listed.
- list
alerthist
- Lists the last alarms triggered for each service of each watch group, in
addition to the summary output. The number of alerts to keep in memory is
bounded by the maxkeep variable, configurable on the mon
command line at startup, and expandable with the set command during
runtime.
- list
failurehist
- Lists the last failures, in addition to the summary output. This is also
limited by the maxkeep variable.
- list
opstatus
- Lists operational status of all services. Reports whether the last time a
service group was tested resulted in success or failure. The output is:
group service untested
group service time timeleft succeeded
group service time timeleft failed output
where output is the first line of output from the
monitor script which failed, time is the time that the condition
was last noticed in time(2) format, and timeleft is the
number of seconds left until the service is tested again.
- list
successes
- Generates the same output as the list opstatus command, but only
shows the services that have succeeded the last time they were tested.
- list
failures
- Generates the same output as the list opstatus command, but only
shows the services that have failed the last time they were tested.
- list
disabled
- Lists all hosts and services which have been disabled by the disable
host|service command.
- list
pids
- Shows the currently active watch groups/services along with their process
IDs, and it process ID of the server daemon.
- list
watch
- Lists all watches and services.
- list
state
- Lists the state of the scheduler.
- set group
service variable value
- Sets a variable to value. Useful for temporarily changing an interval or
alertevery value. Be careful, because this can just set any value in the
%watch hash, and some values that are specified in the configuration file
like "10m" or "35s" are converted and stored as just
plain integer seconds (e.g. "alertevery").
- get group
service variable
- Displays the value of group service variable.
- set
variable value
- Assigns value to the global variable variable.
- set opstatus
group service value
- Sets the opstatus value for group and service.
- get
variable
- Shows the value of global variable variable.
- term
- Terminates the server. This command is only accessible if moncmd
connects from the host which is running the mon server.
- MONSERVER
- The hostname of the server which runs the mon process.
- MONPORT
- The port number to connect to.
Report bugs to the email address below.
Jim Trocki <trockij@arctic.org>