ZFS: Silent/hidden errors, nothing logged anywhere

James R. Van Artsdalen james-freebsd-current at jrv.org
Sat Jun 13 20:54:34 UTC 2009


Pawel Jakub Dawidek wrote:
>
> We do log such errors. Solaris uses FMA and for FreeBSD I use devd. You
> can find the following entry in /etc/devd.conf:
>
> notify 10 {
>         match "system"          "ZFS";
>         match "type"            "checksum";
>         action "logger -p kern.warn 'ZFS: checksum mismatch, zpool=$pool path=$vdev_path offset=$zio_offset size=$zio_size'";
> };
>
> If you see nothing in your logs, there must be a bug with reporting the
> problem somewhere or devd is not running (it should be enabled by
> default).
>   

Looking at vsyslog(3), I don't think logger(1) can ever log with
facility KERN.  LOG_KERN is 0, so this in vsyslog

          /* Set default facility if none specified. */
          if ((pri & LOG_FACMASK) == 0)
                 pri |= LogFacility;

will always change the KERN facility is to LogFacility, which defaults
to LOG_USER.
 
So the devd output is really going to user.warn and a syslog.conf line like

kern.*                                          /var/log/kernel.log

will capture kernel messages, but not the devd logger output, and if you
look in kernel.log you won't find the checksum errors.



More information about the freebsd-current mailing list