CN111522703B - 监控访问请求的方法、设备和计算机程序产品 - Google Patents

监控访问请求的方法、设备和计算机程序产品 Download PDF

Info

Publication number
CN111522703B
CN111522703B CN201910105769.2A CN201910105769A CN111522703B CN 111522703 B CN111522703 B CN 111522703B CN 201910105769 A CN201910105769 A CN 201910105769A CN 111522703 B CN111522703 B CN 111522703B
Authority
CN
China
Prior art keywords
target
determining
address range
kernel log
kernel
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910105769.2A
Other languages
English (en)
Other versions
CN111522703A (zh
Inventor
张康
高伟
吴佳磊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
EMC Corp
Original Assignee
EMC IP Holding Co LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by EMC IP Holding Co LLC filed Critical EMC IP Holding Co LLC
Priority to CN201910105769.2A priority Critical patent/CN111522703B/zh
Priority to US16/457,089 priority patent/US10936386B2/en
Publication of CN111522703A publication Critical patent/CN111522703A/zh
Application granted granted Critical
Publication of CN111522703B publication Critical patent/CN111522703B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/545Interprogram communication where tasks reside in different layers, e.g. user- and kernel-space
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/0757Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0781Error filtering or prioritizing based on a policy defined by the user or on a policy defined by a hardware/software module, e.g. according to a severity level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3051Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/324Display of status information
    • G06F11/328Computer systems status display
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/75Indicating network or usage conditions on the user display
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/121Timestamp

Abstract

本公开的实施例涉及用于监控访问请求的方法、设备和计算机程序产品。该方法包括:获取指示访问请求所针对的目标存储空间的请求参数;基于请求参数,确定目标存储空间的目标地址范围;基于目标地址范围,在内核日志集中确定与访问请求相关联的目标内核日志,内核日志集记录在操作系统的内核中发生的操作;以及基于内核日志,确定访问请求的与目标内核日志对应的操作的信息。

Description

监控访问请求的方法、设备和计算机程序产品
技术领域
本公开的实施例涉及计算机领域,并且更具体地,涉及监控访问请求的方法、设备和计算机程序产品。
背景技术
随着计算机技术的发展,分布式计算越来越多地应用于各种行业。人们也越来越关注应用在分布式系统中的执行情况,然而,开发人员往往只能够获得访问请求在应用层级别的日志文件,而难以知晓应用在系统内核中被执行的信息。开发人员因而难以根据内核日志来排除可能的故障。因而,如何有效地监控应用在系统内核中的执行情况已经成为当前的一个关注焦点。
发明内容
本公开的实施例提供一种用于监控访问请求的方案。
根据本公开的第一方面,提出了一种用于监控访问请求的方法。该方法包括:获取指示访问请求所针对的目标存储空间的请求参数;基于请求参数,确定目标存储空间的目标地址范围;基于目标地址范围,在内核日志集中确定与访问请求相关联的目标内核日志,内核日志集记录在操作系统的内核中发生的操作;以及基于内核日志,确定访问请求的与目标内核日志对应的操作的信息。
根据本公开的第二方面,提出了一种用于监控访问请求的设备。该设备包括:至少一个处理单元;至少一个存储器,该至少一个存储器被耦合到该至少一个处理单元并且存储用于由该至少一个处理单元执行的指令,该指令当由该至少一个处理单元执行时,使得该设备执行动作,该动作包括:获取指示访问请求所针对的目标存储空间的请求参数;基于请求参数,确定目标存储空间的目标地址范围;基于目标地址范围,在内核日志集中确定与访问请求相关联的目标内核日志,内核日志集记录在操作系统的内核中发生的操作;以及基于内核日志,确定访问请求的与目标内核日志对应的操作的信息。
在本公开的第三方面,提供了一种计算机程序产品。该计算机程序产品被存储在非瞬态计算机存储介质中并且包括机器可执行指令,该机器可执行指令在设备中运行时使该设备执行根据本公开的第一方面所描述的方法的任意步骤。
提供发明内容部分是为了以简化的形式来介绍对概念的选择,它们在下文的具体实施方式中将被进一步描述。发明内容部分无意标识本公开的关键特征或必要特征,也无意限制本公开的范围。
附图说明
通过结合附图对本公开示例性实施例进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施例中,相同的参考标号通常代表相同部件。
图1图示了根据本公开实施例的示例内核的架构图;
图2图示了根据本公开实施例的示例应用监控系统的架构图;
图3图示了根据本公开实施例的监控应用请求的过程的流程图;
图4图示了根据本公开实施例的确定目标地址范围的示意图;以及
图5图示了可以用来实施本公开内容的实施例的示例设备的示意性框图。
具体实施方式
下面将参照附图更详细地描述本公开的优选实施例。虽然附图中显示了本公开的优选实施例,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
在本文中使用的术语“包括”及其变形表示开放性包括,即“包括但不限于”。除非特别申明,术语“或”表示“和/或”。术语“基于”表示“至少部分地基于”。术语“一个示例实施例”和“一个实施例”表示“至少一个示例实施例”。术语“另一实施例”表示“至少一个另外的实施例”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。
如上所述,在分布式计算系统中,可能会出现高延迟的访问请求。现有的监控系统(例如Zipkin和Zabbix)只能够获得应用程序日志或一些系统日志,而无法监控应用程序的特定请求从用户应用程序到系统内核空间的整个生命周期的过程。
然而,导致访问请求延迟变大的原因通常不仅包括应用层中的问题,还可能包括内核层中的问题。例如,用户应用程序调度缓慢、内核有太多进程、热盘、坏磁盘、网络故障等,这些内核层中的故障都有可能导致高延迟的访问请求。
图1示出了根据本公开实施例的示例内核100的架构图。如图1所示,内核100可以包括多个层级:虚拟文件系统层110、文件系统层120、页面缓存130、通用块层140、I/O调度层150、块设备驱动层160和块设备层170。例如,当接收到读取请求的系统调用时,该读取请求需要经过虚拟文件系统层110,虚拟文件系统层110会通过文件系统层120来确定目标数据是否位于页面缓存130中,从而决定是直接从页面缓存130中读取数据,还是需要从驱动器中读取数据。对于页面缓存130未命中的读取请求,内核使用映射来获取目标块上的物理地址。随后,内核通过通用块层140来执行读操作,以将针对目标数据的读操作转换为针对单位存储块的块读取请求。I/O调度层150可以接受I/O请求并尝试合并相邻的块读取请求,并且调用块设备驱动层160以在块设备层170上处理读取请求。
现有的监控系统(例如Zipkin)无法将内核中的内核日志关联到特定的访问请求,从而无法获得该请求在示例内核100的各个层中的执行信息。因此,现有的监控系统难以提供对于访问请求的完整生命周期的监控。
根据本公开的实施例,提供了一种用于部署机器学习模型的方案。在该方案中,可以获取指示访问请求所针对的目标存储空间的请求参数,并且该请求参数可以用于确定目标存储空间的目标地址范围。随后,基于目标地址范围,可以在内核日志集中确定与访问请求相关联的目标内核日志,其中内核日志集记录在操作系统的内核中发生的操作。随后,基于该内核日志可以确定访问请求的与目标内核日志对应的操作的信息。通过利用请求参数来标识与访问请求对应的内核日志,从而获取该访问请求在内核中的执行详情,从而为分析该访问请求在内核中的执行是否发生异常提供了基础。
以下参考附图来说明本公开的基本原理和若干示例实现。
图2图示了根据本公开实施例的示例监控系统200的架构图。如图2所示,监控系统200可以包括用于执行应用的一个或多个节点220。节点220可以收集与特定访问请求相关联的应用日志222、内核日志224、系统活动情况报告(Sar)日志226、套接字统计(SocketStatistics,SS)日志228和其他日志230。
应用日志222是指与访问请求在应用层级的各种操作(例如,请求的创建、请求的调度、请求的系统调用和请求的销毁等)相关联的日志信息。对于访问请求的整个生命周期而言,应用日志222仅能够记录访问请求的系统调用的整体情况,而无法获取访问请求在执行系统调用时内核中各阶段的具体信息。单纯的应用日志222无法有效地反映内核中可能存在的问题。
在一些实施例中,节点220可以通过常规的监控方法以基于访问请求的标识(例如,访问请求的ID),从而基于该标识来获取访问请求在应用层级的日志信息,并向这些日志信息添加对应的时间戳。应当理解,可以采用任何合适的监控技术来获取与访问请求相对应的应用日志222,在此不再详叙。
Sar日志是指用来表征系统的当前运行状态的日志信息,例如,文件的读写情况、系统调用的使用情况、串口、CPU效率、内存使用状况、进程活动及IPC有关的活动等。SS日志是指与系统网络状态相关的日志信息。其他日志230例如可以包括系统错误日志、安全日志等。应当理解,可以使用任何合适的技术来获取节点的Sar日志226、SS日志228和其他日志230,在此不再详叙。
内核日志224是指与访问请求在内核中的操作相关联的日志信息,下文将结合图3至图4来详细描述确定与访问请求相对应的内核日志224的过程。图3示出了根据本公开实施例的监控应用请求的过程300的流程图。过程300可以由图2的监控系统200来实施。为了方便讨论,将结合图2来描述过程300。
在框302,监控系统200获取指示访问请求所针对的目标存储空间的请求参数。在一些实施例中,对于在节点220中执行的特定访问请求,监控系统200可以获取用于指示该访问请求所针对的目标存储空间的请求参数。
具体地,在一些实施例中,监控系统200可以获取访问请求的获取访问请求所针对的文件的文件标识、目标存储空间在文件中的偏移量和目标存储空间的大小。例如,对于执行将特定数据写入到目标存储空间的写入请求,该访问请求在应用级别可以被表示为:write(fd,offset,buffer,size),其中fd表示该写入请求所针对的文件的文件标识,offset表示目标存储空间在该文件内的偏移量,buffer表示待写入的数据,size表示待写入数据的大小(即,目标存储空间的大小)。
在框304,基于请求参数,监控系统200确定目标存储空间的目标地址范围。图4示出了根据本公开实施例的确定目标地址范围的示意图400。如图4所示,访问请求要写入的数据在用户空间中可以被表示为数据段412。如上文所述,该访问请求针对的目标存储空间可以通过文件标识、偏移量和大小来指示。
在一些实施例中,具体地,首先基于文件标识,监控系统200可以获取与文件标识相对应的文件地址范围。例如,如图4所示,监控系统200可以基于文件标识来确定与文件标识相对应的文件地址范围422。在一些实施例中,节点220的文件系统可以维护索引节点(inode)以存储文件的元信息,元信息可以包括但不限于:文件的字节数、文件的地址空间、文件的读写权限等。在一些实施例中,监控系统200可以基于文件标识来确定对应的索引节点,并获取索引节点中所记录的地址空间信息,从而确定与该文件标识指示的文件在内核空间420所对应的文件地址范围422。
在一些实施例中,监控系统200随后可以基于偏移和大小而从文件地址范围中确定目标地址范围。继续图4的示例,在获取与文件标识相对应的文件地址范围422后,监控系统200可以通过将文件地址范围422的起始地址加上偏移量来获得目标地址范围的起始地址424,并将起始地址424加上目标存储空间的大小以获取目标地址范围的结束地址426。
继续参考图3,在框306,基于目标地址范围,监控系统200在内核日志集中确定与访问请求相关联的目标内核日志,其中内核日志集记录在操作系统的内核中发生的操作。
在一些实施例中,具体地,监控系统200可以获取与内核日志集中的内核日志(为了方便描述,下文中称为第一内核日志)相关联的地址范围(为了方便描述,下文中称为第一地址范围)。如上文所述,内核100可以在通用块层140将把访问请求分解为多个针对单个存储块的访问请求。在一些实施例中,单条内核日志可以记录与该日志所对应操作所针对的单个块的地址范围。因此,对于内核日志集中的第一内核日志,监控系统200可以从内核日志所记录的信息中获取与该内核日志相对应的存储块的第一地址范围。
在一些实施例中,随后,响应于第一物理地址范围在目标地址范围内,监控系统200可以将第一内核日志确定为目标内核日志。在一些实施例中,在确定第一地址范围后,监控系统200可以将第一地址范围与先前确定的访问请求所针对的目标地址范围进行比较。当第一地址范围在该目标地址范围内时,监控系统200可以将第一内核日志确定为是针对与该访问请求相关联的操作。基于这样的方式,监控系统200可以从内核日志集中确定与内核中不同层的操作所对应的不同的内核日志。
在框308,基于内核日志,监控系统200确定访问请求的与目标内核日志对应的操作的信息。在一些实施例中,在确定与访问请求相对应的内核日志后,监控系统200可以基于内核日志来获取与对应的操作相关联的信息。在一些实施例中,监控系统200可以从内核日志中获取的信息包括以下中的至少一项:操作的状态、操作的时间戳、和操作的内容。例如,监控系统200可以获取与内核日志相对应的时间戳,并基于相邻两个操作的时间戳来确定该操作所消耗的时间。例如,I/O调度层150的耗时可以通过与块设备驱动层160对应的事件的内核日志时间戳减去与I/O调度层150对应的事件的内核日志时间戳的差值而被确定。
基于以上的方式,本公开的方案可以建立应用的访问请求与内核日志之间的映射,从而获取该访问请求在内核中的各操作相关联的信息,进而实现对访问请求在内核中各层级的操作细节的追踪,为全面地分析应用提供了基础。
继续参考图2,在一些实施例中,监控系统200在收集完节点220中与访问请求相关联的应用日志222、内核日志224、Sar日志226、SS日志228和其他日志230后,节点220可以将以上日志信息发送到获取模块210。在一些实施例中,获取模块210可以位于与节点220不同的计算设备中。备选地,获取模块也可以位于同一节点220中。
获取模块210在从节点220接收到包含内核日志224的多种日志信息后,获取模块210可以将以上日志信息存储到数据库204中。在一些实施例中,获取模块210可以接收来自不同节点220的日志信息,并进行汇总,以存储到数据库204中。通过将日志文件存储到数据库204中,监控系统200可以避免需要在可能的多个不同节点220查看日志信息,从而提高了监控分布式应用的效率。
在一些实施例中,监控系统200中的分析模块206可以从数据库204中获取与访问请求相对应的信息。在一些实施例中,分析模块206可以基于所获取的信息来确定操作是否发生异常。例如,分析模块206可以基于应用日志222或者内核日志224中日志的时间戳来确定访问请求在各阶段的耗时。在一些实施例中,监控系统200可以为每个阶段设置预定的耗时阈值,分析模块206可以将通过日志确定的耗时与预定的耗时阈值进行比较,以确定对应的阶段是否发生异常。例如,当基于内核日志确定I/O调度层的耗时超过预定的阈值时,分析模块206可以认定当前节点的请求量较大。
在一些实施例中,分析模块206可以利用适当的大数据分析引擎来确定是否发生异常。在一些实施例中,分析模块206也可以利用机器学习等方法来基于日志确定访问请求的各阶段是否发生异常。应当理解,在获取对应的日志信息后,可以采用任何适合的方式来确定访问请求在各阶段的操作是否发生了异常,在此不再详叙。
在一些实施例中,响应于确定操作异常,监控系统200可以基于异常的类型来执行与该类型对应的至少一项预定动作。在一些实施例中,监控系统200可以为不同类型的异常设置不同类型的策略,例如,对于I/O调度层150的异常,监控系统200可以设置该节点的请求数量的策略,从而避免该节点负载过重。例如,对于块设备层170的异常,监控系统200可以检测是否出现坏的驱动器。例如,当检测到I/O调度层150的异常时,监控系统200例如可以通过控制模块208来减少针对该节点的请求数量,从而平衡各节点之间的负载,避免由于单个节点的负载过重导致的性能降低。
在一些实施例中,响应于确定所述操作异常,监控系统200可以提供所述操作发生异常的指示。在一些实施例中,当监控系统200基于日志信息监测到出现操作异常时,监控系统200可以通过用户交互模块202向用户发送操作发生异常的指示。在一些实施例中,用户交互模块202可以通过文本、视频、音频、震动等方式来向用户发送对应的提示。例如,当监控系统200确定块设备层170发生异常时,监控系统200可以通过交互模块202向用户发出确认是否出现驱动器故障的指示。用户在接收到该指示后,可以确认是否发生驱动器故障,从而及时地更换可能存在的坏驱动器。
在一些实施例中,监控系统200还可以提供从日志确定的信息的可视化显示。例如,监控系统200可以通过用户交互模块202来向用户展示访问请求在内核100的各个阶段耗时的图形化表示,以使得用户能够直观地了解访问请求在内核中各阶段的耗时分布,从而可以协助用户更好地监测是否发生故障,或者对模型进行优化。
尽管在图2中,为了描述的目的,获取模块210、数据库204、分析模块206、控制模块208和用户交互模块202被示出在于节点220不同的框中。应当理解,这些模块可以在与节点220相同或不同的计算设备中被实施,本公开的实施例在该方面不做限制。
图5示出了可以用来实施本公开内容的实施例的示例设备500的示意性框图。例如,如图1所示的节点220可以由设备500来实施。如图所示,设备500包括中央处理单元(CPU)501,其可以根据存储在只读存储器(ROM)502中的计算机程序指令或者从存储单元508加载到随机访问存储器(RAM)503中的计算机程序指令,来执行各种适当的动作和处理。在RAM 503中,还可存储设备500操作所需的各种程序和数据。CPU 501、ROM 502以及RAM503通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线504。
设备500中的多个部件连接至I/O接口505,包括:输入单元506,例如键盘、鼠标等;输出单元507,例如各种类型的显示器、扬声器等;存储单元508,例如磁盘、光盘等;以及通信单元509,例如网卡、调制解调器、无线通信收发机等。通信单元509允许设备500通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
上文所描述的各个过程和处理,例如方法300,可由处理单元501执行。例如,在一些实施例中,方法300可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元508。在一些实施例中,计算机程序的部分或者全部可以经由ROM 502和/或通信单元509而被载入和/或安装到设备500上。当计算机程序被加载到RAM 503并由CPU 501执行时,可以执行上文描述的方法300的一个或多个动作。
本公开可以是方法、装置、系统和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于执行本公开的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是--但不限于--电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。
这里参照根据本公开实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理单元,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理单元执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本公开的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本公开的各实施方式,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施方式。在不偏离所说明的各实施方式的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施方式的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其他普通技术人员能理解本文披露的各实施方式。

Claims (20)

1.一种监控访问请求的方法,包括:
获取指示访问请求所针对的目标存储空间的请求参数;
基于所述请求参数,确定所述目标存储空间的目标地址范围;
基于所述目标地址范围,在内核日志集中确定与所述访问请求相关联的目标内核日志,所述内核日志集记录在操作系统的内核中发生的操作;
基于所述目标内核日志,确定所述访问请求的与所述目标内核日志对应的操作的信息,其中所述信息包括所述操作的时间戳;
基于所述时间戳,确定在所述操作中是否发生异常;以及
响应于确定发生所述异常,基于所述操作的所述异常的类型,设置至少一个策略以减少由节点的负载过重引起的性能降低。
2.根据权利要求1所述的方法,其中获取所述请求参数包括:
获取所述访问请求所针对的文件的文件标识、所述目标存储空间在所述文件中的偏移量和所述目标存储空间的大小。
3.根据权利要求2所述的方法,其中确定所述目标地址范围包括:
基于所述文件标识,获取与所述文件相对应的文件地址范围;以及
基于所述偏移和所述大小,从所述文件地址范围中确定所述目标地址范围。
4.根据权利要求1所述的方法,其中确定所述目标内核日志包括:
获取与所述内核日志集中的第一内核日志相关联的第一地址范围;以及
响应于所述第一地址范围在所述目标地址范围内,将所述第一内核日志确定为所述目标内核日志。
5.根据权利要求1所述的方法,其中所述信息包括以下中的至少一项:所述操作的状态和所述操作的内容。
6.根据权利要求1所述的方法,还包括:
响应于确定发生所述异常,提供所述操作发生异常的指示。
7.根据权利要求1所述的方法,还包括:
提供所述时间戳的可视化显示。
8.一种用于监控访问请求的设备,包括:
至少一个处理单元;
至少一个存储器,所述至少一个存储器被耦合到所述至少一个处理单元并且存储用于由所述至少一个处理单元执行的指令,所述指令当由所述至少一个处理单元执行时,使得所述设备执行动作,所述动作包括:
获取指示访问请求所针对的目标存储空间的请求参数;
基于所述请求参数,确定所述目标存储空间的目标地址范围;
基于所述目标地址范围,在内核日志集中确定与所述访问请求相关联的目标内核日志,所述内核日志集记录在操作系统的内核中发生的操作;
基于所述目标内核日志,确定所述访问请求的与所述目标内核日志对应的操作的信息,其中所述信息包括所述操作的时间戳;
基于所述时间戳,确定在所述操作中是否发生异常;以及
响应于确定发生所述异常,设置至少一个策略以减少由节点的负载过重引起的性能降低。
9.根据权利要求8所述的设备,其中获取所述请求参数包括:
获取所述访问请求所针对的文件的文件标识、所述目标存储空间在所述文件中的偏移量和所述目标存储空间的大小。
10.根据权利要求9所述的设备,其中确定所述目标地址范围包括:
基于所述文件标识,获取与所述文件相对应的文件地址范围;以及
基于所述偏移和所述大小,从所述文件地址范围中确定所述目标地址范围。
11.根据权利要求8所述的设备,其中确定所述目标内核日志包括:
获取与所述内核日志集中的第一内核日志相关联的第一地址范围;以及
响应于所述第一地址范围在所述目标地址范围内,将所述第一内核日志确定为所述目标内核日志。
12.根据权利要求8所述的设备,其中所述信息包括以下中的至少一项:所述操作的状态和所述操作的内容。
13.根据权利要求8所述的设备,所述动作还包括:
响应于确定发生所述异常,基于所述操作的所述异常的类型,执行与所述类型对应的至少一项预定动作。
14.根据权利要求8所述的设备,所述动作还包括:
提供所述时间戳的可视化显示。
15.一种非瞬态计算机存储介质,其上存储有机器可执行指令,所述机器可执行指令在设备中运行时使所述设备执行操作,所述操作包括:
获取指示访问请求所针对的目标存储空间的请求参数;
基于所述请求参数,确定所述目标存储空间的目标地址范围;
基于所述目标地址范围,在内核日志集中确定与所述访问请求相关联的目标内核日志,所述内核日志集记录在操作系统的内核中发生的操作;
基于所述目标内核日志,确定所述访问请求的与所述目标内核日志对应的操作的信息,其中所述信息包括所述操作的时间戳;
基于所述时间戳,确定在所述操作中发生异常;
提供针对在所述操作中发生所述异常的指示;以及
基于所述操作的所述异常的类型,设置至少一个策略以避免由节点的负载过重引起的性能降低。
16.根据权利要求15所述的非瞬态计算机存储介质,其中获取所述请求参数包括:
获取所述访问请求所针对的文件的文件标识、所述目标存储空间在所述文件中的偏移量和所述目标存储空间的大小,以及
其中确定所述目标地址范围包括:
基于所述文件标识,获取与所述文件相对应的文件地址范围;以及
基于所述偏移和所述大小,从所述文件地址范围中确定所述目标地址范围。
17.根据权利要求15所述的非瞬态计算机存储介质,其中确定所述目标内核日志包括:
获取与所述内核日志集中的第一内核日志相关联的第一地址范围;以及
响应于所述第一地址范围在所述目标地址范围内,将所述第一内核日志确定为所述目标内核日志。
18.根据权利要求15所述的非瞬态计算机存储介质,其中执行操作包括:
基于所述异常针对块设备层,检测是否出现坏的驱动器。
19.根据权利要求15所述的非瞬态计算机存储介质,其中所述操作还包括:
经由用户交互模块向用户设备发送针对在所述操作中发生所述异常的指示。
20.根据权利要求15所述的非瞬态计算机存储介质,其中所述指示的所述提供包括提供从所述目标内核日志确定的日志信息的视觉显示。
CN201910105769.2A 2019-02-01 2019-02-01 监控访问请求的方法、设备和计算机程序产品 Active CN111522703B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201910105769.2A CN111522703B (zh) 2019-02-01 2019-02-01 监控访问请求的方法、设备和计算机程序产品
US16/457,089 US10936386B2 (en) 2019-02-01 2019-06-28 Method, device and computer program product for monitoring access request

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910105769.2A CN111522703B (zh) 2019-02-01 2019-02-01 监控访问请求的方法、设备和计算机程序产品

Publications (2)

Publication Number Publication Date
CN111522703A CN111522703A (zh) 2020-08-11
CN111522703B true CN111522703B (zh) 2023-08-11

Family

ID=71836492

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910105769.2A Active CN111522703B (zh) 2019-02-01 2019-02-01 监控访问请求的方法、设备和计算机程序产品

Country Status (2)

Country Link
US (1) US10936386B2 (zh)
CN (1) CN111522703B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022050219A (ja) * 2020-09-17 2022-03-30 富士フイルムビジネスイノベーション株式会社 情報処理装置及び情報処理プログラム
CN112631913B (zh) * 2020-12-23 2024-02-02 平安银行股份有限公司 应用程序的运行故障监控方法、装置、设备和存储介质
CN113312321A (zh) * 2021-05-31 2021-08-27 中国民航信息网络股份有限公司 一种业务量的异常监测方法及相关设备
CN113986788A (zh) * 2021-10-28 2022-01-28 昆仑芯(北京)科技有限公司 数据处理方法和装置、芯片、电子设备及介质
CN114844772A (zh) * 2022-05-06 2022-08-02 上海欣诺通信技术股份有限公司 一种基于Zabbix监控平台的管理方法及系统
CN117424764B (zh) * 2023-12-19 2024-02-23 中关村科学城城市大脑股份有限公司 系统资源访问请求信息处理方法、装置、电子设备和介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101582087A (zh) * 2009-06-16 2009-11-18 恒生电子股份有限公司 一种日志提取方法及装置
WO2016082196A1 (zh) * 2014-11-28 2016-06-02 华为技术有限公司 文件访问方法、装置及存储设备

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100636268B1 (ko) * 2004-01-27 2006-10-19 삼성전자주식회사 임베디드 멀티태스크 운영체제를 사용하는 시스템에서운영체제의 소프트웨어 모듈 상태 감시 장치 및 그 방법
US7424666B2 (en) * 2005-09-26 2008-09-09 Intel Corporation Method and apparatus to detect/manage faults in a system
US9544638B2 (en) * 2006-04-17 2017-01-10 Broadcom Corporation Method for reconstructing system time clock (STC) without carrying PCR
CN103403688A (zh) * 2011-02-21 2013-11-20 富士通株式会社 处理器管理方法
WO2012148293A1 (en) * 2011-04-28 2012-11-01 Google Inc. Using feedback reports to determine performance of an application in a geographic location
US9027108B2 (en) * 2012-05-23 2015-05-05 Box, Inc. Systems and methods for secure file portability between mobile applications on a mobile device
US9231595B2 (en) * 2013-06-12 2016-01-05 International Business Machines Corporation Filtering event log entries
US9411539B2 (en) * 2014-09-24 2016-08-09 International Business Machines Corporation Providing access information to a storage controller to determine a storage tier for storing data
US10432500B2 (en) * 2015-11-09 2019-10-01 Atmel Corporation Debugger for wireless sensor networks
US10572510B2 (en) * 2015-12-21 2020-02-25 Sap Se Distributed database transaction protocol
US10412536B2 (en) * 2016-06-23 2019-09-10 Minutepros.Com Corp. Providing secure service provider reverse auctions using certification identifiers, symmetric encryption keys and encrypted uniform resource locators
US10534257B2 (en) * 2017-05-01 2020-01-14 Lam Research Corporation Layout pattern proximity correction through edge placement error prediction

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101582087A (zh) * 2009-06-16 2009-11-18 恒生电子股份有限公司 一种日志提取方法及装置
WO2016082196A1 (zh) * 2014-11-28 2016-06-02 华为技术有限公司 文件访问方法、装置及存储设备

Also Published As

Publication number Publication date
CN111522703A (zh) 2020-08-11
US10936386B2 (en) 2021-03-02
US20200250019A1 (en) 2020-08-06

Similar Documents

Publication Publication Date Title
CN111522703B (zh) 监控访问请求的方法、设备和计算机程序产品
CN107248927B (zh) 故障定位模型的生成方法、故障定位方法和装置
US11023355B2 (en) Dynamic tracing using ranking and rating
US10489232B1 (en) Data center diagnostic information
US11093349B2 (en) System and method for reactive log spooling
JP5008006B2 (ja) シンプトンの検証を可能にするためのコンピュータ・システム、方法及びコンピュータ・プログラム
CN105468433A (zh) 一种虚拟机磁盘数据的获取方法及系统
CN110737639A (zh) 审计日志方法、装置、计算机设备及存储介质
US8943364B2 (en) Appliance for storing, managing and analyzing problem determination artifacts
US10262133B1 (en) System and method for contextually analyzing potential cyber security threats
US9021078B2 (en) Management method and management system
CN112988433A (zh) 用于故障管理的方法、设备和计算机程序产品
CN111309570A (zh) 压力测试方法、介质、装置和计算设备
JP5240709B2 (ja) シンプトンを評価するためのコンピュータ・システム、並びにその方法及びコンピュータ・プログラム
CN110764962A (zh) 日志处理方法和装置
US9348721B2 (en) Diagnosing entities associated with software components
US20160050135A1 (en) Real-time measurement of user interface performance in a remote desktop environment
US10365998B2 (en) Modifying monitoring configurations that support analytics programs
CN111435327B (zh) 一种日志记录的处理方法、装置及系统
WO2019241199A1 (en) System and method for predictive maintenance of networked devices
US20230025081A1 (en) Model training method, failure determining method, electronic device, and program product
CN114610567A (zh) 容器监控方法、网络设备及存储介质
CN111046007B (zh) 管理存储系统的方法、装置和计算机程序产品
US10430307B2 (en) In-line announcement of impending critical events within a distributed storage environment
CN112732999A (zh) 静态容灾方法、系统、电子设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant