掌桥专利:专业的专利平台
掌桥专利
首页

技术领域

本公开涉及计算机技术领域,尤其涉及一种日志监控方法、装置、电子设备和存储介质。

背景技术

内容分发网络(content delivery network,简称CDN)业务场景下,大量的网民访问和CDN平台本身会产生海量日志,这些日志涉及客户计费、统计分析、质量监控等多个方面,且需要依赖大数据技术从全国各个CDN边缘节点采集并传输到大数据中心,以便进一步计算分析存储,在采集和传输的过程中,需要对日志进行监控。通过对日志的监控,可以及时发现系统中的异常情况和错误;可以捕获潜在的安全威胁、入侵行为或非法访问等,通过对日志进行实时监控和分析,可以及时采取行动,增强系统的安全性,保护敏感数据和用户隐私;可以提供有关系统的性能信息,包括响应时间、吞吐量、资源利用率等,通过分析这些日志数据,可以发现性能瓶颈并进行优化;通过分析数据传输、存储需求等日志信息,可以预测未来的容量需求,进行合理的容量规划,确保系统资源充足,避免因容量不足而导致的系统崩溃或性能下降;通过对日志中的数据进行聚合、分析和可视化,可以获取关键指标、趋势信息和用户行为等数据,为业务决策、运营优化等提供支持。因此,对日志进行监控具有重要意义。

目前,在对日志进行监控的过程中,通常采用对日志边缘采集程序进行监控,但该方法无法发现日志本身的传输状态,导致对日志的监控的准确性较低。因此,亟需一种具有较高监控准确性的日志监控方法、装置、电子设备和存储介质。

发明内容

本公开提供了一种日志监控方法、装置、电子设备和存储介质。

根据本公开的第一方面,提供了一种日志监控方法。该方法包括:

按照预设监控指标对目标组件的日志进行采集,得到监控数据;所述目标组件包括日志数据源、日志采集器、日志传输器和日志接收器;

根据所述监控数据对所述目标组件的日志传输状态进行判定,得到对应判定结果;

若所述判定结果为异常,则进行告警。

进一步地,所述预设监控指标至少包括下列中的至少一个:

采集时间、采集时长、采集间隔、采集的主机名称、采集的主机IP、采集的日志类型、采集实例、采集的阶段、采集的日志大小、采集的日志类型和采集的日志行数。

进一步地,所述方法还包括:

在根据所述监控数据对所述目标组件的日志传输状态进行判定之前,将所述监控数据通过HTTPS POST方式上报至监控存储中心。

进一步地,所述根据所述监控数据对所述目标组件的日志传输状态进行判定,包括:

获取所述日志数据源的监控数据中的第一日志行数、所述日志采集器的监控数据中的第二日志行数和所述日志接收器的监控数据中的第三日志行数;

根据所述第一日志行数、第二日志行数和第三日志行数的关系,判定所述日志数据源、日志采集器和日志接收器的日志传输状态。

进一步地,所述根据所述第一日志行数、第二日志行数和第三日志行数的关系,判定所述日志数据源、日志采集器和日志接收器的日志传输状态,包括:

若所述第一日志行数>第二日志行数=第三日志行数,则判定所述日志采集器的日志传输状态为异常;

若所述第一日志行数=第二日志行数>第三日志行数,则判定所述日志接收器的日志传输状态为异常。

进一步地,所述方法还包括:

在判定所述日志数据源的日志传输状态为异常后,获取所述日志数据源的监控数据中的各采集的主机名称;

对与所述采集的主机名称对应的主机进行检测,得到检测结果。

进一步地,所述根据所述监控数据对所述目标组件的日志传输状态进行判定,得到对应判定结果,包括:

获取所述日志传感器的监控数据中的采集时长;

若所述采集时长大于预设时长,则对所述日志传感器的日志传输状态进行判定的判定结果为异常。

根据本公开的第二方面,提供了一种日志监控装置。该装置包括:

采集模块,用于按照预设监控指标对目标组件的日志进行采集,得到监控数据;所述目标组件包括日志数据源、日志采集器、日志传输器和日志接收器;

