CN114978885A - 一种日志管理方法、装置、计算机设备及*** - Google Patents
一种日志管理方法、装置、计算机设备及*** Download PDFInfo
- Publication number
- CN114978885A CN114978885A CN202210920870.5A CN202210920870A CN114978885A CN 114978885 A CN114978885 A CN 114978885A CN 202210920870 A CN202210920870 A CN 202210920870A CN 114978885 A CN114978885 A CN 114978885A
- Authority
- CN
- China
- Prior art keywords
- log
- standard
- log information
- message queue
- 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.)
- Pending
Links
- 238000007726 management method Methods 0.000 title claims abstract description 71
- 238000012544 monitoring process Methods 0.000 claims abstract description 24
- 230000000903 blocking effect Effects 0.000 claims abstract description 12
- 238000004806 packaging method and process Methods 0.000 claims abstract description 8
- 230000003139 buffering effect Effects 0.000 claims description 20
- 238000012856 packing Methods 0.000 claims description 4
- 238000000034 method Methods 0.000 abstract description 30
- 230000000007 visual effect Effects 0.000 abstract description 4
- 238000012546 transfer Methods 0.000 abstract description 3
- 238000012423 maintenance Methods 0.000 abstract description 2
- 238000004590 computer program Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 11
- 238000012800 visualization Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000000178 monomer Substances 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请公开提供了一种日志管理方法、装置、计算机设备及***,其中,该方法包括:监听日志事件,根据日志事件封装成标准日志信息;将标准日志信息先加入阻塞队列然后批量发送到消息队列中,并由转储服务将消息队列的日志信息批量转移至存储服务进行存储,最后通过可视化服务进行查询管理。解决了现有技术中将服务产生的日志信息存储于本地文件中,运维管理困难、不易搜索和针对性不强的问题。
Description
技术领域
本发明涉及日志管理技术领域,具体涉及一种日志管理方法、装置、计算机设备及***。
背景技术
随着应用服务越来越多,越来越复杂,日志如果还是存储于服务本地某些文件中,那么对日志的查看及管理将是很困难的事情,日志只能由技术人员查看且集群情况不易定位,这样分散的日志存储更谈不上管理。在分布式日志中,日志管理主要采用在每个应用服务中开启日志收集服务,配置相关收集规则,将实时日志文件传送到存储器(ES)中,然后通过笨重不易操作的可视化工具查看日志信息。这样的分布式日志管理不仅需要在每个节点服务器中安装收集日志收集服务,而且可视化可操作性及针对性不强。
相关技术中,大部分公司使用的分布式日志管理***的实施步骤如下:服务产生的日志信息存储于本地文件中,日志类型可能有访问日志,信息日志及错误日志等多种日志。服务包括业务模块服务及集群服务,其中每个服务的名称,IP不同。
1. 安装开启日志收集服务,读取本地日志文件,将读取的本地日志信息存储到存储服务中,配置存储收集规则,包含应用名称、应用环境、IP、日志等级、内容、时间等。该日志收集服务与主项目服务互不影响,属于两个不同的进程。
2. 日志收集到存储服务,可视化服务查看存储服务中的信息,通过搜索条件查询存储日志,若想要查看某个应用名称错误日志信息,搜索条件应用名称和日志等级,执行搜索然后返回成功响应。
上述分布式日志管理方法可以解决各类应用日志管理工作,大大方便了开发人员通过日志信息定位问题,可仍然存在如下弊端:
1. 日志收集服务,每个应用服务的服务器上都需要一个日志收集服务收集本地日志,存在宕机的风险,而且无法监控到收集日志服务是否存活,假如收集日志服务太多,运维起来是非常困难的。
2. 针对性不强,不管什么信息存储到存储服务中,只要通过命令搜索,就可能找到对应信息,不一定是日志信息。
发明内容
因此,本发明要解决的技术问题在于克服现有技术将服务产生的日志信息存储于本地文件中,运维困难、不易搜索和针对性不强的缺陷,从而提供一种日志管理方法、装置、计算机设备及***。
为解决上述技术问题,本发明公开实施例至少提供一种日志管理方法、装置、计算机设备及***。
第一方面,本发明公开实施例提供了一种日志管理方法,包括:
监听日志事件;
根据所述日志事件封装成标准日志信息;
将所述标准日志信息发送到消息队列临时缓冲,并由转储服务将消息队列中的所述标准日志信息批量转移至存储服务进行永久存储。
可选地,在所述将所述标准日志信息加入到消息队列临时缓冲之前,还包括:
将所述标准日志信息加入到阻塞队列进行第一次缓冲存储,并设置阙值,超过将舍弃;
所述将所述标准日志信息加入到消息队列临时缓冲为:将所述阻塞队列中的所述标准日志信息转移到消息队列进行第二次缓冲存储。
可选地,所述方法还包括:设置日志告警事件,将错误级别的错误日志信息加入所述日志告警事件中;监听所述日志告警事件;根据预设日志告警信息执行监听到的所述日志告警事件,所述日志告警信息包括应用名称和接收者信息;根据所述应用名称和和接收者信息将监听到的所述错误日志信息发送给指定平台。
可选地,所述存储服务为分布式搜索引擎。
第二方面,本发明公开实施例还提供一种日志管理方法,包括:
接收并存储转储服务发送的标准日志信息,所述标准日志信息是所述转储服务从消息队列获取的,所述消息队列用于临时缓冲项目管理分***的所述标准日志信息;
接收日志查询请求;
获取并输出所述日志查询请求对应的所述标准日志信息。
第三方面,本发明公开实施例还提供一种日志管理装置,包括:
日志事件监听模块,用于监听日志事件;
标准日志生成模块,用于根据所述日志事件封装成标准日志信息;
消息队列缓冲模块,用于将所述标准日志信息发送到消息队列临时缓冲,并由转储服务将消息队列中的所述标准日志信息批量转移至存储服务进行永久存储。
第四方面,本发明公开实施例还提供一种日志管理装置,包括:
标准日志存储模块,用于接收并存储转储服务发送的标准日志信息,所述标准日志信息是所述存储服务从消息队列获取的,所述消息队列用于临时缓冲每个项目管理分***的所述标准日志信息;
查询请求模块,用于接收日志查询请求;
标准日志获取模块,用于获取并输出所述日志查询请求对应的所述标准日志信息。
第五方面,本发明公开实施例还提供一种日志管理***,包括:
项目管理分***,用于监听日志事件,根据所述日志事件封装成标准日志信息,将所述标准日志信息加入到消息队列临时缓冲,并由转储服务将消息队列中的所述标准日志信息批量转向存储服务永久存储;
所述存储服务,接收所述项目管理分***发送的所述消息队列中的所述标准日志信息,并向存储管理分***发送所述标准日志信息;
所述存储管理分***,接收并存储所述存储服务发送的所述标准日志信息,接收日志查询请求,获取并输出所述日志查询请求对应的标准日志信息。
第六方面,本发明公开实施例还提供一种计算机设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当计算机设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行上述第一方面、第二方面,或第一方面、第二方面中任一种可能的实施方式中的步骤。
第七方面,本发明公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述第一方面、第二方面、第三方面、第四方面、第五方面,或第一方面、第二方面、第三方面、第四方面、第五方面中任一种可能的实施方式中的步骤。
本发明的实施例提供的技术方案可以具有以下有益效果:
通过一种安全嵌入依赖,即使发生异常或掉线也不影响主应用程序,在不改变原打印日志信息的情况下,将日志信息像传输到本地文件一样传输到消息队列,也就是通过引入开源工具消息队列和存储搜索引擎(可以是ELASTICSEARCH),对日志信息快速记录,缓冲,转储及搜索,从而可以实时存储查看日志信息。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本发明公开实施例所提供的一种日志管理方法的流程图;
图2示出了本发明公开实施例所提供的另一种日志管理方法的流程图;
图3示出了本发明公开实施例所提供的又一种日志管理方法的流程图;
图4示出了本发明公开实施例所提供的一种日志管理装置的结构示意图;
图5示出了本发明公开实施例所提供的另一种日志管理装置的结构示意图;
图6示出了本发明公开实施例所提供的一种日志管理***的结构示意图;
图7示出了本发明公开实施例所提供的一种计算机设备的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
实施例1
如图1所示,本发明公开实施例所提供的一种日志管理方法的流程图,所述方法包括:
S11:监听日志事件;
S12:根据日志事件封装成标准日志信息;
S13:将标准日志信息发送到消息队列临时缓冲,并由转储服务将消息队列中的标准日志信息批量转移至存储服务进行永久存储。
可以理解的是,本实施例提供的技术方案,通过一种安全嵌入依赖,即使发生异常或掉线也不影响主应用程序,在不改变原打印日志信息的情况下,将日志信息像传输到本地文件一样传输到消息队列,也就是通过引入第三方开源工具消息队列和存储服务搜索引擎(ELASTICSEARCH),对日志信息快速记录,缓冲,转储及搜索,从而可以实时存储查看日志信息。
实施例2
如图2所示,本发明公开实施例所提供的另一种日志管理方法的流程图,所述方法包括:
S21:监听日志事件;
S22:根据日志事件封装成标准日志信息;
S23:将标准日志信息加入到阻塞队列进行第一次缓冲存储,并设置阙值,超过将舍弃,避免占用内存空间对主程序造成影响;
S24:将阻塞队列中的标准日志信息转移到消息队列进行第二次缓冲存储,并由转储服务将消息队列中的标准日志信息批量转移至存储服务进行永久存储;
需要说明的是,其中缓冲存储为:先在项目运行服务器内存存储,然后在第三方消息队列存储,双重缓冲,可支撑高并发。
S25:设置日志告警事件,将错误级别的错误日志信息加入日志告警事件中;
S26:监听日志告警事件;
S27:根据预设日志告警信息执行监听到的日志告警事件,日志告警信息包括应用名称和接收者信息;
S28:根据应用名称和接收者信息将监听到的错误日志信息发送给指定平台。
S29: 可视化服务查询管理存储服务存储的标准日志信息。
其中转储服务指:无限循环消息队列的标准日志消息,若存在标准日志消息,则批量将标准日志消息转移到存储服务进行永久保存,若不存在标准日志消息则可进行休眠,防止无限循环造成一定浪费。
其中可视化服务指:给管理用户使用的可视化界面操作,用于搜索管理存储服务已存储的标准日志信息。
在具体实践中,标准日志信息包括日志内容、应用名称、应用环境、服务器名称和当前时间,标准日志信息可以用于区分找出是哪个项目节点所打印的日志,也就是说可以查出某个应用在某个环境的某台服务器的所有日志。
在具体实践中,前述存储服务为分布式搜索引擎。
在具体实践中,步骤S201监听日志事件之前,上述方法还包括:设置日志打印方式。LOG4J、LOG4j2和LOGBACK是打印日志信息的三种方式,几乎所有的项目日志信息打印方式都可能是其中的某一种,每种方式存在INFO、DEBUG、WARN和ERROR类型,新建线程打印日志信息到本地文件,不影响业务线程的运行。
消息队列:将日志信息传输到消息队列,其实是充当一个缓冲作用,能够快速传输抗压。日志消息可以以天、小时为单位作为标识分别传输到消息队列中,消息队列可以使用REDIS、KAFKA等第三方消息队列工具。
转储服务:实际是将消息队列中的标准日志信息转移到存储服务ELASTICSEARCH进行存储。
存储服务(ELASTICSEARCH):用于存储标准日志信息,可每天或每时建立一个索引存储日志信息,并且为标准日志信息分类,对外提供查询接口,能够快速搜索出相关的标准日志信息,该存储服务可以由本领域技术人员根据工程需要采用本领域常规技术实现,也可以引用第三方存储服务。
可视化服务:操作都是与日志有关,针对性强,易操作。搜索可通过应用名称、应用环境、日志等级、类名、服务器名称和日期时间及打印内容进行查询,还可进行日志告警通知配置、日志存储删除和统计操作。
为了便于读者理解,下面对本实施例提供的日志管理方法中涉及的几个功能实现做详细说明。
日志信息传输到消息队列的实现过程:
步骤S101:第三方工具消息队列启动后(可单体,哨兵,集群),为服务设置账号密码,处于对外安全可连接状态。
步骤S102: 选择一种日志打印方式,继承追加器APPENDER,重写APPEND方法,发送日志事件,将日志事件转化为标准日志信息,标准日志信息包含应用名称、应用环境、日志等级、类名、服务器名称和日期时间及打印内容。
步骤S103:连接消息队列,判断连接状态,如果无法连接,直接异常捕获不再往后处理。如果已经连上,得到步骤S102的标准日志信息,将其加入到BLOCKQUEUE阻塞队列缓冲存储,为避免阻塞队列数据量过大,可对阻塞队列设置容量阙值。
步骤S104: 根据步骤S103已连上消息队列,然后新建线程池处理线程,无线循环间隔(间隔时间可根据情况设定)处理步骤S103得到的阻塞队列,将步骤S103得到的阻塞队列中的标准日志信息循环转储到消息队列中,其中转储的数量阙值也可设定,到这日志信息已传输到消息队列中。
项目消息队列配置的实现过程:
步骤S201: 选择一种日志打印方式,编辑对应的日志配置文件,设置控制台日志输出追加器,本地文件日志输出追加器。
步骤S202: 嵌入自定义重写的追加器,配置消息队列连接信息,应用名称及应用环境信息,其中应用名称应用环境用于区分日志信息在何处项目打印。
步骤S203: 根据步骤S202,启动项目,查看项目是否已连接上消息队列,控制台输出日志信息,查看消息队列是否存在标准日志信息,如果标准日志信息出现则项目的消息队列配置成功,否则失败。
转储服务将标准日志信息转移到存储服务的实现过程:
步骤S301: 第三方消息队列工具处于安全可连接状态,存储服务ELASTICSEARCH工具处于安全可连接状态,包含集群状态。
步骤S302: 安全连接消息队列,新建线程专门用于循环取出消息队列中的标准日志信息,取出的标准日志信息的量需设定阙值(不是一次性取出,避免将内存撑爆)。
步骤S303: 新建定时任务线程池,设置定时任务线程池间隔时间,执行步骤S302线程,将消息队列取出的标准日志信息存储到存储服务ELASTICSEARCH中,并随即将消息队列中取出的标准日志信息清除。
设置日志告警***的过程:
步骤S401: 建立日志告警的配置中心,包含应用名称、应用环境、报警名称、接收平台、接收者、钩子、错误数量、时间间隔和是否开启状态。
步骤S402: 初始化日志告警的配置,将日志告警配置加载入内存,设置定时加载日志告警配置,以防告警配置修改无法及时使用。
步骤S403: 设置日志告警事件,根据步骤S302从消息队列中取出的标准日志信息,过滤出错误级别日志信息,最后将错误级别错误日志列表信息加入该事件中。
步骤S404: 监听日志告警事件,只要过滤出错误级别的错误日志信息,就将该错误级别的错误日志发布到事件中去。
步骤S405: 执行监听事件,获取步骤S401配置中心数据,进行匹配处理。假如在间隔时间内超过了配置的错误数量,就将错误日志信息发送给接收者,假如此次在规定时间内没有超过配置的错误数量就保存当前状态,下次执行假如超过规定时间就直接放弃删除。
步骤S406: 根据步骤S405发送错误错误日志信息,通过HTTP方式发送给指定平台(钉钉,企业微信,飞书等)钩子的接收者。
可视化服务的查询过程:
步骤S501: 可视化***主要是查看存储服务ELASTICSEARCH中的数据,所以首先必须确保存储服务处于在线可连接状态。
步骤S502: 提供日志搜索查询接口,内部调用存储服务ELASTICSERACH查询接口,搜索条件包含应用名称、应用环境、日志等级、类名、服务器名称、日期时间及日志内容,并设置查询日志信息条数。
步骤S503: 调用S502提供的查询接口,提供人机交互界面,包含应用名称,应用环境、日志等级、类名、服务器名称、日期时间及日志内容。
步骤S504: 用户进入***使用S503提供的人机交互界面,输入应用名称,应用环境、日志等级、类名、服务器名称、日期时间及日志内容相关的值查询搜索,最终把查询结果显现给用户。
步骤S505: 管理日志信息,提供日志容量查询接口,然后通过人机界面年月日查询当天日志容量情况,包含时间、日志条数和日志大小等。提供日志容量删除接口,可通过人机界面根据年月日删除当天日志信息。
传统技术中,项目打印的日志是存储在本地服务器的日志文件中,只是个文件,查询信息要么在本地打开这个文件,要么在本地通过命令去查,非常麻烦,而且随着项目节点集群越来越多,这些日志都是存储在本地文件中,处于分散状态,如果线上出现问题,定位问题是非常困难的,后来就出现在每个节点的本地开启个日志收集服务,专门收集这些日志文件的日志信息进行存储,项目服务与日志收集服务是两个不同的进程,互不干扰的两个服务,而本发明实施例收集日志的方式直接在项目中收集,不需要在每个节点中开启日志收集服务,相当于是一种内嵌的方式,属于同一个进程,它是通过触发日志事件,封装成一种标准的日志信息,先将日志信息放在阻塞队列,然后通过无限循环的方式转移到消息队列,然后通过转储服务,将消息队列中的信息转移到ELASTICSEARCH存储服务中,最后通过可视化服务去查询。
可以理解的是,本实施例提供的技术方案,通过一种安全嵌入,即使发生异常或掉线也不影响主应用程序,在不改变原打印日志信息的情况下,将日志信息像传输到本地文件一样传输到消息队列,也就是通过引入第三方开源工具消息队列和存储搜索引擎(ELASTICSEARCH),对日志信息快速记录,缓冲,转储及搜索,从而可以实时存储查看日志信息。在原项目日志打印不变的情况下,无需改变源代码,只需嵌入相关依赖包,在日志配置文件中追加配置消息队列(集群)信息,将实时打印的日志信息传到消息队列进行集中处理,实现分布式日志收集。 消费消息队列日志信息实时转储到存储服务ELASTICSEARCH方便大数据量查询。 可视化服务易操作查询,无学习成本,可实时查看到当前日志信息,方便管理分布式日志,其中,消息队列能支撑高并发,能起异步削峰的作用,以免服务器宕机,因为要处理的日志太多,尤其在高并发情况下。
实施例3
如图3所示,本发明实施例还提供一种日志管理方法,包括:
S31:接收并存储转储服务发送的标准日志信息,标准日志信息是转储服务从消息队列获取的,消息队列用于临时缓冲项目管理分***的标准日志信息;
S32:接收日志查询请求;
S33:获取并输出日志查询请求对应的标准日志信息。
可以理解的是,本实施例提供的技术方案,通过一种安全嵌入,即使发生异常或掉线也不影响主应用程序,在不改变原打印日志信息的情况下,将日志信息像传输到本地文件一样传输到消息队列,也就是通过引入第三方开源工具消息队列和存储搜索引擎(ELASTICSEARCH),对日志信息快速记录,缓冲,转储及搜索,从而可以实时存储查看日志信息。
实施例4
如图4所示,本发明实施例还提供一种日志管理装置,包括:
日志事件监听模块41,用于监听日志事件;
标准日志生成模块42,用于根据日志事件封装成标准日志信息;
消息队列缓冲模块43,用于将标准日志信息发送到消息队列临时缓冲,并由转储服务将消息队列中的标准日志信息批量转移至存储服务进行永久存储。
在具体实践中,标准日志信息包括日志内容、应用名称、应用环境、服务器名称和当前时间。
在具体实践中,如图4中虚线内容,该装置还包括:
缓冲存储模块44,用于将标准日志信息加入到阻塞队列进行第一次缓冲存储,并设置阙值,超过将舍弃,避免占用内存空间对主程序造成影响;
所消息队列存储模块43为:消息队列存储模块43将阻塞队列中的标准日志信息转移到消息队列进行第二次缓冲存储。
如图4中虚线内容,该装置还包括:
告警事件设置模块45,用于设置日志告警事件,将错误级别的错误日志信息加入日志告警事件中;
告警事件监听模块46,用于监听日志告警事件;
告警事件执行模块47,用于根据预设日志告警信息执行监听到的日志告警事件,日志告警信息包括应用名称和接收者信息;
日志信息发送模块48,用于根据应用名称和和接收者信息将监听到的错误日志信息发送给指定平台。
在具体实践中,上述存储服务可以为分布式搜索引擎。
可以理解的是,本实施例提供的技术方案,通过一种安全嵌入,即使发生异常或掉线也不影响主应用程序,在不改变原打印日志信息的情况下,将日志信息像传输到本地文件一样传输到消息队列,也就是通过引入第三方开源工具消息队列和存储服务搜索引擎,对日志信息快速记录,缓冲,转储及搜索,从而可以实时存储及查看日志信息。
实施例5
如图5所示,本发明实施例还提供一种日志管理装置,包括:
标准日志存储模块51,用于接收并存储转储服务发送的标准日志信息,标准日志信息是存储服务从消息队列获取的,消息队列用于临时缓冲每个项目管理分***的标准日志信息;
查询请求模块52,用于接收日志查询请求;
标准日志获取模块53,用于获取并输出日志查询请求对应的标准日志信息。
可以理解的是,本实施例提供的技术方案,通过一种安全嵌入,即使发生异常或掉线也不影响主应用程序,在不改变原打印日志信息的情况下,将日志信息像传输到本地文件一样传输到消息队列,也就是通过引入第三方开源工具消息队列和存储搜索引擎,对日志信息快速记录,缓冲,转储及搜索,从而可以实时存储查看日志信息。
实施例6
如图6所示,本发明实施例还提供一种日志管理***,包括:
项目管理分***61,用于监听日志事件,根据日志事件封装成标准日志信息,将标准日志信息加入到消息队列临时缓冲,并由转储服务将消息队列中的标准日志信息批量转向存储服务永久存储;
存储服务62,接收项目管理分***发送的消息队列中的标准日志信息,并向存储管理分***发送标准日志信息;
存储管理分***63,接收并存储存储服务发送的标准日志信息,接收日志查询请求;获取并输出日志查询请求对应的标准日志信息。
可以理解的是,本实施例提供的技术方案,通过一种安全嵌入,即使发生异常或掉线也不影响主应用程序,在不改变原打印日志信息的情况下,将日志信息像传输到本地文件一样传输到消息队列,也就是通过引入第三方开源工具消息队列和存储搜索引擎,对日志信息快速记录,缓冲,转储及搜索,从而可以实时存储查看日志信息。
实施例7
基于同一技术构思,本申请实施例还提供了一种计算机设备,包括存储器1和处理器2,如图7所示,所述存储器1存储有计算机程序,所述处理器2执行所述计算机程序时实现上述任一项所述的日志管理方法。
其中,存储器1至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储器1在一些实施例中可以是OTT视频业务监控***的内部存储单元,例如硬盘。存储器1在另一些实施例中也可以是OTT视频业务监控***的外部存储设备,例如插接式硬盘,智能存储卡(Smart Media Card, SMC),安全数字(Secure Digital, SD)卡,闪存卡(Flash Card)等。进一步地,存储器1还可以既包括OTT视频业务监控***的内部存储单元也包括外部存储设备。存储器1不仅可以用于存储安装于OTT视频业务监控***的应用软件及各类数据,例如OTT视频业务监控程序的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
处理器2在一些实施例中可以是一中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行存储器1中存储的程序代码或处理数据,例如执行OTT视频业务监控程序等。
可以理解的是,本实施例提供的技术方案,通过一种安全嵌入,即使发生异常或掉线也不影响主应用程序,在不改变原打印日志信息的情况下,将日志信息像传输到本地文件一样传输到消息队列,也就是通过引入第三方开源工具消息队列和存储搜索引擎(ELASTICSEARCH),对日志信息快速记录,缓冲,转储及搜索,从而可以实时存储查看日志信息。
本发明公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中所述的日志管理方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。
本发明公开实施例所提供的日志管理方法的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行上述方法实施例中所述的日志管理方法的步骤,具体可参见上述方法实施例,在此不再赘述。
本发明公开实施例还提供一种计算机程序,该计算机程序被处理器执行时实现前述实施例的任意一种方法。该计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software DevelopmentKit,SDK)等等。
可以理解的是,上述各实施例中相同或相似部分可以相互参考,在一些实施例中未详细说明的内容可以参见其他实施例中相同或相似的内容。
需要说明的是,在本发明的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,“多个”的含义是指至少两个。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行***执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (10)
1.一种日志管理方法,其特征在于,包括:
监听日志事件;
根据所述日志事件封装成标准日志信息;
将所述标准日志信息发送到消息队列临时缓冲,并由转储服务将消息队列中的所述标准日志信息批量转移至存储服务进行永久存储。
2.根据权利要求1所述的日志管理方法,其特征在于,在所述将所述标准日志信息发送到消息队列临时缓冲之前,还包括:
将所述标准日志信息加入到阻塞队列进行第一次缓冲存储,并设置阙值,超过将舍弃;
所述将所述标准日志信息加入到消息队列临时缓冲为:将所述阻塞队列中的所述标准日志信息转移到消息队列进行第二次缓冲存储。
3.根据权利要求2所述的日志管理方法,其特征在于,所述标准日志信息包括日志内容、应用名称、应用环境、服务器名称和当前时间。
4.根据权利要求3所述的日志管理方法,其特征在于,还包括:
设置日志告警事件,将错误级别的错误日志信息加入所述日志告警事件中;
监听所述日志告警事件;
根据预设日志告警信息执行监听到的所述日志告警事件,所述日志告警信息包括应用名称和接收者信息;
根据所述应用名称和接收者信息将监听到的所述错误日志信息发送给指定平台。
5.根据权利要求4所述的日志管理方法,其特征在于,所述存储服务为分布式搜索引擎。
6.一种日志管理方法,其特征在于包括:
接收并存储转储服务发送的标准日志信息,所述标准日志信息是所述转储服务从消息队列获取的,所述消息队列用于临时缓冲项目管理分***的所述标准日志信息;
接收日志查询请求;
获取并输出所述日志查询请求对应的所述标准日志信息。
7.一种日志管理装置,其特征在于,包括:
日志事件监听模块,用于监听日志事件;
标准日志生成模块,用于根据所述日志事件封装成标准日志信息;
消息队列缓冲模块,用于将所述标准日志信息发送到消息队列临时缓冲,并由转储服务将消息队列中的所述标准日志信息批量转移至存储服务进行永久存储。
8.一种日志管理装置,其特征在于,包括:
标准日志存储模块,用于接收并存储转储服务发送的标准日志信息,所述标准日志信息是存储服务从消息队列获取的,所述消息队列用于临时缓冲每个项目管理分***的所述标准日志信息;
查询请求模块,用于接收日志查询请求;
标准日志获取模块,用于获取并输出所述日志查询请求对应的所述标准日志信息。
9.一种日志管理***,其特征在于,包括:
项目管理分***,用于监听日志事件,根据所述日志事件封装成标准日志信息,将所述标准日志信息发送到消息队列临时缓冲,并由转储服务将消息队列中的所述标准日志信息批量转向存储服务永久存储;
所述存储服务,接收所述项目管理分***发送的所述消息队列中的所述标准日志信息,并向存储管理分***发送所述标准日志信息;
所述存储管理分***,接收并存储所述存储服务发送的所述标准日志信息,接收日志查询请求,获取并输出所述日志查询请求对应的标准日志信息。
10.一种计算机设备,其特征在于,包括处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当计算机设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如权利要求1至6中任一项所述日志管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210920870.5A CN114978885A (zh) | 2022-08-02 | 2022-08-02 | 一种日志管理方法、装置、计算机设备及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210920870.5A CN114978885A (zh) | 2022-08-02 | 2022-08-02 | 一种日志管理方法、装置、计算机设备及*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114978885A true CN114978885A (zh) | 2022-08-30 |
Family
ID=82969270
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210920870.5A Pending CN114978885A (zh) | 2022-08-02 | 2022-08-02 | 一种日志管理方法、装置、计算机设备及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114978885A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115755709A (zh) * | 2022-11-25 | 2023-03-07 | 北京北方华创微电子装备有限公司 | 运行环境数据采集方法、装置、电子设备及存储介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070061864A1 (en) * | 2005-09-12 | 2007-03-15 | International Business Machines Corporation | Computer-implemented method, system, and program product for managing log-in strikes |
US20120331332A1 (en) * | 2011-06-22 | 2012-12-27 | International Business Machines Corporation | Restarting Event And Alert Analysis After A Shutdown In A Distributed Processing System |
CN105119945A (zh) * | 2015-09-24 | 2015-12-02 | 西安未来国际信息股份有限公司 | 一种用于安全管理中心的日志关联分析方法 |
CN107544866A (zh) * | 2016-06-29 | 2018-01-05 | 北京忆恒创源科技有限公司 | 一种日志更新方法与装置 |
CN108519942A (zh) * | 2018-04-11 | 2018-09-11 | 车巴达(苏州)网络科技有限公司 | 一种日志分析*** |
CN108984566A (zh) * | 2017-06-02 | 2018-12-11 | 伊姆西Ip控股有限责任公司 | 用于文件***日志的方法和设备 |
CN109525448A (zh) * | 2019-01-10 | 2019-03-26 | 北京智信未来信息技术有限公司 | 日志数据采集***及方法 |
CN111522786A (zh) * | 2020-04-21 | 2020-08-11 | 中国建设银行股份有限公司 | 日志处理***及方法 |
CN112118283A (zh) * | 2020-07-30 | 2020-12-22 | 爱普(福建)科技有限公司 | 一种基于多级缓存的数据处理方法及*** |
CN114721722A (zh) * | 2022-06-06 | 2022-07-08 | 深流微智能科技(深圳)有限公司 | 多级高速缓存***及电子设备 |
-
2022
- 2022-08-02 CN CN202210920870.5A patent/CN114978885A/zh active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070061864A1 (en) * | 2005-09-12 | 2007-03-15 | International Business Machines Corporation | Computer-implemented method, system, and program product for managing log-in strikes |
US20120331332A1 (en) * | 2011-06-22 | 2012-12-27 | International Business Machines Corporation | Restarting Event And Alert Analysis After A Shutdown In A Distributed Processing System |
CN105119945A (zh) * | 2015-09-24 | 2015-12-02 | 西安未来国际信息股份有限公司 | 一种用于安全管理中心的日志关联分析方法 |
CN107544866A (zh) * | 2016-06-29 | 2018-01-05 | 北京忆恒创源科技有限公司 | 一种日志更新方法与装置 |
CN108984566A (zh) * | 2017-06-02 | 2018-12-11 | 伊姆西Ip控股有限责任公司 | 用于文件***日志的方法和设备 |
CN108519942A (zh) * | 2018-04-11 | 2018-09-11 | 车巴达(苏州)网络科技有限公司 | 一种日志分析*** |
CN109525448A (zh) * | 2019-01-10 | 2019-03-26 | 北京智信未来信息技术有限公司 | 日志数据采集***及方法 |
CN111522786A (zh) * | 2020-04-21 | 2020-08-11 | 中国建设银行股份有限公司 | 日志处理***及方法 |
CN112118283A (zh) * | 2020-07-30 | 2020-12-22 | 爱普(福建)科技有限公司 | 一种基于多级缓存的数据处理方法及*** |
CN114721722A (zh) * | 2022-06-06 | 2022-07-08 | 深流微智能科技(深圳)有限公司 | 多级高速缓存***及电子设备 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115755709A (zh) * | 2022-11-25 | 2023-03-07 | 北京北方华创微电子装备有限公司 | 运行环境数据采集方法、装置、电子设备及存储介质 |
CN115755709B (zh) * | 2022-11-25 | 2023-08-18 | 北京北方华创微电子装备有限公司 | 运行环境数据采集方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7340578B1 (en) | Method and apparatus for maintaining an accurate inventory of storage capacity in a clustered data processing system | |
CN107704360B (zh) | 监控数据的处理方法、设备、服务器及存储介质 | |
US6397244B1 (en) | Distributed data processing system and error analysis information saving method appropriate therefor | |
US11706080B2 (en) | Providing dynamic serviceability for software-defined data centers | |
US10747732B2 (en) | Virtual database administrator | |
US20080155091A1 (en) | Remote monitoring in a computer network | |
EP3820107A1 (en) | Method and device for transmitting data, and method and apparatus for receiving data | |
CN110895488B (zh) | 任务调度方法及装置 | |
CN111930706B (zh) | 基于远程调用的分布式网络文件存储***和方法 | |
CN112130959B (zh) | 一种虚拟机的保护***及方法 | |
CN110580168A (zh) | 信息化资产管理***及其升级方法 | |
CN111565135A (zh) | 监控服务器运行的方法、监控服务器和存储介质 | |
CN110659259A (zh) | 数据库迁移方法、服务器以及计算机存储介质 | |
CN114978885A (zh) | 一种日志管理方法、装置、计算机设备及*** | |
CN111782431A (zh) | 一种异常的处理方法、装置、终端及存储介质 | |
CN114610567A (zh) | 容器监控方法、网络设备及存储介质 | |
CN110620798A (zh) | Ftp连接的控制方法、***、设备和存储介质 | |
CN112306871A (zh) | 数据处理方法、装置、设备及存储介质 | |
JP2012089049A (ja) | 計算機システム及びサーバ | |
CN117312262A (zh) | 一种业务数据传输与监控管理方法 | |
CN115766715B (zh) | 一种超融合集群监控方法和*** | |
JP2007034416A (ja) | ログデータを管理する情報処理システム、ログデータ管理方法およびプログラム | |
CN111611142A (zh) | 信息收集方法、装置及存储介质 | |
JP5301499B2 (ja) | 転送装置、転送方法及び転送プログラム | |
CN112134951A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20220830 |
|
RJ01 | Rejection of invention patent application after publication |