linux基础64——abrtd总结

安装与启动

# 安装abrt图形用户界面
yum install abrt-desktop

# 安装abrt客户端
yum -y install abrt-cli

# 接收关于 ABRT 检测到的崩溃的电子邮件通知(默认情况下,它会在本地计算机上向 root 用户发送通知。电子邮件目标可以在 /etc/libreport/plugins/mailx.conf 文件中配置)
yum install libreport-plugin-mailx

# 使用 Java 语言编写的应用程序中检测异常
yum install abrt-java-connector

# 启动abrt服务
service abrtd start

# 停止abrt服务
service abrtd stop

# 查看abrt服务状态
service abrtd status

配置文件

配置文件路径为/etc/abrt/abrt-action-save-package-data.conf,如果想生成core dump文件,修改内容如下:

# 修改1
"OpenGPGCheck = yes" 修改为 "OpenGPGCheck = no"

# 修改2
"ProcessUnpackaged = no" 修改为 "ProcessUnpackaged = yes"

重启abrtd服务

service abrtd restart 

abrtd

概述

全称automatically bug report daemon,自动bug报告守护进程,用于监控应用程序崩溃。当程序发生崩溃时,它将收集的崩溃信息,将信息存于**/var/spool/abrt**路径下。如下所示:

[root@localhost abrt]# pwd
/var/spool/abrt
[root@localhost abrt]# ls
ccpp-2023-10-09-19:54:10-16014  last-ccpp  oops-2023-02-24-19:47:25-22800-0

文件及目录说明:

  • last-ccpp:记录发生崩溃的程序全路径;
  • ccpp-*:存放程序崩溃的详细信息;

功能

  • 错误收集:ABRT监测系统中的异常情况,并自动收集相关的错误信息;
  • 错误报告:ABRT根据收集到的错误信息生成错误报告,并提供给开发人员或系统管理员进行分析和排查;
  • 自动通知:ABRT可以配置为在捕获到错误后自动发送通知;
  • 插件扩展:ABRT支持插件机制,可以灵活扩展其功能;

命令

  • 查看崩溃报告
abrt-cli list
  • 删除报告
abrt-cli rm [文件包]

优势

程序崩溃时产生core dump等文件,方便问题排查与定位。

劣势

可能产生大量崩溃报告,占满磁盘空间。

测试

模拟程序

#include <stdio.h>

void Func(int *p) 
{
    *p = 6;
}

int main() 
{
    int *p = NULL;
    Func(p);
    return 0;
}

测试

  1. 编译并运行程序;
  2. 进入/var/spool/abrt/ccpp-*目录,通过gdb分析coredump文件;
[root@localhost ccpp-2023-10-09-20:05:52-22585]# gdb --core=./coredump --exec=/mnt/hgfs/test/abrtd-test/debug/testAbrtd -q
[New LWP 22585]
Missing separate debuginfo for the main executable file
Try: yum --enablerepo='*debug*' install /usr/lib/debug/.build-id/d1/20328a67
Core was generated by `./testAbrtd'.
Program terminated with signal 11, Segmentation fault.
#0  0x00000000004006be in ?? ()
(gdb) bt
// ...
(gdb) 
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值