判定模块,用于根据所述监控数据对所述目标组件的日志传输状态进行判定,得到对应判定结果;

告警模块,用于若所述判定结果为异常,则进行告警。

根据本公开的第三方面,提供了一种电子设备。该电子设备包括:存储器和处理器,所述存储器上存储有计算机程序,所述处理器执行所述程序时实现所述方法。

根据本公开的第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现所述方法。

本公开通过按照预设监控指标对目标组件的日志进行采集,得到监控数据;所述目标组件包括日志数据源、日志采集器、日志传输器和日志接收器;根据所述监控数据对所述目标组件的日志传输状态进行判定,得到对应判定结果;若所述判定结果为异常,则进行告警,实现对日志传输过程中的全链路进行全方位的监控,提高了对日志的监控的准确性。

应当理解,发明内容部分中所描述的内容并非旨在限定本公开实施例的关键或重要特征,亦非用于限制本公开的范围。本公开的其它特征将通过以下的描述变得容易理解。

附图说明

结合附图并参考以下详细说明,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。附图用于更好地理解本方案,不构成对本公开的限定。在附图中,相同或相似的附图标记表示相同或相似的元素,其中:

图1示出了根据本公开实施例的日志监控方法的流程图;

图2示出了根据本公开实施例的日志监控装置的框图;

图3示出了能够实施本公开实施例的示例性电子设备的方框图。

具体实施方式

为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的全部其他实施例,都属于本公开保护的范围。

另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。

图1示出了根据本公开实施例的日志监控方法100的流程图,该方法100包括:

S101,按照预设监控指标对目标组件的日志进行采集,得到监控数据;所述目标组件包括日志数据源、日志采集器、日志传输器和日志接收器。

在一些实施例中,所述日志数据源可以为操作系统、应用程序或网络设备(如路由器、防火墙或交换机)。

在一些实施例中,所述日志采集器可以为内容分发网络业务场景下的边缘采集节点或边缘采集程序。

在一些实施例中,所述日志接收器可以为数据中心。

在一些实施例中,所述预设监控指标可以为采集时间、采集时长(如1毫秒)、采集间隔(如60秒)、采集的主机名称、采集的主机IP、采集的日志类型(如计费日志或访问日志)、采集实例、采集的阶段(如输入阶段、处理阶段和输出阶段)、采集的日志大小、采集的日志类型或采集的日志行数或上述任意指标的任意组合。

根据本公开实施例,通过对日志数据源、日志采集器、日志传输器和日志接收器的日志进行采集,实现日志传输的全链路监控,可以追踪和记录日志传输中的每一步骤和环节,提高对日志的监控的准确性,如果出现日志丢失、传输延迟或传输失败等问题,可以根据监控数据进行故障定位和排除,快速找出导致问题的原因,并采取相应的纠正措施。

S102,根据所述监控数据对所述目标组件的日志传输状态进行判定,得到对应判定结果。

在一些实施例中,所述方法还包括:

在根据所述监控数据对所述目标组件的日志传输状态进行判定之前,将所述监控数据通过HTTPS POST方式上报至监控存储中心。

在一些实施例中,所述监控数据的格式可以为JSON格式。

在一些实施例中,在将所述监控数据通过HTTPS POST方式上报至监控存储中心时的请求url规范可以为

在一些实施例中,所述在将所述监控数据通过HTTPS POST方式上报至监控存储中心时的请求体规范可以为[{"time":1693464888,"interval":60,"host":"HOST1","ip":"IP1","type":"ACCE SSLOG","instance":"INSTANCE1","componet":"A","stage":"I","size":10240,"cout":10,"cost":1000},{"time":1693464888,"interval":60,"host":"HOST1","ip":"IP1","type":"ACCESSLOG","instance":"INSTANCE1","componet":"A","stag e":"O","size":10240,"cout":10,"cost":5000}]。

