fmdump(1M) System Administration Commands fmdump(1M)
NAME
fmdump - fault management log viewer
SYNOPSIS
fmdump [-efvV] [-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 Solaris Fault Manager, fmd(1M). The
Fault Manager runs in the background on each Solaris system. It receives telemetry information 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 administrators and service personnel:
error log A log which records error telemetry, the symptoms of problems detected by the system.
fault log A log which records fault diagnosis information, the problems 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 corresponding knowledge article located at Sun's web site,
http://www.sun.com/msg/
If a problem requires action by a human administrator or service technician 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 the Sun
web site, http://www.sun.com/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 output 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 filter option is present on the command-line, the like options combine to
display any events selected by the logical OR of the options. For example, 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. More information about Sun's telemetry protocol
is available at Sun's web site, http://www.sun.com/msg/.
-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 used by Sun's automated diagnosis software. This information is recorded to
facilitate post-mortem analysis of problems and event replay, and should not be parsed or relied upon for the development of scripts
and other tools. See attributes(5) for information about Sun's rules for Private interfaces.
-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).
-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 matching
value). For string properties the value can be a regular expression match. Regular expression syntax is described in the EXTENDED REGU-
LAR 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 argument 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 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.
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 argument
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 option-
ally 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 speci-
fied 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 Identifier
(UUID) for identification purposes. The -u option can be combined 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 associ-
ated with the diagnosis.
OPERANDS
The following operands are supported:
file Specifies an alternate log file to display instead of the system 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 specified 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 continues on
and attempts to display other records.
FILES
/var/fm/fmd Fault management log directory
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|Availability |SUNWfmd |
+-----------------------------+-----------------------------+
|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 ALSO
sh(1), fmadm(1M), fmd(1M), fmstat(1M), syslogd(1M), libexacct(3LIB), attributes(5), regex(5)
http://www.sun.com/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.
SunOS 5.11 28 Apr 2008 fmdump(1M)