启动错误日志守护进程(errdemon) 并向错误日志里写记录.
errdemon [ [ -B BufferSize ] [ -d | -D ] [ -i File ] [ -s LogSize ] [ -t Time ] [ -m MaxDups ] | -l ]
错误日志守护进程从 /dev/error 文件里读入错误记录并在系统错误日志里创建错误日志记录。除了在每次记录错误时向系统错误日志里写一条记录外,错误日志守护进程还执行像在错误通知数据库里指定的错误通知。/etc/objrepos/errnotify 文件就是错误通知数据库。默认的系统错误日志由 /var/adm/ras/errlog 文件维护。最近的错误记录放在非易失性随机存取存储器里(NVRAM)。在系统启动期间,当错误日志守护进程启动后,这条最近的错误记录就从 NVRAM 里读入并添加到错误日志。
错误日志守护进程并不为已记录的错误创建一条错误日志记录,如果错误记录模板指定 Log=FALSE的话。
如果错误日志守护进程不带标志,系统会用存贮在 错误日志配置数据库里的配置值来重启它。缺省情况下,errdemon 守护进程会在同一错误被频繁记录时删除其相同的副本错误日志记录。这是为了降低错误日志对于系统性能的不利影响。在详细的错误报告里,可以看到重复记录的数目。
用 errclear 命令从系统错误日志删除记录。
注意: 错误日志守护进程通常是在系统初始化期间启动的。停止错误日志守护进程会导致临时存贮在内部缓冲区的错误数据在被记录到错误日志文件之前被覆盖掉。
-B BufferSize | 使用为错误日志设备驱动器的内部存贮器缓冲区由 BufferSize 参数指定的字节数。指定的缓冲区大小存在错误日志配置数据库里。如果BufferSize 参数比当前使用的缓冲区大小要大,会立即增加内存缓冲区大小。如果 BufferSize 参数比当前使用的缓冲区大小要小,在下次系统重启后错误日志守护进程启动后新指定的大小才生效。缓冲区的大小不能小于硬编码所默认的 8KB 大小。
如果此参数没有指定,错误日志守护进程则使用错误日志配置数据库中的缓冲区大小。 指定的缓冲区大小要舍入到存储页大小(4KB)的整数倍。错误日志设备驱动程序的内存缓冲区使用的内存不能被其它进程使用。(缓冲区被锁定)。要注意的是不要指定过大的缓冲区,这样会损失您的系统性能。另一方面,如果指定的缓冲区过小,如果错误记录产生的速度比从缓冲区读取并存入日志文件的速度要快,则缓冲区就会很满。当缓冲区满了时,新的记录会被废弃,直到缓冲区有可用的空间。当发生这种情况时,错误日志守护进程会产生一条错误日志记录来通知您问题所在。您可以通过扩大缓冲区来解决此问题。 |
-d | 指定重复的错误日志记录不能被删除。缺省的行为是删除重复的错误日志记录副本,由标志 -D 指定。 |
-D | 指定要除去的重复项。它是缺省值。 |
-i File | 使用 File 变量指定的错误日志文件。指定的文件名保存在错误日志配置数据库中,并立即投入使用。 |
-l | 显示错误日志配置数据库中错误日志文件名、文件大小、缓冲区大小和重复句柄的值。 |
-m MaxDups | 指定重复的记录被强制删除前的最大允许重复的错误记录数目。缺省值是 1000。当发生的错误重复时,由 MaxDups指定的错误次数的数目,也就是重复错误的次数被记录,就像记录一个单独的错误一样。MaxDups 的允许值在 1 到 24748367 之间。 |
-s LogSize | 使用由变量 LogSize 指定的错误日志文件的大小的最大值。指定的错误日志文件大小的限制保存在错误日志配置数据库中,并立即生效。如果错误日志文件的限制比当前正在使用中的文件大小还要小,错误日志守护进程就把当前的日志文件添加扩展名 .old 重新命名。错误日志守护进程用指定的大小限制创建新的日志文件。要产生旧日志文件的报告,用带有 -i 标志的 errpt 命令。
如果不指定此参数,错误日志守护进程就采用错误日志配置数据库中的文件大小。 |
-t Time | 指定大概的时间间隔(毫秒),在此时间间隔内,如果一个错误和以前的错误是相同的,就认为重复。在此时间间隔之后发生的错误,即使与前面的错误一样,也不认为是重复的错误。缺省值是 100 或十分之一秒。Time
的允许值在 1 到 214783647 之间。。
注意: 此标志在同一条错误频繁发生并记录的情况下删除重复记录,这通常意味着一个循环条件。对于有错误通知对象的情况,不要求捕捉到每一个重复的错误。把此值指定得足够大,可以折衷删除太多错误时错误通知。参见 errpt 命令,此命令描述在错误报告中除去重复错误。 |
访问控制:只有 root 用户可以运行这个守护进程。
/usr/lib/errdemon
/usr/lib/errdemon -l
/usr/lib/errdemon -s 65536
/usr/lib/errdemon -t 10
/dev/error | 错误记录源。 |
/var/adm/ras/errtmplt | 含有错误模板库。 |
/usr/lib/errdemon | 含有 errdemon 守护进程。 |
/etc/objrepos/SWservAt | 包含了软件服务辅助属性对象类;即错误日志配置数据库。 |
errclear 命令、errdead 命令、errinstall 命令、errlogger 命令、errmsg 命令、errpt 命令、errstop 命令、errupdate 命令。
errsave 内核服务。
error logging 特殊文件。
errlog 子例程。
AIX 5L Version 5.2 General Programming Concepts: Writing and Debugging Programs 中的 Error Logging Overview。