vxnotify(ADM)
vxnotify - display Volume Manager configuration events
Synopsis
vxnotify [ -icfdD ] [ -w wait-time ] [ -g diskgroup ] [ -n number ] [ -t timeout ]
Description
The vxnotify utility displays events related to disk and configuration changes, as managed by the Volume Manager configuration daemon, vxconfigd. vxnotify displays requested event types until killed by a signal, until a given number of events have been received, or until a given number of seconds have passed.
Each event is displayed as a single-line output record on the standard output. Displayed events are:
- connected
- A connection was established with vxconfigd. This event type is displayed immediately after
successful startup and initialization of vxnotify. A connected event is also displayed if the
connection to vxconfigd is lost, and then regained. A connected event displayed after a
reconnection indicates that some events may have been lost.
- disconnected
- The connection to vxconfigd was lost. This normally results from vxconfigd being stopped (such
as by vxdctl stop) or killed by a signal. In response to a disconnection, vxnotify displays
a disconnected event and then waits until a reconnection succeeds. A connected event is
then displayed.
- A disconnected event is also printed if vxconfigd is not accessible at the time vxnotify is started.
In this case, the disconnected event precedes the first connected event.
- more events
- Due to internal buffer overruns, or other possible problems, some events may have been lost.
- vxconfigd disabled
- vxconfigd was changed to disabled mode. Most configuration information will be unavailable until
vxconfigd is changed back to enabled mode.
- vxconfigd enabled
- vxconfigd was changed to enabled mode. All configuration information should now be retrievable.
vxconfigd disabled and vxconfigd enabled events can be retrieved only when using
diagnostic-mode connections to the vxconfigd diagnostic portal. Use -D to obtain a
regular diagnostic mode connection.
- waiting ...
- If the -w option is specified, a waiting event is displayed after a defined period with no other events.
Shell scripts can use waiting messages to collect groups of related, or at least nearly
simultaneous, events. This can make shell scripts more efficient. This can also provide
some scripts with better input since sets of detach events, in particular, often occur in
groups that scripts can relate together. This is particularly important given that a typical
shell script will block until vxnotify produces output, thus requiring output to indicate the
end of a possible sequence of related events.
- import dg groupname dgid groupid
- The disk group named groupname was imported. The disk group ID of the imported disk group is
groupid.
- deport dg groupname dgid groupid
- The named disk group was deported.
- disable dg groupname dgid groupid
- The named disk group was disabled. A disabled disk group cannot be changed, and its records
cannot be printed with vxprint. However, some volumes in a disabled disk group may still
be usable, although it is unlikely that the volumes will be usable after a system reboot. A
disk group will be disabled as a result of excessive failures. A disk group will be disabled
if the last disk in the disk group fails, or if errors occur when writing to all configuration
and log copies in the disk group.
- change dg groupname dgid groupid
- A change was made to the configuration for the named disk group. The transaction ID for the update
was groupid.
- detach subdisk subdisk plex plex volume volume dg groupname dgid groupid
- The named subdisk, in the named disk group, was detached as a result of an I/O failure detected
during normal volume I/O, or disabled as a result of a detected disk failure. Failures of a
subdisk in a RAID-5 volume or a log subdisk within a mirrored volume result in a subdisk
detach; other subdisk failures generally result in the subdisk's plex being detached.
- detach plex plex volume volume dg groupname dgid groupid
- The named plex, in the named disk group, was detached as a result of an I/O failure detected during
normal volume I/O, or disabled as a result of a detected total disk failure.
- detach volume volume dg groupname dgid groupid
- The named volume, in the named disk group, was detached as a result of an I/O failure detected
during normal volume I/O, or as a result of a detected total disk failure. Usually, only
plexes or subdisks are detached as a result of volume I/O failure. However, if a volume
would become entirely unusable by detaching a plex or subdisk, then the volume may be
detached.
- detach disk accessname dm medianame dg groupname dgid groupid
- The named disk, with device access name accessname and
disk media name medianame was disconnected from the named disk
group as a result of an apparent total disk failure. Total disk
failures are checked for automatically when plexes or subdisks are
detached by kernel failures, or explicitly by the vxdisk
check operation (see vxdisk(ADM)).
- log-detach volume volume dg groupname dgid groupid
- All log copies for the volume (either log plexes for a RAID-5 volume or log subdisks for a regular
mirrored volume) have become unusable, either as a result of I/O failures or as a result of
a detected total disk failure.
- change disk accessname dm medianame dg groupname dgid groupid
- The disk header changed for the disk with a device access name of accessname. The disk group
name and ID of the disk are groupname and groupid, respectively. The displayed
groupname and groupid strings will be ``-'' or blank if the disk is not currently in an
imported disk group.
- degraded volume volume dg groupname dgid groupid
- The RAID-5 volume has become degraded due to the loss of one subdisk in the raid5 plex of the
volume. Accesses to some parts of the volume may be slower than to other parts depending
on the location of the failed subdisk and the subsequent I/O patterns.
Options
- -i
- Display disk group import, deport, and disable events.
- -c
- Display disk group change events.
- -f
- Display plex, volume, and disk detach events.
- -d
- Display disk change events.
- -D
- Use a diagnostic-mode connection to vxconfigd. This allows the receipt of events when vxconfigd
is running in disabled mode. Access to configuration information is limited when
vxconfigd is running in disabled mode. For most applications, it is better to let vxnotify
print events only when vxconfigd is running in enabled mode.
- -w wait_time
- Display waiting events after wait_time seconds with no other events.
- -g diskgroup
- Restrict displayed events to those in the indicated disk group. The disk group can be specified either
as a disk group name or a disk group ID.
- -n number
- Display the indicated number of vxconfigd events, then exit. Events that are not generated by
vxconfigd (i.e., connect, disconnect and waiting events) do not count towards the number
of counted events and will not cause an exit to occur.
- -t timeout
- Display events for up to timeout seconds, then exit. The -n and -t options can be combined to
specify a maximum number of events and a maximum timeout to wait before exiting.
If none of the -i, -c, -f, or -d options are specified, then default to printing all event types. If a disk group is specified with -g, display only disk group-related events.
Examples
The following example shell script will send mail to root for all detected plex, volume, and disk detaches:
checkdetach() {
d=`vxprint -AQdF '%name %nodarec' | awk '$2=="on" {print " " $1}'`
p=`vxprint -AQpe 'pl_kdetach || pl_nodarec' -F ' %name'`
v=`vxprint -AQvF ' %name' -e \
"((any aslist.pl_kdetach==true) ||
(any aslist.pl_nodarec)) &&
!(any aslist.pl_stale==false)"`
if [ ! -z "$d" ] || [ ! -z "$p" ] || [ ! -z "$v" ]
then
(
cat <<EOF
Failures have been detected by the VERITAS Volume Manager:
EOF
[ -z "$d" ] || echo "\\nfailed disks:\\n$d"
[ -z "$p" ] || echo "\\nfailed plexes:\\n$p"
[ -z "$v" ] || echo "\\nfailed volumes:\\n$v"
) | mailx -s "Volume Manager failures" root
fi
}
vxnotify -f -w 30 | while read code more
do
case $code in
waiting) checkdetach;;
esac
done
Exit codes
The vxnotify utility exits with a nonzero status if an
error is encountered while communicating with
vxconfigd.
See
vxintro(ADM),
for a list of standard exit codes.
References
vxconfigd(ADM),
vxdctl(ADM),
vxdisk(ADM),
vxintro(ADM),
vxtrace(ADM)
Copyright © 2005 The SCO Group, Inc. All rights reserved.