根据本公开实施例,HTTPS协议提供了更高的数据安全性,通过对数据进行加密和认证保证监控数据在传输过程中不会被泄露、篡改或冒充,因此,通过使用HTTPS POST方式上报监控数据可以保障监控数据的完整性和安全性,进而提高对日志的监控的准确性;通过HTTPS POST方式上报监控数据,可以实现实时上报监控数据到监控存储中心;HTTPSPOST方式是一种常见的Web API调用方式,API使用简单方便,通常支持大多数编程语言和开发框架,因此,使用HTTPS POST方式上报监控数据可以大大简化与监控存储中心的集成和使用流程。

在一些实施例中,所述根据所述监控数据对所述目标组件的日志传输状态进行判定,包括:获取所述日志数据源的监控数据中的第一日志行数、所述日志采集器的监控数据中的第二日志行数和所述日志接收器的监控数据中的第三日志行数;根据所述第一日志行数、第二日志行数和第三日志行数的关系,判定所述日志数据源、日志采集器和日志接收器的日志传输状态。

根据本公开实施例,通过监控数据的比较和分析,可以实时了解目标组件的日志传输情况,从而及时发现潜在的问题和异常情况,例如,如果第一日志行数、第二日志行数和第三日志行数保持一致,那么可以判断日志传输正常;如果某个组件的日志行数与其他组件相差较大,意味着该组件存在故障或传输延迟等问题,提高了对日志传输状态的监控和诊断能力,有助于维护人员及时发现和解决日志传输相关的问题,提高系统的可靠性和稳定性,进而提高对日志监控的准确性。

