linux abrt进程,CentOS7中abrt服务引起dotnet core进程挂掉

故障现象

Centos系统中donet core服务进程重启后,进程无法正常启动,应用程序log一直提示MySQL连接超时,无法连接(本地测试发现可以连接,之前并未修改过DB连接或网络层面的修改操作)。查看系统message日志发现:

299bf85a7b9cb7d09815a04fe6c70404.png

初步判断就是abrt服务的报错导致应用进程挂掉。初识abrt-hook-ccpp

hook为钩子,ccpp为C++。崩溃的程序由abrt-hook-ccpp监控。

abrtd是一个daemon守护进程,监听所有应用程序的运行,记录内核core文件。一旦某个程序挂了,它会将瞬时的计算机现场状态给记录下来,如有问题的数据,执行的命令,core文件等。并按系统设置采取措施,避免影响到其他正常程序运行。解决方法

方法一、原因是无法创建ccpp文件导致,修改/etc/abrt/abrt-action-save-package-data.conf配置文件的 ProcessUnpackaged 参数。将ProcessUnpackaged = no

修改为ProcessUnpackaged = yes

然后重启 systemctl status abrtd.service

方法二、修改/etc/abrt/abrt.conf文件,通过修改 MaxCrashReportsSize 配置项控制dump的最大size,将MaxCrashReportsSize修改为0,测试后发现core文件顺利生成。

默认为MaxCrashReportsSize = 1000

修改为MaxCrashReportsSize = 0

重启abrtd服务 systemctl status abrtd.service