本发明涉及fuse进程检测领域,具体涉及一种监控fuse进程的检测方法、装置、设备及存储介质。
背景技术
fuse即用户空间文件系统(filesysteminuserspace),是一个用户空间的文件系统框架,允许非特权用户建立功能完备的文件系统,而不需要重新编译内核,fuse对于用户读写虚拟文件系统来讲,是个很好的选择。
fuse包含一个内核模块和一个用户空间守护进程,将大部分的vfs调用都委托一个专用的守护进程来处理。目前as13000存储系统的版本均支持基于fuse的用户态客户端,用户态fuse客户端能够支持多种高级功能,如acl、配额、多级数据保护等。但是在工作过程中,有时会遇到fuse进程无故消失的情况,该情况一旦出现就难以定位。为解决上述问题,本发明提出一种监控fuse进程的检测方法、装置、设备及存储介质。
技术实现要素:
本发明的目的在于,提出一种监控fuse进程的检测方法、装置、设备及存储介质,以解决上述技术问题。
本发明提出的技术方案包括:一种监控fuse进程的检测方法,包括:
创建自定义目录,以及信号检测脚本;
将所述信号检测脚本存储至自定义目录下,检测发送给icfs-fuse的信号和此节点上的kill信号,并输出信号信息;
创建自动检测脚本;
将所述自动检测脚本存储至可执行命令目录下;
执行自动检测脚本,将信号检测脚本输出的信号信息存放至日志;
查看日志中的信号信息。
本发明的技术方案还包括:所述将所述信号检测脚本存储至自定义目录下,检测发送给icfs-fuse的信号和此节点上的kill信号,并输出信号信息,还包括:
将所述信号检测脚本存储至自定义目录下,检测发送给icfs-fuse的信号和此节点上的kill信号,判断并输出信号的pid,uid,sig_name信息。
本发明的技术方案还包括:所述执行自动检测脚本,将信号检测脚本输出的信号信息存放至日志,包括:
执行自动检测脚本,查看自定义目录下的信号检测脚本是否在运行:
若正在运行,后台持续执行信号检测脚本,并将信号检测脚本输出的信号信息存放至日志;
若不在运行,执行结束命令,停止检测。
本发明的技术方案还包括:一种监控fuse进程的检测装置,包括:
自定义目录创建单元,配置用于创建自定义目录;
信号检测脚本创建单元,配置用于创建信号检测脚本;
第一指定存储单元,配置用于将所述信号检测脚本存储至自定义目录下,检测发送给icfs-fuse的信号和此节点上的kill信号,并输出信号信息;自动检测脚本创建单元,配置用于创建自动检测脚本;
第二指定存储单元,配置用于将所述自动检测脚本存储至可执行命令目录下;
脚本执行单元,配置用于执行自动检测脚本,将信号检测脚本输出的信号信息存放至日志;
信号信息查看单元,配置用于查看日志中的信号信息。
本发明的技术方案还包括:所述第一指定存储单元还包括:信号信息判断子单元,配置用于当将所述信号检测脚本存储至自定义目录下,检测发送给icfs-fuse的信号和此节点上的kill信号时,判断并输出信号信息的pid,uid,sig_name信息。
本发明的技术方案还包括:所述脚本执行单元还包括脚本运行查看子单元,配置用于当执行自动检测脚本时,查看自定义目录下的信号检测脚本是否在运行:
若正在运行,后台持续执行信号检测脚本,并将信号检测脚本输出的信号信息存放至日志;
若不在运行,执行结束命令,停止检测。
本发明的技术方案还包括:一种监控fuse进程的检测设备,所述设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如上述任一项所述的方法。
本发明的技术方案还包括:一种存储有计算机程序的计算机可读存储介质,该程序被处理器执行时实现如上述任一项所述的方法。
本发明提供的监控fuse进程的检测方法,通过信号检测脚本及自动检测脚本的配合,实现了监控fuse进程的检测。本发明提出的方法可检测所有发给icfs-fuse的信号和此节点上的kill信号,并将信号信息保存至日志中。上述方法有助于当fuse进程出现无故消失的情况时及时实现跟踪与定位,减少工作人员的工作时间,并提高工作人员的工作效率。
本发明提供的监控fuse进程的检测装置,通过上述多个单元的配合,可检测所有发给icfs-fuse的信号和此节点上的kill信号,并将信号信息保存至日志中,实现了对fuse进程的自动化检测,有助于当fuse进程出现无故消失的情况时及时实现跟踪与定位,减少工作人员的工作时间,并提高工作人员的工作效率。
本发明提供的监控fuse进程的检测设备,通过执行本发明提供的监控fuse进程的检测方法,实现了对fuse进程的自动化检测,有助于当fuse进程出现无故消失的情况时及时实现跟踪与定位,减少工作人员的工作时间,并提高工作人员的工作效率。
本发明提供的一种存储有计算机程序的计算机可读介质,该程序被处理器执行时实现本发明提供的监控fuse进程的检测方法,实现了对fuse进程的自动化检测,有助于当fuse进程出现无故消失的情况时及时实现跟踪与定位,减少工作人员的工作时间,并提高工作人员的工作效率。
此外,本发明设计原理可靠,具有广阔的应用前景。本发明与现有技术相比,具有突出的实质性特点和显著的进步,其实施的有益效果也是显而易见的。
附图说明
为了更清楚的说明本发明实施例,下面将实施例中所需要使用的附图做简单的介绍,显而易见的,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的监控fuse进程的自动检测方法的示意性流程图。
具体实施方式
下面结合本发明实施例中的附图,对发明实施例中的技术方案进行清楚完整的描述,显然,所描述的实施例仅仅为本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本发明保护范围。
为了使本技术领域的人员更好的理解本发明方案,下面结合附图和具体实施方式对本发明做进一步的详细说明。
本发明实施例提供一种监控fuse进程的检测方法,参照图1,包括:
s1、创建自定义目录;
s2、信号检测脚本;
s3、将上述信号检测脚本存储至自定义目录下,检测发送给icfs-fuse的信号和此节点上的kill信号,并输出信号信息;
s4、创建自动检测脚本;
s5、将上述自动检测脚本存储至可执行命令目录下;
s6、执行自动检测脚本,将信号检测脚本输出的信号信息存放至日志;
s7、查看日志中的信号信息。
进一步的,上述将上述信号检测脚本存储至自定义目录下,检测发送给icfs-fuse的信号(发送给fuse用户空间文件系统的信号)和此节点上的kill信号,并输出信号信息,还包括:将上述信号检测脚本存储至自定义目录下,检测发送给icfs-fuse的信号和此节点上的kill信号,判断并输出信号的pid(processidentifier),uid(useridentifier),sig_name(信号、进程名称)信息。
更进一步的,上述执行自动检测脚本,将信号检测脚本输出的信号信息存放至日志,包括:执行自动检测脚本,查看自定义目录下的信号检测脚本是否在运行:
若正在运行,后台持续执行信号检测脚本,并将信号检测脚本输出的信号信息存放至日志;
若不在运行,执行结束命令,停止检测。
本实施例所述的一种监控fuse进程的检测方法,以linux系统为例,具体包括以下步骤:
s1、创建自定义目录/etc/systemtap;
s2、创建信号检测脚本,命名为icfs_sigkill.stp,参考脚本如下:
s3、将上述信号检测脚本存储至自定义目录下,用于检测发送给icfs-fuse的信号和此节点上的kill信号,判断并输出信号的pid(processidentifier),uid(useridentifier),sig_name(信号、进程名称)信息;
s4、创建自动检测脚本,命名为icfs_sigkill_monitor.sh,参考脚本如下:
s5、将上述自动检测脚本存储至可执行命令目录/usr/bin下;
s6、执行自动检测脚本,查看自定义目录下的信号检测脚本是否在运行:
若正在运行,后台持续执行信号检测脚本,将信号检测脚本输出的信号pid(processidentifier),uid(useridentifier),sig_name(信号、进程名称)信息存放至/var/log/icfs/icfs_sigkill.log日志;
若不在运行,执行结束命令,停止检测;
s7、查看/var/log/icfs/icfs_sigkill.log日志中的信号pid(processidentifier),uid(useridentifier),sig_name(信号、进程名称)信息。
本发明实施例提供一种监控fuse进程的检测装置,包括:
自定义目录创建单元,配置用于创建自定义目录;
信号检测脚本创建单元,配置用于创建信号检测脚本;
第一指定存储单元,配置用于将所述信号检测脚本存储至自定义目录下,检测发送给icfs-fuse的信号和此节点上的kill信号,并输出信号信息;自动检测脚本创建单元,配置用于创建自动检测脚本;
第二指定存储单元,配置用于将所述自动检测脚本存储至可执行命令目录下;
脚本执行单元,配置用于执行自动检测脚本,将信号检测脚本输出的信号信息存放至日志;
信号信息查看单元,配置用于查看日志中的信号信息。
其中,上述第一指定存储单元还包括:信号信息判断子单元,配置用于当将所述信号检测脚本存储至自定义目录下,检测发送给icfs-fuse的信号和此节点上的kill信号时,判断并输出信号信息的pid,uid,sig_name信息。
上述脚本执行单元还包括脚本运行查看子单元,配置用于当执行自动检测脚本时,查看自定义目录下的信号检测脚本是否在运行:
若正在运行,后台持续执行信号检测脚本,并将信号检测脚本输出的信号信息存放至日志;
若不在运行,执行结束命令,停止检测。
本发明实施例提供一种监控fuse进程的检测设备,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行本发明实施例提供的方法。
本发明实施例提供一种存储有计算机程序的计算机可读存储介质,该程序被处理器执行时实现如本发明实施例提供的方法。
以上对本发明实施例所提供的一种监控fuse进程的检测方法、装置、设备及存储介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,因此描述的较为简单,相关会出参见方法部分说明即可。以上所述仅是本发明的优选实施方式,应当指出:对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。