在一些实施例中,所述根据所述第一日志行数、第二日志行数和第三日志行数的关系,判定所述日志数据源、日志采集器和日志接收器的日志传输状态,包括:若所述第一日志行数>第二日志行数=第三日志行数,则判定所述日志采集器的日志传输状态为异常;若所述第一日志行数=第二日志行数>第三日志行数,则判定所述日志接收器的日志传输状态为异常。例如,可以通过key(预设监控指标)的形式表达获取到的监控数据,即对所述日志数据源采集的监控数据可以为key(time,type,componet,stage,count)→value(t

在一些实施例中,所述方法还包括:在判定所述日志数据源的日志传输状态为异常后,获取所述日志数据源的监控数据中的各采集的主机名称;对与所述采集的主机名称对应的主机进行检测,得到检测结果。例如,利用获取到的主机名称,针对相应主机进行检测操作,所述操作可以包括网络连通性测试、性能评估、服务可用性检查等,以验证主机的运行状态和各项指标是否正常。

根据本公开实施例,通过判定日志数据源的日志传输状态为异常,获取数据源监控数据中的采集主机名称,并对这些主机进行检测,可以准确地确定出现问题的主机,有助于快速定位问题,提高故障排除的效率;通过对采集的主机进行网络连通性测试、性能评估、服务可用性检查等操作,可以获取主机的运行状态和各项指标的信息,可以全面了解主机的工作情况,包括网络连接是否正常、性能是否符合要求、服务是否可用等;根据检测结果,可以得到主机的健康状况评估;通过对异常主机进行检测和及时处理,可以避免故障在整个系统中扩大,并及时修复问题,从而提高系统的稳定性和可靠性。

在一些实施例中,所述根据所述监控数据对所述目标组件的日志传输状态进行判定,得到对应判定结果,包括:获取所述日志传感器的监控数据中的采集时长;若所述采集时长大于预设时长,则对所述日志传感器的日志传输状态进行判定的判定结果为异常。

根据本公开实施例,通过监控数据中的日志传感器信息,可以获取该传感器的采集时长,采集时长表示日志传感器采集数据的时间范围,通过获取采集时长,可以了解该传感器的工作情况和运行持续时间;当采集时长大于预设时长时,判定结果为异常,有助于快速发现日志传输状态异常,并采取相应措施进行处理。

S103,若所述判定结果为异常,则进行告警。

在一些实施例中,所述若所述判定结果为异常,则进行告警可以通过以下步骤进行:在判定结果为异常的情况下,需要触发告警机制,所述告警机制可以通过以下方式实现:

将所述判定结果为异常的异常信息发送给相关人员或团队,例如可以通过邮件、短信、即时消息等方式发送告警通知,以便及时处理异常情况;或将异常信息发送给集成了报警系统的监控平台或工具,报警系统可以根据预设的规则和策略,自动触发告警并通知相关人员;或将异常信息记录在日志中,以供后续检索和分析,可以使用专业的日志管理工具或平台,对异常事件进行监控和跟踪;根据异常的严重程度和紧急程度,定义不同的告警级别和优先级,例如,可以设置高、中、低三个级别,并针对不同级别的告警采取不同的响应措施;为异常告警定义明确的处理流程和责任人,包括告警接收、确认、分类、指派和解决等环节,以确保异常情况能够被及时处理和解决。

根据本公开实施例,通过按照预设监控指标对目标组件的日志进行采集,得到监控数据;所述目标组件包括日志数据源、日志采集器、日志传输器和日志接收器;根据所述监控数据对所述目标组件的日志传输状态进行判定,得到对应判定结果;若所述判定结果为异常,则进行告警,实现对日志传输过程中的全链路进行全方位的监控,提高了对日志的监控的准确性。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本公开并不受所描述的动作顺序的限制,因为依据本公开,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作和模块并不一定是本公开所必须的。

以上是关于方法实施例的介绍,以下通过装置实施例,对本公开所述方案进行进一步说明。

图2示出了根据本公开实施例的日志监控装置200的方框图,该装置200包括:

采集模块201,用于按照预设监控指标对目标组件的日志进行采集,得到监控数据;所述目标组件包括日志数据源、日志采集器、日志传输器和日志接收器;

判定模块202,用于根据所述监控数据对所述目标组件的日志传输状态进行判定,得到对应判定结果;

告警模块203,用于若所述判定结果为异常,则进行告警。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,所述描述的模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

本公开的技术方案中,所涉及的用户个人信息的获取、存储和应用等,均符合相关法律法规的规定,且不违背公序良俗。

根据本公开实施例,本公开还提供了一种电子设备和一种可读存储介质。

图3示出了可以用来实施本公开实施例的电子设备300的示意性框图。电子设备旨在表示各种形式的数字计算机,例如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机和其它适合的计算机。电子设备还可以表示各种形式的移动装置,例如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或要求的本公开的实现。

电子设备300包括计算单元301,其可以根据存储在ROM302中的计算机程序或者从存储单元308加载到RAM303中的计算机程序,来执行各种适当的动作和处理。在RAM303中,还可存储电子设备300操作所需的各种程序和数据。计算单元301、ROM302以及RAM303通过总线304彼此相连。I/O接口305也连接至总线304。

电子设备300中的多个部件连接至I/O接口305,包括:输入单元306,例如键盘、鼠标等;输出单元307,例如各种类型的显示器、扬声器等;存储单元308,例如磁盘、光盘等;以及通信单元309,例如网卡、调制解调器、无线通信收发机等。通信单元309允许电子设备300通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。

计算单元301可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元301的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元301执行上文所描述的各个方法和处理,例如日志监控方法。例如,在一些实施例中,日志监控方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元308。在一些实施例中,计算机程序的部分或者全部可以经由ROM302和/或通信单元309而被载入和/或安装到电子设备300上。当计算机程序加载到RAM303并由计算单元301执行时,可以执行上文描述的日志监控方法的一个或多个步骤。备选地,在其他实施例中,计算单元301可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行日志监控方法。

本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置和该至少一个输出装置。

用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。

在本公开的上下文中,可读存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合使用的程序。可读存储介质可以是机器可读信号介质或机器可读储存介质。可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备或上述内容的任何合适组合。

为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置;以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者触觉输入)来接收来自用户的输入。

可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。

计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。

应该理解,可以使用上述各种形式的流程,重新排序、增加或删除步骤。例如,本公开中记载的各步骤可以并行地执行,也可以顺序地执行,也可以不同次序执行,只要能够实现本公开的技术方案所期望的结果,本文在此不进行限制。

上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。

技术分类

06120116551783