CN111865674B - 一种日志处理方法、装置及介质 - Google Patents
一种日志处理方法、装置及介质 Download PDFInfo
- Publication number
- CN111865674B CN111865674B CN202010656467.7A CN202010656467A CN111865674B CN 111865674 B CN111865674 B CN 111865674B CN 202010656467 A CN202010656467 A CN 202010656467A CN 111865674 B CN111865674 B CN 111865674B
- Authority
- CN
- China
- Prior art keywords
- log
- reporting
- information
- server
- state information
- 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
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 21
- 238000012545 processing Methods 0.000 claims abstract description 156
- 238000000034 method Methods 0.000 claims abstract description 42
- 206010048669 Terminal state Diseases 0.000 claims abstract description 31
- 230000006835 compression Effects 0.000 claims description 52
- 238000007906 compression Methods 0.000 claims description 52
- 230000004044 response Effects 0.000 claims description 20
- 238000004422 calculation algorithm Methods 0.000 claims description 14
- 238000012423 maintenance Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 10
- 230000004083 survival effect Effects 0.000 description 10
- 238000004891 communication Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 230000002159 abnormal effect Effects 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 6
- 238000004590 computer program Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000002950 deficient Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000005856 abnormality Effects 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 206010033799 Paralysis Diseases 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000003595 mist Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/069—Management of faults, events, alarms or notifications using logs of notifications; Post-processing of notifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/1734—Details of monitoring file system events, e.g. by the use of hooks, filter drivers, logs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/174—Redundancy elimination performed by the file system
- G06F16/1744—Redundancy elimination performed by the file system using compression, e.g. sparse files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/1805—Append-only file systems, e.g. using logs or journals to store data
- G06F16/1815—Journaling file systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0817—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本发明公开了一种日志处理方法、装置及介质,所述方法包括:基于心跳包获取服务器状态信息,所述服务器状态信息表征日志服务器的当前配置情况;获取本地运行环境对应的终端的终端状态信息;基于所述服务器状态信息和所述终端状态信息生成日志处理策略;响应于日志上报请求,基于处理时间点的日志处理策略压缩日志以及向日志服务器上报压缩后的日志。本发明考虑服务器和终端设备的状态制定动态的日志处理策略。当有日志上报需求时,可以根据处理时间点的策略来处理日志。这样能够减少对相关设备的干扰、提高机器的资源利用率、均衡机器的负载,可以降低对正常业务程序的影响。
Description
技术领域
本发明涉及互联网通信技术领域,尤其涉及一种日志处理方法、装置及介质。
背景技术
随着近年来互联网的高速发展,网民数量急速上升,由此造成互联网应用的用户数高速增长。面对海量用户,互联网应用会出现各种各样的问题,甚至会出现程序崩溃。而要调查问题、监测崩溃,程序所产生的日志是最重要的信息源。因此,在主流互联网应用中,日志上报系统是不可或缺的组成部分。
相关技术中,日志上报系统进行日志上报时可以采用单独的进程来进行日志汇总和上报,日志上报系统进行日志上报时也可以将日志拆分为日志模板和日志数据以上报。然而,日志上报系统往往关注于自身的日志上报逻辑,并没有考虑的相关设备的影响。因此,需要提供对相关设备干扰程度更小的日志上报方案。
发明内容
为了解决现有技术应用在进行日志上报时,不考虑对相关设备的干扰等问题,本发明提供了一种日志处理方法、装置及介质:
一方面,本发明提供了一种日志处理方法,所述方法包括:
基于心跳包获取服务器状态信息,所述服务器状态信息表征日志服务器的当前配置情况;
获取本地运行环境对应的终端的终端状态信息;
基于所述服务器状态信息和所述终端状态信息生成日志处理策略;
响应于日志上报请求,基于处理时间点的日志处理策略压缩日志以及向日志服务器上报压缩后的日志。
另一方面提供了一种日志处理装置,所述装置包括:
第一状态信息获取模块:用于基于心跳包获取服务器状态信息,所述服务器状态信息表征日志服务器的当前配置情况;
第二状态信息获取模块:用于获取本地运行环境对应的终端的终端状态信息;
日志处理策略生成模块:用于基于所述服务器状态信息和所述终端状态信息生成日志处理策略;
日志处理模块:用于响应于日志上报请求,基于处理时间点的日志处理策略压缩日志以及向日志服务器上报压缩后的日志。
另一方面提供了一种电子设备,所述电子设备包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由所述处理器加载并执行以实现如上述的日志处理方法。
另一方面提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由处理器加载并执行以实现如上述的日志处理方法。
本发明提供的一种日志处理方法、装置及介质,具有如下技术效果:
本发明考虑服务器和终端设备的状态制定动态的日志处理策略。当有日志上报需求时,可以根据处理时间点的策略来处理日志。这样能够减少对相关设备的干扰、提高机器的资源利用率,可以降低对正常业务程序的影响。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案和优点,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。
图1是本发明实施例提供的一种应用环境的示意图;
图2是本发明实施例提供的一种日志处理方法的流程示意图;
图3是本发明实施例提供的基于终端状态信息生成日志处理策略中的压缩包创建信息的一种流程示意图;
图4是本发明实施例提供的对压缩包队列进行维护的一种流程示意图;
图5也是本发明实施例提供的对压缩包队列进行维护的一种流程示意图;
图6是本发明实施例提供的基于服务器状态信息生成日志处理策略中的日志上报信息,以及基于处理时间点的日志处理策略上报日志的一种流程示意图;
图7也是本发明实施例提供的基于服务器状态信息生成日志处理策略中的日志上报信息,以及基于处理时间点的日志处理策略上报日志的一种流程示意图;
图8是本发明实施例提供的日志上报系统的框架图;
图9也是本发明实施例提供的一种日志处理方法的流程示意图;
图10是本发明实施例提供的一种日志处理装置的组成框图;
图11是本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
请参阅图1,图1是本发明实施例提供的一种应用环境的示意图,可以包括客户端01和服务器02,客户端与服务器可以通过有线或无线通信方式进行直接或间接地连接。用户利用客户端体验业务服务。当业务出现异常时,客户端可以将日志上报至服务器。需要说明的是,图1仅仅是一种示例。
具体的,客户端01可以包括智能手机、台式电脑、平板电脑、笔记本电脑、增强现实(augmented reality,AR)/虚拟现实(virtual reality,VR)设备、数字助理、智能音箱、智能可穿戴设备等类型的实体设备,也可以包括运行于实体设备中的软体,比如计算机程序。客户端01上运行的操作系统可以包括但不限于安卓系统(Android系统)、IOS系统(是由苹果公司开发的移动操作系统)、linux(一种操作系统)、Microsoft Windows(微软视窗操作系统)等。
具体的,服务器02可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。服务器02可以包括有网络通信单元、处理器和存储器等等。所述服务器02可以为上述客户端提供后台服务。
在实际应用中,通信中可以采用雾计算(Fog Computing)模式。在该模式中数据、(数据)处理和应用程序集中在网络边缘的设备中,而不是几乎全部保存在云中。雾计算可以作为云计算(Cloud Computing)的延伸概念。用户所体验的业务服务可以为音视频业务服务、游戏业务服务等,具体的可以指向其中的更新下载应用上。用户所体验的业务服务可以基于雾计算PCDN(P2P内容分发网络)的应用而实现,这样可以保证高质量的数据传输。
进一步的,为用户提供相关业务服务的产品(比如视频应用)的正常业务程序(业务主逻辑,比如在线观看某视频)可以利用雾计算技术,产品的日志上报逻辑(在业务主逻辑出现异常时被触发)可以利用常规的有中心点的数据通信技术。
在一个具体的实施例中,当客户端对应实体设备时,该实体设备中运行有业务服务提供方提供的指向某产品的计算机程序。当客户端对应运行于实体设备中的计算机程序时,该计算机程序是由业务服务提供方提供的指向某产品的。上述计算机程序包括对应业务主逻辑的正常业务程序以及对应日志上报逻辑的程序,相应的,在正常业务程序出现异常时,客户端将执行日志上报逻辑以向某产品对应的服务器(属于业务服务提供方)进行日志上报。其中,接收上报日志的服务器可以是具体的日志服务器。
在实际应用中,客户端也可以指向对应日志上报逻辑的程序,基于对应日志上报逻辑的程序可以构建一个日志上报系统。如图8、9所示,日志上报系统可以包括状态获取模块、压缩包创建模块、压缩包维护模块、上报模块。状态获取模块定时获取日志服务器及终端设备的状态信息,并以此计算确定压缩包创建模块、压缩包维护模块、上报模块的待执行策略,并下发。该系统的输入是业务侧模块(对应业务主逻辑)的日志上报请求。状态获取模块接收日志上报请求,并向压缩包创建模块发送压缩包创建请求。压缩包创建模块完成创建日志压缩包后,压缩包维护模块定时删除不需要的日志压缩包。上报模块选择合适的时间点,检查是否有未上报的日志压缩包,若有则进行上报尝试。该系统的输出是日志压缩包,经由上报模块上传至日志服务器。
以下介绍本发明一种日志处理方法的具体实施例,图2、9是本发明实施例提供的一种日志处理方法的流程示意图,本说明书提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的系统或服务器产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。具体的如图2、9所示,所述方法可以包括:
S201:基于心跳包获取服务器状态信息,所述服务器状态信息表征日志服务器的当前配置情况;
在本发明实施例中,客户端基于心跳包获取服务器状态信息,表征日志服务器的当前配置情况的服务器状态信息可以包括以下至少一个:指示压缩包存储时限的预设时长(日志压缩包存活时长)、预设上报时间间隔(上报尝试时间片大小)、次数阈值(对应上报次数、重传次数)。当然,服务器状态信息还可以包括错误码上报次数阈值。
为获取服务器状态信息,客户端可以定时向日志服务器发送ping(PacketInternet Groper,一种网络诊断工具)命令。具体的,客户端可以向日志服务器发送携带有状态请求信息的心跳请求包;响应于日志服务器返回的心跳应答包,客户端基于心跳应答包获取服务器状态信息。
相应的,客户端基于心跳应答包确定该客户端对应的终端是否为指定上报对象,也就是确定该客户端对应的终端是否指示日志上报抽样用户。客户端基于心跳应答包和心跳请求包对应的往返时延确定网络状态属性,也就是根据RTT(Round-Trip Time)信息确定当前网络是否属于弱网状态。当该客户端对应的终端不是所述指定上报对象或者所述网络状态属性不符合预设要求时,暂停执行所述基于所述服务器状态信息和所述终端状态信息生成日志处理策略(对应后述步骤S203),以及暂停执行所述响应于日志上报请求,基于处理时间点的日志处理策略压缩日志以及向日志服务器上报压缩后的日志(对应后述步骤S204)。也就是说,当该客户端对应的终端不能指示日志上报抽样用户,或者当前网络是否属于弱网状态时,相当于关闭日志上报功能。一方面客户端不再配置、更新日志处理策略;一方面即使出现日志上报请求,也不需要基于处理时间点的日志处理策略进行日志处理。
S202:获取本地运行环境对应的终端的终端状态信息;
在本发明实施例中,客户端获取本地运行环境对应的终端的终端状态信息,终端状态信息可以包括以下至少一个:内存剩余量(对应剩余内存)、存储剩余量(对应剩余存储)以及中央处理器(CPU)利用率。客户端可以对终端状态信息作定时获取。
S203:基于所述服务器状态信息和所述终端状态信息生成日志处理策略;
在本发明实施例中,日志处理策略的配置、更新是动态的,日志处理策略在一定情况下可以是实时变化的。日志处理策略考虑了日志服务器和终端的当前状态,日志处理策略可以对当前的日志处理步骤进行引导。
日志处理策略中可以包括压缩包创建信息、压缩包存储信息以及日志上报信息。结合日志处理策略中这些具体信息与具体机器的相关程度,1)客户端可以基于终端状态信息生成日志处理策略中的压缩包创建信息;2)客户端可以基于服务器状态信息和/或终端状态信息生成日志处理策略中的压缩包存储信息;3)客户端可以基于服务器状态信息生成日志处理策略中的日志上报信息。
在一个具体的实施例中,如图3所示,所述基于所述终端状态信息生成所述日志处理策略中的压缩包创建信息,包括:
S301:基于所述终端状态信息获取所述对应的终端的内存剩余量以及中央处理器利用率;
S302:当所述内存剩余量大于等于第一阈值、所述中央处理器利用率小于等于第二阈值时,将第一信息作为所述压缩包创建信息;
S303:当所述内存剩余量大于等于第三阈值、所述中央处理器利用率小于等于第四阈值时,将第二信息作为所述压缩包创建信息;
S304:当所述内存剩余量大于等于第五阈值、所述中央处理器利用率小于等于第六阈值时,将第三信息作为所述压缩包创建信息;
第一阈值可以为1GB(等于1024MB),第二阈值可以为50%,那么当且仅当剩余内存大于等于1GB、CPU利用率小于等于50%时,由于终端的可用资源较充裕,可以从尽可能多的还原错误现场的角度将第一信息(对应压缩所有日志文件)作为压缩包创建信息。第三阈值可以为512MB,第四阈值可以为80%,那么当且仅当剩余内存大于等于512MB、CPU利用率小于等于80%时,可以将第二信息(对应压缩关键日志文件)作为压缩包创建信息。第五阈值可以为256MB,第六阈值可以为95%,那么当且仅当剩余内存大于等于256MB、CPU利用率小于等于95%时,可以将第三信息(对应压缩关键日志文件的前目标行数)作为压缩包创建信息。当然,上述阈值对应的具体数值可以根据需要以及阈值间的大小关系(第一阈值大于第三阈值,第三阈值大于第五阈值;第二阈值小于第四阈值,第四阈值小于第六阈值)灵活设置。在实际应用中,第三阈值也可以等于第一阈值。
此外,当上述条件都不满足时,压缩包创建信息则指向暂停压缩包创建功能。在实际应用中,状态获取模块将生成的压缩包创建信息发送给压缩包创建模块。压缩包创建模块在确定压缩包创建策略后,等待压缩包创建请求。压缩包创建模块完成日志压缩创建后,会将日志压缩包的相关信息写入压缩包队列,便于压缩包维护模块去管理所有日志压缩包。
在另一个具体的实施例中,客户端可以基于终端状态信息获取该客户端对应的终端的存储剩余量,以及基于存储剩余量生成压缩包存储信息。终端的存储剩余量反映了终端用于存储新增压缩包的理想可用空间,基于存储剩余量可以确定指向整个压缩包队列的理想可用空间以及指定指向整个压缩包队列的参考空间,参考空间小于等于理想可用空间。对应于参考空间的压缩包存储信息可以定义压缩包队列对应的参考长度,可以更细粒度的定义压缩包对应的参考数目。
相应的,如图4所示,维护压缩包队列的过程通过下述步骤执行:
S401:获取当前的日志处理策略所指向的压缩包存储信息;
S402:获取当前压缩包队列对应的存储量,以及获取所述当前压缩包队列中压缩包对应的创建时间点;
S403:当所述对应的存储量大于所述存储剩余量时,基于所述所指向的压缩包存储信息删除压缩包队列中最早创建时间点对应的压缩包;
S404:确定删除后的压缩包队列对应的存储量;
S405:当所述删除后的压缩包队列对应的存储量大于所述存储剩余量时,重复所述删除压缩包队列中最早创建时间点对应的压缩包的步骤至删除后的压缩包队列对应的存储量至小于等于所述存储剩余量。
压缩包队列是一个先进先出队列,队列中的压缩包根据创建时间先后进行排序。在实际应用中,压缩包维护模块从终端设备状态中确定当前压缩包队列对应的长度,若终端设备剩余μGB存储空间,则压缩包的存储上限为μ。压缩包维护模块检查压缩包队列时,若发现当前压缩包队列对应的长度(当前压缩包队列对应的存储量)超出最大长度(存储剩余量)时,则删除创建时间最早的日志压缩包。
在另一个具体的实施例中,客户端可以基于服务器状态信息获取指示压缩包存储时限的预设时长,以及基于预设时长生成压缩包存储信息。指示压缩包存储时限的预设时长(日志压缩包存活时长)来自日志服务器回复的心跳应答包,指示压缩包存储时限的预设时长反映了预先在日志服务器为压缩包配置的最大存活时长,该最大存活时长是对压缩包的创建时长进行衡量的。
相应的,如图5所示,维护压缩包队列的过程通过下述步骤执行:
S501:获取所述处理时间点的日志处理策略所指向的压缩包存储信息;
S502:获取当前压缩包队列中压缩包对应的创建时间点;
S503:基于当前时间点和所述当前压缩包队列中压缩包对应的创建时间点,确定所述当前压缩包队列中压缩包对应的创建时长;
S504:基于所述所指向的压缩包存储信息删除对应的创建时长大于所述预设时长的压缩包。
压缩包队列是一个先进先出队列,队列中的压缩包根据创建时间先后进行排序。在实际应用中,压缩包维护模块从日志服务器回复的心跳应答包中获取压缩包最大存活时长,该值默认值为七天。压缩包维护模块检查压缩包队列时,若发现当前压缩包队列中存在存活时长(创建时长)超出配置中的最大存活时长(预设时长)的日志压缩包时,则删除该日志压缩包。
需要说明的是,可以结合存储剩余量和预设时长生成压缩包存储信息。在实际应用中,在日志上报系统启动时,压缩包维护模块检查日志目录,查看是否存在日志压缩包,从而创建压缩包队列。若日志目录无日志压缩包,则压缩包队列为空。具体的,结合前述步骤S401-S405以及S501-S504的记载,压缩包维护模块在以下四个时机检查压缩包队列:1)日志上报系统启动的时候;2)新日志压缩包创建成功的时候;3)距离上次检查时间点已达最大存活时长(对应前述日志压缩包存活时长)一半的时候;4)程序切换后台的时候。通过上述不同的压缩包存储信息,压缩包维护模块能够高效利用终端设备上的资源,同时也避免了在终端设备资源匮乏时,给终端设备及程序业务带来的不良影响。
在另一个具体的实施例中,如图6所示,所述基于所述服务器状态信息生成所述日志处理策略中的日志上报信息,包括:
S601:基于所述服务器状态信息获取预设上报时间间隔;
S602:利用预设退避算法和所述预设上报时间间隔生成所述日志上报信息;
客户端可以通过日志服务器回复的心跳应答包获取预设上报时间间隔(上报尝试时间片大小),预设上报时间间隔的默认值可以设置为60分钟。预设退避算法是基于普通退避算法的思想和日志上报逻辑设置的,以利用预设退避算法引导出更合理的上报尝试时间片。普通退避算法可以是二进制指数退避算法,二进制指数退避算法提供了一个处理重负荷的方法,尝试传输的重复失败生成更长的退避时间,以平滑负荷。日志上报信息是在预设上报时间间隔的基础上引入预设退避算法的思想得到的。预设上报时间间隔可以作为一个日志压缩包对应的最初的上报尝试时间片,可以作为一个兜底的上报尝试时间片。当一个日志压缩包对应至少两个上报尝试时间片时,该至少两个上报尝试时间片大于等于预设上报时间间隔。
在另一个具体的实施例中,如图7所示,所述基于所述服务器状态信息生成所述日志处理策略中的日志上报信息,包括:
S701:基于所述服务器状态信息获取次数阈值;
S702:利用所述次数阈值生成所述日志上报信息;
客户端可以通过日志服务器回复的心跳应答包获取次数阈值(对应上报次数、重传次数),次数阈值的默认值可以设置为1。基于次数阈值生成的日志上报信息可以用于规范对同一日志压缩包的上报次数上限。考虑到压缩包队列的先进先出机制,这样可以避免同一日志压缩包一直上报不成功而影响队列中其他日志压缩包的有效上报。
需要说明的是,可以结合预设退避算法、预设上报时间间隔存储剩余量和次数阈值生成日志上报信息。此外,若剩余内存小于上述第五阈值(比如256MB)、CPU利用率大于上述第六阈值(比如95%),日志上报信息则指向暂停日志上报功能。
S204:响应于日志上报请求,基于处理时间点的日志处理策略压缩日志以及向日志服务器上报压缩后的日志。
在本发明实施例中,日志上报请求是基于正常业务程序出现异常而生成的,相应的,日志上报请求所引导的日志上报是为了更好的记录发生异常的错误现场。在实际应用中,正常业务程序运行异常时,业务侧模块向状态获取模块发送日志上报请求。由于不同错误间的严重程度不同,因此错误码之间存在优先级。状态获取模块维护错误码计次数据结构。每个错误码的上报次数阈值通过日志服务器回复的心跳应答包中获取。状态获取模块在接收到业务侧模块发送的日志上报请求之后计次,若某错误码(比如对应错误类型A)对应的上报次数达到上报次数阈值(比如5),且当前终端设备状态满足压缩包创建条件,状态获取模块则向压缩包创建模块发送压缩包创建请求,以保存错误现场。若压缩包创建请求发送成功,则清空该错误码对应的计次。通过维护错误码计次数据结构,能够更为细致地处理程序不同的异常状况,从而能够提升日志上报系统对异常情况的处理能力。
由于日志处理策略的配置、更新是动态的,日志处理策略在一定情况下可以是实时变化的,同时,日志处理的过程也可以看作是分阶段的。因而基于处理时间点的日志处理策略压缩日志,以及基于处理时间点的日志处理策略向日志服务器上报压缩后的日志。在实际应用中,压缩包创建模块响应于状态获取模块发送的压缩包创建请求,基于处理时间点(对应压缩包创建模块开启压缩包创建任务的时间点,比如压缩包创建模块接收到状态获取模块发送的压缩包创建请求的时间点)的日志处理策略中的压缩包创建信息创建日志压缩包,并将日志压缩包的相关信息置于压缩包队列。上报模块基于处理时间点(对应上报模块开启日志上报任务的时间点,比如当且仅当剩余内存大于等于256MB且CPU利用率小于等于95%的时间点,此时上报模块开始执行日志上报任务)的日志处理策略中的日志上报信息上传日志。创建模块创建日志压缩包的时间区间和向日志服务器上报日志的时间区间可以是相邻的,比如对创建好的日志压缩包立即进行上报;也可以不是相邻的,比如在日志压缩包创建好之后一段时间再的进行上报。其中,进行日志上报的具体时间点是由日志处理策略中日志上报信息所确定的。
在一个具体的实施例中,结合上述步骤S301-S304的压缩包创建信息生成策略,那么基于处理时间点的日志处理策略压缩日志的过程可以通过以下方式执行:
第一种:当所述处理时间点的日志处理策略指向所述第一信息时,基于所述第一信息获取目标日志目录下的所有日志文件,以及压缩所述所有日志文件得到对应的压缩包。
第二种:当所述处理时间点的日志处理策略指向所述第二信息时,基于所述第二信息获取所述目标日志目录下的关键日志文件,以及压缩所述关键日志文件得到对应的压缩包。关键日志文件的文件名可以通过日志服务器回复的心跳应答包中获取。关键日志文件的文件名也可以根据日志上报请求所指示的异常类型来确定。
第三种:当所述处理时间点的日志处理策略指向所述第三信息时,基于所述第三信息获取所述关键日志文件,以及对所述关键日志文件的前目标行数行进行压缩得到对应的压缩包,所述目标行数(λ)是基于所述内存剩余量和所述中央处理器利用率确定的。第三信息指向可用资源较匮乏、处于高负载状态的终端,相应的,第三信息所引导的是谨慎进行压缩包创建操以避免终端瘫痪的极端情况的出现。其中,目标行数(λ)可以通过以下公式确定:
λ=Min((α-256)*4,(0.95-β)*16)
公式中,α代表处理时间点的剩余内存,单位为MB;β代表处理时间点的CPU利用率。公式中先计算处理时间点的剩余内存可运行压缩日志行数的大小,以及处理时间点的CPU利用率下可运行压缩日志行数的大小。然后取两者中的较小值,以作为处理时间点的机器状态下创建日志压缩包可取的日志行数。根据上述公式的计算结果进行打包、创建压缩包,能够保证不会在终端设备资源匮乏时莽然请求大量资源,从而对正常业务程序造成不良影响。
在实际应用中,通过上述不同的压缩包创建信息,无论机器处于何种状态,压缩包创建模块都能够恰当地响应压缩包创建请求,从而能够高效利用终端设备上的资源,同时也避免了在终端设备资源匮乏时,给终端设备及程序业务增加负载。
在另一个具体的实施例中,如图6所示,结合上述步骤S601-S602的日志上报信息生成策略,那么基于处理时间点的日志处理策略上报日志的过程可以通过以下方式执行:
S610:获取所述处理时间点的日志处理策略所指向的日志上报信息;
S620:基于所述所指向的日志上报信息获取上报时间间隔集合,所述上报时间间隔集合中最小上报时间间隔大于等于所述预设上报时间间隔;
S630:从所述上报时间间隔集合中选取第一上报时间间隔;
S640:基于当前时间点和所述第一上报时间间隔确定第一上报时间点,以及在所述第一上报时间点向所述日志服务器上报压缩后的日志;
S650:当日志上报失败时,为所述上报时间间隔集合添加一个上报时间间隔,从添加后的上报时间间隔集合中选取第二上报时间间隔,基于所述第一上报时间点和所述第二上报时间间隔确定第二上报时间点,以及在所述第二上报时间点向所述日志服务器上报压缩后的日志;
S660:当日志上报失败时,重复上述为所述上报时间间隔集合添加一个上报时间间隔至向所述日志服务器上报压缩后的日志的步骤,至日志上报成功;
比如,初始时上报时间间隔集合可以为{1}(单位为小时),可以直接使用预设上报时间间隔(默认值60分钟)。在时间点t第一次开始进行日志上报时,可以在时间点t直接进行第一次日志上报,也可以结合预设上报时间间隔确定具体的上报时间点(对应时间点t+1,相当于延后1小时)再进行第一次日志上报。为后面叙述方便,将t1作为第一次日志上报的时间点。
若第一次日志上报失败,则为上报时间间隔集合添加一个上报时间间隔。添加的上报时间间隔大于此时上报时间间隔集合中最大上报时间间隔,相应的,预设上报时间间隔可以一直作为这个集合中的最小上报时间间隔。添加的上报时间间隔与此时上报时间间隔集合中最大上报时间间隔的差值可以限定在0.5、1等定值,也可以限定在[0.5,1]这个数值范围内。本次添加的上报时间间隔可以是2,相应的,形成集合{1,2}。
从集合{1,2}中随机选取一个时间间隔,若选取的时间间隔为2,可以将其与t1结合确定第二次日志上报的时间点t2(=t1+2)。若第二次日志上报失败,同理上述记载“为上报时间间隔集合添加一个上报时间间隔”的相关内容,本次添加的上报时间间隔可以是3,相应的,形成集合{1,2,3}。
从集合{1,2,3}中随机选取一个时间间隔,若选取的时间间隔为1,可以将其与t2结合确定第三次日志上报的时间点t3(=t2+1)。若第三次日志上报失败,同理上述记载“为上报时间间隔集合添加一个上报时间间隔”的相关内容,本次添加的上报时间间隔可以是4,相应的,形成集合{1,2,3,4}。
可以按照上述日志上报的时间点的确定方式进行对同一日志压缩包进行上报尝试,直至该日志压缩包上报成功。每次上报尝试失败时,1)可以直接从时间片集合(上报时间间隔集合)的已有时间片中随机取一个时间片,然后退避该时间片。再往时间片集合增加一个时间片,这个时间片的大小大于已有时间片中最大的时间片。这样相当于为下次上报尝试失败后的退避时间增加选项;2)也可以先往时间片集合增加一个时间片,这个时间片的大小大于已有时间片中最大的时间片。然后再从时间片集合的已有时间片(包括了新增的时间片)中随机取一个时间片,然后退避该时间片。其中,新增的时间片的最大值需要小于24(单位为小时)。因此,若一直上报尝试失败,最后的时间片集合{1,2,3,...,24}。在实际应用中,若上报尝试成功,日志上报系统会退避最大的时间片,即24小时。同时系统重置时间片集合为初始状态,即为{1}。
采用预设退避算法可以引导无效上报尝试的减小,从而减少给终端设备带来的负载。预设退避算法的应用,可以在上报尝试连续失败后平衡退避时长增加的需求与避免退避时长增长过急的需求。预设退避算法的应用,可以在上报尝试连续失败后引导作为退避时长的候选时间片中出现更大的时间片(相比于已有时间片),这样相邻两个退避时长在进行时间片随机选择时,后一个退避时长选择出的时间片大于前一个退避时长选择出的时间片的概率也更大。同时,也不排除后一个退避时长选择出的时间片小于等于前一个退避时长选择出的时间片的可能性,可以有效兼顾机器的资源利用率与日志上报效率。
当然,也可以设置相邻两个退避时长的差值,后一个退避时长大于前一个退避时长。可以将差值限定在0.5、1等定值,或者限定在[0.5,1]这个数值范围内。每次上报尝试失败时,基于差值确定退避时长。
在另一个具体的实施例中,如图7所示,结合上述步骤S701-S702的日志上报信息生成策略,那么基于处理时间点的日志处理策略上报日志的过程可以通过以下方式执行:
S710:获取所述处理时间点的日志处理策略所指向的日志上报信息;
S720:获取当前压缩包对应的上报失败次数;
S730:当所述上报失败次数大于所述次数阈值时,基于所述所指向的日志上报信息删除所述当前压缩包。
在实际应用中,当日志压缩包上传日志服务器失败时,上报模块会记录该日志压缩包的上报失败次数。若失败次数大于重传次数,则删除该日志压缩包。否则该日志压缩包仍位于压缩包队列队头,下一次进行上报尝试时上传的仍是该日志压缩包。若该日志压缩包上报一直不成功且失败次数小于等于重传次数,则由压缩包维护模块不定时检查以删除。这里S710-S730记载的内容可以应用于前述步骤S610-S660记载的内容中。
需要说明的是,结合前述步骤S610-S660以及S710-S730的记载,当且仅当剩余内存大于等于上述第五阈值(比如256MB),且CPU利用率小于等于上述第六阈值(比如95%)时,上报模块开始运行。上报模块进行上报尝试时,先通过压缩包维护模块得知压缩包队列是否为空。若非空,则取队头的日志压缩包,进行上报。上报模块在以下三种时机进行上报尝试:1)日志上报系统启动的时候;2)根据预设退避算法求得退避时长,目前已距离上次上报尝试失败已达该退避时长的时候;3)程序切换后台的时候。上述的上报(尝试)成功,是指日志压缩包成功上传至日志服务器。上述的上报(尝试)失败,是指压缩包队列为空,或日志压缩包上传至日志服务器失败。上报模块不定时检查压缩包队列,并将日志压缩包上传至日志服务器。上传成功则立即删除日志压缩包。其中,当1)和3)两个固定上报尝试时间点触发时,会重置预设退避算法。
通过上述不同的日志上报信息,能够选择相对空闲的时间来进行上报尝试。上报模块能够尽可能地减少无效的上报尝试,从而更高效地应用终端设备上的资源,同时也避免了在终端设备资源匮乏时,日志上报系统给终端设备及程序业务带来的负面影响。
由以上本说明书实施例提供的技术方案可见,本说明书实施例中考虑服务器和终端设备的状态制定动态的日志处理策略。当有日志上报需求时,可以根据处理时间点的策略来处理日志。这样能够在确保日志上报逻辑正常且可靠运行的情况下,可以减少对相关设备的干扰和负载,提高机器的资源利用率,降低对正常业务程序的影响。
本发明实施例还提供了一种日志处理装置,如图10所示,所述装置包括:
第一状态信息获取模块1010:用于基于心跳包获取服务器状态信息,所述服务器状态信息表征日志服务器的当前配置情况;
第二状态信息获取模块1020:用于获取本地运行环境对应的终端的终端状态信息;
日志处理策略生成模块1030:用于基于所述服务器状态信息和所述终端状态信息生成日志处理策略;
日志处理模块1040:用于响应于日志上报请求,基于处理时间点的日志处理策略压缩日志以及向日志服务器上报压缩后的日志。
需要说明的,所述装置实施例中的装置与方法实施例基于同样的发明构思。
本发明实施例提供了一种电子设备,该电子设备包括处理器和存储器,该存储器中存储有至少一条指令或至少一段程序,该至少一条指令或该至少一段程序由该处理器加载并执行以实现如上述方法实施例所提供的日志处理方法。
进一步地,图11示出了一种用于实现本发明实施例所提供的日志处理方法的电子设备的硬件结构示意图,所述电子设备可以参与构成或包含本发明实施例所提供的日志处理装置。如图11所示,电子设备110可以包括一个或多个(图中采用1102a、1102b,……,1102n来示出)处理器1102(处理器1102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器1104、以及用于通信功能的传输装置1106。除此以外,还可以包括:显示器、输入/输出接口(I/O接口)、通用串行总线(USB)端口(可以作为I/O接口的端口中的一个端口被包括)、网络接口、电源和/或相机。本领域普通技术人员可以理解,图11所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,电子设备110还可包括比图11中所示更多或者更少的组件,或者具有与图11所示不同的配置。
应当注意到的是上述一个或多个处理器1102和/或其他数据处理电路在本文中通常可以被称为“数据处理电路”。该数据处理电路可以全部或部分的体现为软件、硬件、固件或其他任意组合。此外,数据处理电路可为单个独立的处理模块,或全部或部分的结合到电子设备110(或移动设备)中的其他元件中的任意一个内。如本申请实施例中所涉及到的,该数据处理电路作为一种处理器控制(例如与接口连接的可变电阻终端路径的选择)。
存储器1104可用于存储应用软件的软件程序以及模块,如本发明实施例中所述的方法对应的程序指令/数据存储装置,处理器1102通过运行存储在存储器114内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的一种日志处理方法。存储器1104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器1104可进一步包括相对于处理器1102远程设置的存储器,这些远程存储器可以通过网络连接至电子设备110。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置1106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括电子设备110的通信供应商提供的无线网络。在一个实例中,传输装置1106包括一个网络适配器(NetworkInterfaceController,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实施例中,传输装置1106可以为射频(RadioFrequency,RF)模块,其用于通过无线方式与互联网进行通讯。
显示器可以例如触摸屏式的液晶显示器(LCD),该液晶显示器可使得用户能够与电子设备110(或移动设备)的用户界面进行交互。
本发明的实施例还提供了一种存储介质,所述存储介质可设置于电子设备之中以保存用于实现方法实施例中一种日志处理方法相关的至少一条指令或至少一段程序,该至少一条指令或该至少一段程序由该处理器加载并执行以实现上述方法实施例提供的日志处理方法。
可选地,在本实施例中,上述存储介质可以位于计算机网络的多个网络服务器中的至少一个网络服务器。可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
由上述本发明提供的日志处理方法的实施例可见,本发明定时获取日志服务器的状态信息和终端设备的状态信息,选取适配机器状态的上报日志规格、上报日志频率、日志压缩包实际存活时长、日志压缩包实际队列长度等,从而能够更为有效利用机器资源。在机器资源匮乏时,可以减少上报日志规格等,甚至停止上报,能够降低日志上报逻辑对业务主逻辑的影响,能够避免日志服务器过载以及崩出现崩溃的极端情况。
需要说明的是:上述本发明实施例先后顺序仅仅为了描述,不代表实施例的优劣。且上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置和电子设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种日志处理方法,其特征在于,所述方法包括:
基于心跳包获取服务器状态信息,所述服务器状态信息表征日志服务器的当前配置情况;
获取本地运行环境对应的终端的终端状态信息;
基于所述服务器状态信息和所述终端状态信息生成日志处理策略:基于所述终端状态信息生成所述日志处理策略中的压缩包创建信息;基于所述服务器状态信息或者所述终端状态信息生成所述日志处理策略中的压缩包存储信息;基于所述服务器状态信息生成所述日志处理策略中的日志上报信息;
响应于日志上报请求,基于处理时间点的日志处理策略压缩日志以及向所述日志服务器上报压缩后的日志。
2.根据权利要求1所述的方法,其特征在于,所述基于心跳包获取服务器状态信息,包括:
向所述日志服务器发送携带有状态请求信息的心跳请求包;
响应于所述日志服务器返回的心跳应答包,基于所述心跳应答包获取所述服务器状态信息;
相应的,所述响应于所述日志服务器返回的心跳应答包,基于所述心跳应答包获取表征所述日志服务器当前配置的服务器状态信息之后,所述方法还包括:
基于所述心跳应答包确定所述对应的终端是否为指定上报对象;
基于所述心跳应答包和所述心跳请求包对应的往返时延确定网络状态属性;
当所述对应的终端不是所述指定上报对象或者所述网络状态属性不符合预设要求时,暂停执行所述基于所述服务器状态信息和所述终端状态信息生成日志处理策略,以及暂停执行所述响应于日志上报请求,基于处理时间点的日志处理策略压缩日志以及向所述日志服务器上报压缩后的日志。
3.根据权利要求1所述的方法,其特征在于,所述基于所述终端状态信息生成所述日志处理策略中的压缩包创建信息,包括:
基于所述终端状态信息获取所述对应的终端的内存剩余量以及中央处理器利用率;
当所述内存剩余量大于等于第一阈值、所述中央处理器利用率小于等于第二阈值时,将第一信息作为所述压缩包创建信息;
当所述内存剩余量大于等于第三阈值、所述中央处理器利用率小于等于第四阈值时,将第二信息作为所述压缩包创建信息;
当所述内存剩余量大于等于第五阈值、所述中央处理器利用率小于等于第六阈值时,将第三信息作为所述压缩包创建信息;
相应的,所述响应于日志上报请求,基于处理时间点的日志处理策略压缩日志,包括:
当所述处理时间点的日志处理策略指向所述第一信息时,基于所述第一信息获取目标日志目录下的所有日志文件,以及压缩所述所有日志文件得到对应的压缩包;
当所述处理时间点的日志处理策略指向所述第二信息时,基于所述第二信息获取所述目标日志目录下的关键日志文件,以及压缩所述关键日志文件得到对应的压缩包;
当所述处理时间点的日志处理策略指向所述第三信息时,基于所述第三信息获取所述关键日志文件,以及对所述关键日志文件的前目标行数行进行压缩得到对应的压缩包,所述目标行数是基于所述内存剩余量和所述中央处理器利用率确定的;
其中,所述第一阈值大于所述第三阈值,所述第三阈值大于所述第五阈值;所述第二阈值小于所述第四阈值,所述第四阈值小于所述第六阈值。
4.根据权利要求1所述的方法,其特征在于,所述基于所述服务器状态信息或者所述终端状态信息生成所述日志处理策略中的压缩包存储信息,包括:
基于所述终端状态信息获取所述对应的终端的存储剩余量;
基于所述存储剩余量生成所述压缩包存储信息;
相应的,所述方法还包括:
获取当前的日志处理策略所指向的压缩包存储信息;
获取当前压缩包队列对应的存储量,以及获取所述当前压缩包队列中压缩包对应的创建时间点;
当所述对应的存储量大于所述存储剩余量时,基于所述所指向的压缩包存储信息删除压缩包队列中最早创建时间点对应的压缩包;
确定删除后的压缩包队列对应的存储量;
当所述删除后的压缩包队列对应的存储量大于所述存储剩余量时,重复所述删除压缩包队列中最早创建时间点对应的压缩包的步骤至删除后的压缩包队列对应的存储量至小于等于所述存储剩余量。
5.根据权利要求1所述的方法,其特征在于,所述基于所述服务器状态信息或者所述终端状态信息生成所述日志处理策略中的压缩包存储信息,包括:
基于所述服务器状态信息获取指示压缩包存储时限的预设时长;
基于所述预设时长生成所述压缩包存储信息;
相应的,所述方法还包括:
获取当前的日志处理策略所指向的压缩包存储信息;
获取当前压缩包队列中压缩包对应的创建时间点;
基于当前时间点和所述当前压缩包队列中压缩包对应的创建时间点,确定所述当前压缩包队列中压缩包对应的创建时长;
基于所述所指向的压缩包存储信息删除对应的创建时长大于所述预设时长的压缩包。
6.根据权利要求1所述的方法,其特征在于,所述基于所述服务器状态信息生成所述日志处理策略中的日志上报信息,包括:
基于所述服务器状态信息获取预设上报时间间隔;
利用预设退避算法和所述预设上报时间间隔生成所述日志上报信息;
相应的,所述响应于日志上报请求,基于处理时间点的日志处理策略向所述日志服务器上报压缩后的日志,包括:
获取所述处理时间点的日志处理策略所指向的日志上报信息;
基于所述所指向的日志上报信息获取上报时间间隔集合,所述上报时间间隔集合中最小上报时间间隔大于等于所述预设上报时间间隔;
从所述上报时间间隔集合中选取第一上报时间间隔;
基于当前时间点和所述第一上报时间间隔确定第一上报时间点,以及在所述第一上报时间点向所述日志服务器上报压缩后的日志;
当日志上报失败时,为所述上报时间间隔集合添加一个上报时间间隔,从添加后的上报时间间隔集合中选取第二上报时间间隔,基于所述第一上报时间点和所述第二上报时间间隔确定第二上报时间点,以及在所述第二上报时间点向所述日志服务器上报压缩后的日志;
当日志上报失败时,重复上述为所述上报时间间隔集合添加一个上报时间间隔至向所述日志服务器上报压缩后的日志的步骤,至日志上报成功;
其中,添加的上报时间间隔大于所述上报时间间隔集合中最大上报时间间隔。
7.根据权利要求1所述的方法,其特征在于,所述基于所述服务器状态信息生成所述日志处理策略中的日志上报信息,包括:
基于所述服务器状态信息获取次数阈值;
利用所述次数阈值生成所述日志上报信息;
相应的,所述响应于日志上报请求,基于处理时间点的日志处理策略向所述日志服务器上报压缩后的日志,包括:
获取所述处理时间点的日志处理策略所指向的日志上报信息;
获取当前压缩包对应的上报失败次数;
当所述上报失败次数大于所述次数阈值时,基于所述所指向的日志上报信息删除所述当前压缩包。
8.一种日志处理装置,其特征在于,所述装置包括:
第一状态信息获取模块:用于基于心跳包获取服务器状态信息,所述服务器状态信息表征日志服务器的当前配置情况;
第二状态信息获取模块:用于获取本地运行环境对应的终端的终端状态信息;
日志处理策略生成模块:用于基于所述服务器状态信息和所述终端状态信息生成日志处理策略:基于所述终端状态信息生成所述日志处理策略中的压缩包创建信息;基于所述服务器状态信息或者所述终端状态信息生成所述日志处理策略中的压缩包存储信息;基于所述服务器状态信息生成所述日志处理策略中的日志上报信息;
日志处理模块:用于响应于日志上报请求,基于处理时间点的日志处理策略压缩日志以及向所述日志服务器上报压缩后的日志。
9.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由处理器加载并执行以实现如权利要求1-7任一所述的日志处理方法。
10.一种电子设备,其特征在于,所述电子设备包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由所述处理器加载并执行以实现如权利要求1-7任一所述的日志处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010656467.7A CN111865674B (zh) | 2020-07-09 | 2020-07-09 | 一种日志处理方法、装置及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010656467.7A CN111865674B (zh) | 2020-07-09 | 2020-07-09 | 一种日志处理方法、装置及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111865674A CN111865674A (zh) | 2020-10-30 |
CN111865674B true CN111865674B (zh) | 2024-01-09 |
Family
ID=73152705
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010656467.7A Active CN111865674B (zh) | 2020-07-09 | 2020-07-09 | 一种日志处理方法、装置及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111865674B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113467718B (zh) * | 2021-06-25 | 2024-03-26 | 北京达佳互联信息技术有限公司 | 一种数据处理方法、装置、电子设备及存储介质 |
CN114615559A (zh) * | 2022-03-02 | 2022-06-10 | 视若飞信息科技(上海)有限公司 | 一种用于终端的上传真实场景故障方法、装置及系统 |
CN114884897A (zh) * | 2022-04-18 | 2022-08-09 | 中银金融科技有限公司 | 用户行为数据上报方法及装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102790686A (zh) * | 2011-05-17 | 2012-11-21 | 浙江核新同花顺网络信息股份有限公司 | 日志数据采集方法、系统及服务器 |
CN102882705A (zh) * | 2012-09-03 | 2013-01-16 | 青岛海信传媒网络技术有限公司 | 终端设备上报日志的方法及日志上报系统 |
CN106470123A (zh) * | 2016-09-29 | 2017-03-01 | 北京三快在线科技有限公司 | 日志收集方法、客户端、服务器和电子设备 |
CN106789153A (zh) * | 2016-11-09 | 2017-05-31 | 苏州数言信息技术有限公司 | 物联网系统终端设备的多渠道自适应日志记录、输出方法及系统 |
CN106936859A (zh) * | 2015-12-29 | 2017-07-07 | 研祥智能科技股份有限公司 | 一种云服务器策略部署系统及方法 |
CN107809337A (zh) * | 2017-11-17 | 2018-03-16 | 深圳泉眼体育运营管理有限公司 | 一种日志上传方法及装置 |
CN109688207A (zh) * | 2018-12-11 | 2019-04-26 | 北京云中融信网络科技有限公司 | 日志传输方法、装置及服务器 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2553784B (en) * | 2016-09-13 | 2019-02-06 | Advanced Risc Mach Ltd | Management of log data in electronic systems |
-
2020
- 2020-07-09 CN CN202010656467.7A patent/CN111865674B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102790686A (zh) * | 2011-05-17 | 2012-11-21 | 浙江核新同花顺网络信息股份有限公司 | 日志数据采集方法、系统及服务器 |
CN102882705A (zh) * | 2012-09-03 | 2013-01-16 | 青岛海信传媒网络技术有限公司 | 终端设备上报日志的方法及日志上报系统 |
CN106936859A (zh) * | 2015-12-29 | 2017-07-07 | 研祥智能科技股份有限公司 | 一种云服务器策略部署系统及方法 |
CN106470123A (zh) * | 2016-09-29 | 2017-03-01 | 北京三快在线科技有限公司 | 日志收集方法、客户端、服务器和电子设备 |
CN106789153A (zh) * | 2016-11-09 | 2017-05-31 | 苏州数言信息技术有限公司 | 物联网系统终端设备的多渠道自适应日志记录、输出方法及系统 |
CN107809337A (zh) * | 2017-11-17 | 2018-03-16 | 深圳泉眼体育运营管理有限公司 | 一种日志上传方法及装置 |
CN109688207A (zh) * | 2018-12-11 | 2019-04-26 | 北京云中融信网络科技有限公司 | 日志传输方法、装置及服务器 |
Also Published As
Publication number | Publication date |
---|---|
CN111865674A (zh) | 2020-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111865674B (zh) | 一种日志处理方法、装置及介质 | |
EP3633957B1 (en) | Data storage method, storage server, storage medium and system | |
CN103024081B (zh) | 适用于有时效保证通讯系统的点对点通讯的终端调度方法 | |
US8369324B1 (en) | Variable compression queue | |
CN106506253B (zh) | 一种基于tcp/ip通信协议的在线客户端数量的统计系统及方法 | |
CN110418154B (zh) | 一种多媒体数据推送方法、装置及系统 | |
CN105515912B (zh) | 一种多节点之间链路有效性检测和处理方法 | |
CN113438129B (zh) | 数据采集方法及装置 | |
US20220286402A1 (en) | Method and apparatus for controlling data packet sending, model training method and apparatus, and system | |
CN112583898A (zh) | 业务流程编排方法、装置、以及可读介质 | |
US8862939B2 (en) | Network system and management server | |
CN112612769A (zh) | 文件处理方法、装置及存储介质 | |
CN110753005A (zh) | 限速方法、装置及系统、电子设备和计算机可读存储介质 | |
US10044833B2 (en) | Data processing method and apparatus used for terminal application | |
CN111711680A (zh) | 基于udp协议的文件断点续传方法及装置 | |
CN111404842A (zh) | 数据传输方法、装置及计算机存储介质 | |
CN106850153B (zh) | 数据重传方法及系统 | |
CN106953756B (zh) | 一种业务数据的模拟延时方法以及服务器 | |
CN113467718B (zh) | 一种数据处理方法、装置、电子设备及存储介质 | |
US11677651B2 (en) | UDPING—continuous one-way monitoring of multiple network links | |
CN105611406B (zh) | 一种接入网服务商监测用户到视频服务器延迟特性方法 | |
US10091068B1 (en) | System for modeling distributed systems | |
CN114116906A (zh) | 数据同步方法、装置、电子装置和存储介质 | |
CN115469975A (zh) | 容器资源调整方法、装置、电子设备及存储介质 | |
CN111881083A (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 |