FMDUMP(1M)FMDUMP(1M)NAMEfmdump - fault management log viewer
SYNOPSISfmdump [-efmvV] [-c class] [-R dir] [-t time] [-T time]
[-u uid] [-n name[.name]*[=value]] [file]
DESCRIPTION
The fmdump utility can be used to display the contents of any of the
log files associated with the Fault Manager, fmd(1M). The Fault Manager
runs in the background on each system. It receives telemetry informa‐
tion relating to problems detected by the system software, diagnoses
these problems, and initiates proactive self-healing activities such as
disabling faulty components.
The Fault Manager maintains two sets of log files for use by adminis‐
trators and service personnel:
error log
A log which records error telemetry, the symptoms of prob‐
lems detected by the system.
fault log
A log which records fault diagnosis information, the prob‐
lems believed to explain these symptoms.
By default, fmdump displays the contents of the fault log, which
records the result of each diagnosis made by the fault manager or one
of its component modules.
An example of a default fmdump display follows:
# fmdump
TIME UUID SUNW-MSG-ID
Dec 28 13:01:27.3919 bf36f0ea-9e47-42b5-fc6f-c0d979c4c8f4 FMD-8000-11
Dec 28 13:01:49.3765 3a186292-3402-40ff-b5ae-810601be337d FMD-8000-11
Dec 28 13:02:59.4448 58107381-1985-48a4-b56f-91d8a617ad83 FMD-8000-OW
...
Each problem recorded in the fault log is identified by:
o The time of its diagnosis
o A Universal Unique Identifier (UUID) that can be used to
uniquely identify this particular problem across any set of
systems
o A message identifier that can be used to access a corre‐
sponding knowledge article located on http://illu‐
mos.org/msg/
If a problem requires action by a human administrator or service tech‐
nician or affects system behavior, the Fault Manager also issues a
human-readable message to syslogd(1M). This message provides a summary
of the problem and a reference to the knowledge article on http://illu‐
mos.org/msg/.
You can use the -v and -V options to expand the display from a single-
line summary to increased levels of detail for each event recorded in
the log. The -c, -t, -T, and -u options can be used to filter the out‐
put by selecting only those events that match the specified class,
range of times, or uuid.
If more than one filter option is present on the command-line, the
options combine to display only those events that are selected by the
logical AND of the options. If more than one instance of the same fil‐
ter option is present on the command-line, the like options combine to
display any events selected by the logical OR of the options. For exam‐
ple, the command:
# fmdump-u uuid1 -u uuid2 -t 02Dec03
selects events whose attributes are (uuid1 OR uuid2) AND (time on or
after 02Dec03).
OPTIONS
The following options are supported:
-c class
Select events that match the specified class. The class argument
can use the glob pattern matching syntax described in sh(1). The
class represents a hierarchical classification string indicating
the type of telemetry event.
-e
Display events from the fault management error log instead of the
fault log. This option is shorthand for specifying the pathname of
the error log file.
The error log file contains Private telemetry information. This
information is recorded to facilitate post-mortem analysis of prob‐
lems and event replay, and should not be parsed or relied upon for
the development of scripts or other tools.
-f
Follow the growth of the log file by waiting for additional data.
fmdump enters an infinite loop where it will sleep for a second,
attempt to read and format new data from the log file, and then go
back to sleep. This loop can be terminated at any time by sending
an interrupt (Control-C).
-m
Print the localized diagnosis message associated with each entry in
the fault log.
-n name[.name]*[=value]
Select fault log or error log events, depending on the -e option,
that have properties with a matching name (and optionally a match‐
ing value). For string properties the value can be a regular
expression match. Regular expression syntax is described in the
EXTENDED REGULAR EXPRESSIONS section of the regex(5) manual page.
Be careful when using the characters:
$ * { ^ | ( ) \
...or a regular expression, because these are meaningful to the
shell. It is safest to enclose any of these in single quotes. For
numeric properties, the value can be octal, hex, or decimal.
-R dir
Use the specified root directory for the log files accessed by
fmdump, instead of the default root (/).
-t time
Select events that occurred at or after the specified time. The
time can be specified using any of the following forms:
mm/dd/yy hh:mm:ss
Month, day, year, hour in 24-hour format, minute, and second.
Any amount of whitespace can separate the date and time. The
argument should be quoted so that the shell interprets the two
strings as a single argument.
mm/dd/yy hh:mm
Month, day, year, hour in 24-hour format, and minute. Any
amount of whitespace can separate the date and time. The argu‐
ment should be quoted so that the shell interprets the two
strings as a single argument.
mm/dd/yy
12:00:00AM on the specified month, day, and year.
ddMonyy hh:mm:ss
Day, month name, year, hour in 24-hour format, minute, and sec‐
ond. Any amount of whitespace can separate the date and time.
The argument should be quoted so that the shell interprets the
two strings as a single argument.
ddMonyy hh:mm
Day, month name, year, hour in 24-hour format, and minute. Any
amount of whitespace can separate the date and time. The argu‐
ment should be quoted so that the shell interprets the two
strings as a single argument.
Mon dd hh:mm:ss
Month, day, hour in 24-hour format, minute, and second of the
current year.
yyyy-mm-dd [T hh:mm[:ss]]
Year, month, day, and optional hour in 24-hour format, minute,
and second. The second, or hour, minute, and second, can be
optionally omitted.
ddMonyy
12:00:00AM on the specified day, month name, and year.
hh:mm:ss
Hour in 24-hour format, minute, and second of the current day.
hh:mm
Hour in 24-hour format and minute of the current day.
Tns | Tnsec
T nanoseconds ago where T is an integer value specified in base
10.
Tus |Tusec
T microseconds ago where T is an integer value specified in
base 10.
Tms | Tmsec
T milliseconds ago where T is an integer value specified in
base 10.
Ts | Tsec
T seconds ago where T is an integer value specified in base 10.
Tm |Tmin
T minutes ago where T is an integer value specified in base 10.
Th |Thour
T hours ago where T is an integer value specified in base 10.
Td |Tday
T days ago where T is an integer value specified in base 10.
You can append a decimal fraction of the form .n to any -t option
argument to indicate a fractional number of seconds beyond the
specified time.
-T time
Select events that occurred at or before the specified time. time
can be specified using any of the time formats described for the -t
option.
-u uuid
Select fault diagnosis events that exactly match the specified
uuid. Each diagnosis is associated with a Universal Unique Identi‐
fier (UUID) for identification purposes. The -u option can be com‐
bined with other options such as -v to show all of the details
associated with a particular diagnosis.
If the -e option and -u option are both present, the error events
that are cross-referenced by the specified diagnosis are displayed.
-v
Display verbose event detail. The event display is enlarged to show
additional common members of the selected events.
-V
Display very verbose event detail. The event display is enlarged to
show every member of the name-value pair list associated with each
event. In addition, for fault logs, the event display includes a
list of cross-references to the corresponding errors that were
associated with the diagnosis.
OPERANDS
The following operands are supported:
file
Specifies an alternate log file to display instead of the sys‐
tem fault log. The fmdump utility determines the type of the
specified log automatically and produces appropriate output for
the selected log.
EXAMPLES
Example 1 Retrieving Given Class from fmd Log
Use any of the following commands to retrieve information about a spec‐
ified class from the fmd log. The complete class name is ere‐
port.io.ddi.context.
# fmdump-Ve -c 'ereport.io.ddi.context'
# fmdump-Ve -c 'ereport.*.context'
# fmdump-Ve -n 'class=ereport.io.ddi.context'
# fmdump-Ve -n 'class=ereport.*.context'
Any of the preceding commands produces the following output:
Oct 06 2007 11:53:20.975021712 ereport.io.ddi.context
nvlist version: 0
class = ereport.io.ddi.context
ena = 0x1b03a15ecf00001
detector = (embedded nvlist)
nvlist version: 0
version = 0x0
scheme = dev
device-path = /
(end detector)
__ttl = 0x1
__tod = 0x470706b0 0x3a1da690
Example 2 Retrieving Specific Detector Device Path from fmd Log
The following command retrieves a detector device path from the fmd
log.
# fmdump-Ve -n 'detector.device-path=.*/disk@1,0$'
Oct 06 2007 12:04:28.065660760 ereport.io.scsi.disk.rqs
nvlist version: 0
class = ereport.io.scsi.disk.rqs
ena = 0x453ff3732400401
detector = (embedded nvlist)
nvlist version: 0
version = 0x0
scheme = dev
device-path = /pci@0,0/pci1000,3060@3/disk@1,0
(end detector)
__ttl = 0x1
__tod = 0x4707094c 0x3e9e758
EXIT STATUS
The following exit values are returned:
0
Successful completion. All records in the log file were examined
successfully.
1
A fatal error occurred. This prevented any log file data from
being examined, such as failure to open the specified file.
2
Invalid command-line options were specified.
3
The log file was opened successfully, but one or more log file
records were not displayed, either due to an I/O error or because
the records themselves were malformed. fmdump issues a warning
message for each record that could not be displayed, and then con‐
tinues on and attempts to display other records.
FILES
/var/fm/fmd
Fault management log directory
/var/fm/fmd/errlog
Fault management error log
/var/fm/fmd/fltlog
Fault management fault log
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
┌────────────────────┬─────────────────┐
│ ATTRIBUTE TYPE │ ATTRIBUTE VALUE │
├────────────────────┼─────────────────┤
│Interface Stability │ See below. │
└────────────────────┴─────────────────┘
The command-line options are Evolving. The human-readable error log
output is Private. The human-readable fault log output is Evolving.
SEE ALSOsh(1), fmadm(1M), fmd(1M), fmstat(1M), syslogd(1M), libexacct(3LIB),
attributes(5), regex(5)
http://illumos.org/msg/
NOTES
Fault logs contain references to records stored in error logs that can
be displayed using fmdump-V to understand the errors that were used in
the diagnosis of a particular fault. These links are preserved if an
error log is renamed as part of log rotation. They can be broken by
removing an error log file, or by moving it to another filesystem
directory. fmdump can not display error information for such broken
links. It continues to display any and all information present in the
fault log.
Apr 14, 2009 FMDUMP(1M)