Errpt命令详解以及在网管下面如何配置
ERRPT命令专门用在IBM服务器自带的系统AIX下面的监控服务器硬件损坏的错误日志查看命令.一旦系统的某个功能模块检测到一个错误或定义的需要记录日志的事件,则记录到/dev/error设备,把它保存在NVRAM中,这样可以保证即使在系统崩溃的情况下也不会丢失最新的错误日志。同时,错误日志进程errdemon从/dev/error文件中读取错误日志,然后根据错误模版库(/var/adm/ras/errtmpit)和错误消息库(/usr/lib/nls/msg/$LANGcodepoint.cat)对其进行处理后写入系统的错误日志/var/adm/ras/errlog中.
错误日志进程由/usr/lib/errdemon命令启动,/usr/lib/errstop停止,默认是启动的。最可能用到的可能就是—l参数了
/usr/lib/errdemon –l
# /usr/lib/errdemon —l
Error Log Attributes
----———-—--—-—-———---—-—------———-———-———-—-
Log File /var/adm/ras/errlog
肉皮冻的做法大全家常
错误日志进程由/usr/lib/errdemon命令启动,/usr/lib/errstop停止,默认是启动的。最可能用到的可能就是—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,这也是系统默认的错误日志的存放位置。word打开是乱码
查看错误日志:errpt命令
用more或者其他文本的查看命令来打开errlog文件我们看到的只是一对乱码,为了能够查看错误日志文件需要使用aix的errpt命令.
Memory Buffer Size 16384 bytes
Duplicate Removal true
Duplicate Interval 100 milliseconds
Duplicate Error Maximum 1000
上面显示我的错误日志文件是/var/adm/ras/errlog,这也是系统默认的错误日志的存放位置。word打开是乱码
查看错误日志:errpt命令
用more或者其他文本的查看命令来打开errlog文件我们看到的只是一对乱码,为了能够查看错误日志文件需要使用aix的errpt命令.
# errpt
IDENTIFIER TIMESTAMP T C RESOURCE_NAME DESCRIPTION
9DBCFDEE 010******* T O errdemon ERROR LOGGING TURNED ON
192AC071 010******* T O errdemon ERROR LOGGING TURNED OFF
C092AFE4 010******* 自己做的小麻薯方本 I O ctcasd ctcasd Daemon Started
IDENTIFIER TIMESTAMP T C RESOURCE_NAME DESCRIPTION
9DBCFDEE 010******* T O errdemon ERROR LOGGING TURNED ON
192AC071 010******* T O errdemon ERROR LOGGING TURNED OFF
C092AFE4 010******* 自己做的小麻薯方本 I O ctcasd ctcasd Daemon Started
A6DF45AA 010******* I O RMCdaemon The daemon is started。
9DBCFDEE避的拼音 010******* T O errdemon ERROR LOGGING TURNED ON
9DBCFDEE避的拼音 010******* T O errdemon ERROR LOGGING TURNED ON
这里的输出分为六列依次为:
1.错误标示符IDENTIFIER:并不唯一,由它来确定使用的错误模板,显然同一种错误的IDENTIFIER是相同的。
2.时间戳TIMESTAMP:错误发生的时间,MMDDhhmmYY,依次表示月日时分年。
3.类型TYPE:错误的类型,或者说严重的程度。
分为6个:
PEND 设备或功能组件可能丢失 简写P
PERF 性能严重下降 P
PERM 硬件设备或软件模块损坏,确诊了的 P
TEMP 临时性错误,经过重试后已经恢复正常 T
INFO 一般消息,不是错误 I
UNKN 不能确定错误的严重性 U
4.种类CLASS c:指出错误源
晴组词语
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.描述
S 软件故障
O 人为错误
U 不能确定
5. 资源名RESOURCE_NAME
最初检测到错误的资源名软件或者硬件,并不代表这个资源有问题,而只是最先在它发现的。
6.描述
显示具体的日志信息(这是我们在网管中会用到的东西,将会通过他来进行告警)
# errpt —a|more
------—--——-—-—-—-—-——--—-—-—--————--—--—-—-——-——---———-———------——--—-—---
LABEL: ERRLOG_ON
IDENTIFIER: 9DBCFDEE
Date/Time: Sun Jan 9 03:44:04 BEIS
# errpt —a|more
------—--——-—-—-—-—-——--—-—-—--————--—--—-—-——-——---———-———------——--—-—---
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
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
记录的位置
可以是本地的文件(包括设备文件如/dev/console)或远程syslog日志服务器。假如要 记录cron的所有错误信息,则可以在/etc/syslog。conf加入下面一行
cron。err /var/cronerr.log
定义记录cron的err信息到/var/cronerr.log文件
cron。err /var/cronerr.log
定义记录cron的err信息到/var/cronerr.log文件
注意事项:
由于errpt命令产生的错误不会消失,一直存在,而我们的网管的告警只能显示已经存在的错误,但是对于已经存在的错误已经过期了,对于这种已经处理的问题告警没有多大意思,errpt产生的信息一直会继续增加,要产生告警从网管中设置的简单告警是没办法实现客户想要达到的要求。只能从系统下手,我的思路:对于产生的新旧日志进行对比,然后将对比的文件内容进行输出,网管轮训到结果进行报警。用到的命令如下所示:
cp /tmp/errpt1。txt /;errpt -a >/tmp/errpt1。txt;diff /tmp/errpt1。txt /tmp/errpt2。txt
解释一下这条命令:首先这条命令是用到了copy,首先将产生的日志复制给errpt2。
txt,所以他们两个的内容是一样的,这是产生对比的条件;然后执行errpt –a将命令执行的内容定向到中;接着执行diff命令进行和文件内容进行比较。这样就会得到我们想要的结果(就是新产生的内容)。需要明示的是:这条命令只能执行一次,每次执行完成后,第二次执行errpt1。txt的内容和errpt2。txt的内容就会一样,为什么说这一点,主要是在网管中的告警过滤的设置,下面会提到这一点。
去网管下面早模板中新建自定义命令,然后点击选择是SSH还是TELNET的登录方式(取值方式根据系统来确定),前面的一些操作步骤这里不再赘述,
对下面的这张图再解释一下:
1、首先就是异常过滤的设置,敏感度只能一次,我前面提到了,那条命令执行完成以后,输出结果后,下次再执行的时候就是复制文件的内容,硬件错误的信息就产生一次,如果三次敏感度,将会取值错误,达不到想要的结果。
2、然后就是配置了,系统登录提示符必须和物理机登录界面保持一致,负责达不到想要的结果;
3、由于errpt命令(cp /tmp/errpt1。txt /tmp/errpt2。txt;errpt -a >/;diff /tmp/errpt1。txt /tmp/errpt2。txt)太长,网管根本不支持这么长的命令。
边塞诗鉴赏针对长命令的解决办法:创建一个脚本文件,将这条长命令输入进去,切换到bin目录下,touch errptcompare
Vim errptcompare (将命令的内容复制进去) wq!(shift+ZZ)保存退出
然后对errptcompare 进行权限修改 为了执行不会出现其他问题,权限最大
Chmod 777 errptcompare
4、对于开始和结束字符数是我研究不是很明白的一项,errpt告警显示的是产生这个错误的所有信息,我只提取了第一行,也就是LABLE这一行,告警的关键字也是LABLE,其实这里选择哪一行或者那个关键字都是可以的,因为内容是通过对比显示出来的,是唯一的。
下面看到当前状态下显示的是取值错误,这个很正常,因为每隔5分钟取值一次,它执行命令返回的数据是空的,所以是错误,经过多次试验数据验证了,也已经演示给了人行的软件科,获得肯定。
配置到此结束,希望能够帮到大家,如果这其中有什么错误,希望大家给予之处,共同进步!!
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论