AIX健康检查errpt


  • 通常我们在进行服务器的健康性检查,和在出现问题的时候都会去考虑查看系统的日志。

    我在学习aix的过程中发现,aix的日志跟solarislinux的日志存储和查看的方式有着相当大的区别,为了使自己对aix的日志认识的更系统就总结了一下。

    相当一部分是参考的 于宁斌《AIX 5L系统管理技术》

     

    1.一旦系统的某个功能模块检测到一个错误或定义的需要记录日志的事件,则记录到/dev/error设备,把它保存在NVRAM中,这样可以保证即使在系统崩溃的情况下也不会丢失最新的错误日志。

    2.同时,错误日志进程errdemon/dev/error文件中读取错误日志,然后根据错误模版库(/var/adm/ras/errtmpit)和错误消息库(/usr/lib/nls/msg/$LANGcodepoint.cat)对其进行处理后写入系统的错误日志/var/adm/ras/errlog中。

    错误日志进程由/usr/lib/errdemon命令启动,/usr/lib/errstop停止,默认是启动的。

    以上并不是重点,了解过程而已

     

     

    errdemon进程:

    /dev/error逻辑设备文件中读取纪录,然后在系统错误日志中创建错误日志纪录,显然这才是重点。

    Errdemon的配置:

    /usr/lib/errdemon 命令可以启动errdemon进程,同样我们也可以通过使用参数来修改我们的errdemon,显然如果我们不是太了解还是系统初始的配置更适合我们!

            例如:

            /usr/lib/errdemon –s 20000  设定我们的日志文件大小为20000bytes

            最可能用到的可能就是-l参数了

    /usr/lib/errdemon –l

    # /usr/lib/errdemon -l

    Error Log Attributes

    --------------------------------------------

    Log File                /var/adm/ras/errlog

    Log Size                1048576 bytes

    Memory Buffer Size      16384 bytes

    Duplicate Removal       true

    Duplicate Interval      100 milliseconds

    Duplicate Error Maximum 1000

    上面显示我的错误日志文件是/var/adm/ras/errlog,这也是系统默认的错误日志的存放位置。

    具体其他的参数可以参看man 手册。

     

     

     

     

    查看错误日志:errpt命令

    more或者其他文本的查看命令来打开errlog文件我们看到的只是一对乱码,为了能够查看错误日志文件需要使用aixerrpt命令。

    使用errpt命令查看日志,可能根据使用的参数来确定输出什么样的日志,甚至排序的方式,这是使用纯文本的日志不能做到的,或者说不能轻易做到的。

    下面我们来看errpt命令的使用。

     

    # errpt

    IDENTIFIER TIMESTAMP  T C RESOURCE_NAME  DESCRIPTION

    9DBCFDEE   0109034400 T O errdemon       ERROR LOGGING TURNED ON

    192AC071   0109034300 T O errdemon       ERROR LOGGING TURNED OFF

    C092AFE4   0109033500 I O ctcasd         ctcasd Daemon Started

    A6DF45AA   0109033500 I O RMCdaemon      The daemon is started.

    9DBCFDEE   0109033400 T O errdemon       ERROR LOGGING TURNED ON

    192AC071   0106130900 T O errdemon       ERROR LOGGING TURNED OFF

    369D049B   0106082400 I O SYSPFS         UNABLE TO ALLOCATE SPACE IN FILE SYSTE

    这里的输出分为六列依次为:

    1.错误标示符IDENTIFIER:并不唯一,由它来确定使用的错误模板,显然同一种错误的IDENTIFIER是相同的。

    2.时间戳TIMESTAMP:错误发生的时间,MMDDhhmmYY,依次表示月日时分年。

    3.类型TYPE:错误的类型,或者说严重的程度。

    分为6个:

    PEND        设备或功能组件可能丢失 简写P

    PERF        性能严重下降        P

    PERM        硬件设备或软件模块损坏,确诊了的 P

    TEMP        临时性错误,经过重试后已经恢复正常        T

    INFO        一般消息,不是错误                I

    UNKN        不能确定错误的严重性        U

    4.种类CLASS c:指出错误源

    H        硬件或介质故障

    S        软件故障

    O        人为错误

    U        不能确定

    5        资源名RESOURCE_NAME

    最初检测到错误的资源名软件或者硬件,并不代表这个资源有问题,而只是最先在它发现的。

    6.描述

     

    显示详细的日志信息

    # errpt -a|more

    Standard input

    ---------------------------------------------------------------------------

    Standard input

    LABEL:          ERRLOG_ON

    IDENTIFIER:     9DBCFDEE

    Date/Time:       Sun Jan  9 03:44:04 BEIS

    Sequence Number: 309

    Machine Id:      004250B94C00

    Node Id:         ibm-5L

    Class:           O

    Type:            TEMP

    Resource Name:   errdemon

    Description

    ERROR LOGGING TURNED ON

    Probable Causes

    ERRDEMON STARTED AUTOMATICALLY

    User Causes

    /USR/LIB/ERRDEMON COMMAND

            Recommended Actions

            NONE

     

     

    其它

    指定日志文件 –I可以用来查看一个非errdemon指定位置的日志文件,例如某个日志文件备份。

    -t 参数,只显示-t参数指定的错误类型TYPE

    -s 显示指定时间之后的日志文件.

    -d 指定种类CLASS.

    详细的参数只能看man 手册了

     

    # errpt -a -j 74533D1A

    # errpt -s 0108100100

    IDENTIFIER TIMESTAMP  T C RESOURCE_NAME  DESCRIPTION

    9DBCFDEE   0109034400 T O errdemon       ERROR LOGGING TURNED ON

    192AC071   0109034300 T O errdemon       ERROR LOGGING TURNED OFF

    C092AFE4   0109033500 I O ctcasd         ctcasd Daemon Started

    A6DF45AA   0109033500 I O RMCdaemon      The daemon is started.

    9DBCFDEE   0109033400 T O errdemon       ERROR LOGGING TURNED ON

     

     

     

     

     

    日志的清理

    errclear命令可以用来清理错误日志

    并且默认情况下cron会每天清理错误日志

    # crontab -l

    0 11 * * * /usr/bin/errclear -d S,O 30

    0 12 * * * /usr/bin/errclear -d H 90

    0 15 * * *  /usr/lib/ras/dumpcheck >;/dev/null 2>;&1

    显然,找上面的例子,S,O 类的错误会保留30天,而H的错误会保留90

    errclear 0   删除多有记录

    errclear 7 删除7天以前的记录

    smit errclear

     

     

     

     

     

     

    syslogd

    unix普遍用到的日志系统,配置文件/etc/syslog.conf

    没有什么多说的,比较普遍,定义的话是修改syslog.conf,保存的日志为文本格式

    syslog.conf配置文件格式

    信息类别.错误等级                记录的位置

     

    其中,各项的含义

    信息类别

    auth                       used by authorization systems (login)

    cron                       used for the cron and at systems

    daemon             system/netword daemon

    kern                       produced by kernel messages

    lpr                        printing system

    mail                       mail system

    mark                       internally used for time stamps

    news               reserved for the news system

    user                       default facility, used for any program

    uucp                       reserved for the uucp system

     

    错误等级

    debug              normally used for debugging

    info                       informational messages

    notice                 conditions that may require attention

    Warning                any warnings

    err                        any errors

    crit                       critical conditions like hardware problems

    Alert                        any condition that demand immediate attention

    emerg              any emergency condition

    none                       Do  not  send  messages  from  the  indicated f                       

    acility  to the selected file.  

     

    记录的位置

    可以是本地的文件(包括设备文件如/dev/console)或远程syslog日志服务器。

     

    假如我要记录cron的所有错误信息,则可以在/etc/syslog.conf加入下面一行

    cron.err      /var/cronerr.log

    定义记录cronerr信息到/var/cronerr.log文件

     

    具体syslog的具体配置,网上遍地都是。


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值