CN110955578A - 基于宿主机的日志收集方法、装置、计算机设备及存储介质 - Google Patents
基于宿主机的日志收集方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN110955578A CN110955578A CN201911177457.9A CN201911177457A CN110955578A CN 110955578 A CN110955578 A CN 110955578A CN 201911177457 A CN201911177457 A CN 201911177457A CN 110955578 A CN110955578 A CN 110955578A
- Authority
- CN
- China
- Prior art keywords
- log
- host
- container
- directory
- host machine
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3065—Monitoring arrangements determined by the means or processing involved in reporting the monitored data
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明涉及一种基于宿主机的日志收集方法、装置、计算机设备及存储介质,方法包括以下步骤:将容器中的应用程序的日志写入容器的日志目录;将每个容器的日志目录挂载到运行该容器的宿主机的固定目录;在每个宿主机中部署日志收集工具,收集对应宿主机的固定目录中存储的日志数据。本方案通过先将应用程序的日志写入到容器的日志目录中,再将容器的日志目录挂载到宿主机的固定目录中,通过收集宿主机中固定目录中的日志数据,无需设置辅助容器进行日志收集,避免了通过日志收集资源消耗大的问题;同时通过在宿主机上设置一个工具即可精准收集到所有容器和应用程序的日志,能够对日志数据进行更好的收集。
Description
技术领域
本发明涉及系统部署领域,更具体地说是指一种基于宿主机的日志收集方法、装置、计算机设备及存储介质。
背景技术
Kubernetes,简称K8s,是用8代替8个字符“ubernete”而成的缩写。应用运行在kubernetes集群之上,实现服务的扩容、缩容,执行滚动更新以及在不同版本的应用程序之间调度流量以测试功能或回滚有问题的部署。
kubernetes集群上的容器化应用程序的日志默认存储在运行该容器的宿主机上,且具体存储路径为该宿主机docker组件的日志目录内,为了收集应用程序的日志,传统的日志收集有两种方式:
1、每个pod内,不但要部署一个业务容器,还需要额外部署一个日志agent的辅助容器来收集该业务容器的日志,当k8s集群规模庞大,对应的pod数量非常多时,日志agent的辅助容器数量也会随之增多,缺点是额外的资源消耗巨大。
2、在k8s集群的每个宿主机上部署一个日志agent来收集docker的日志目录内所有日志文件,这样就可以将该宿主机上运行的所有容器日志都收集到,缺点是不能明确的按照容器的应用程序名称来精确收集日志。
上述两种传统方式各有缺点,只能适用于特定的应用场景,无法在兼顾资源利用率的同时,更优的收集日志。
发明内容
本发明的目的在于克服现有技术的缺陷,提供一种基于宿主机的日志收集方法、装置、计算机设备及存储介质,用于实现精准实时日志收集。
为实现上述目的,本发明采用以下技术方案:一种基于宿主机的日志收集方法,其特征在于,包括以下步骤:
将容器中的应用程序的日志写入容器的日志目录;
将每个容器的日志目录挂载到运行该容器的宿主机的固定目录;
在每个宿主机中部署日志收集工具,收集对应宿主机的固定目录中存储的日志数据。
其进一步技术方案为:所述将容器中的应用程序的日志写入容器的日志目录的步骤包括:
将单笔交易请求的日志切割为单个日志文件;
将所有交易请求的单个日志文件写容器的日志目录。
其进一步技术方案为:所述将每个容器的日志目录挂载到运行该容器的宿主机的固定目录的步骤包括:
通过Kubernetes集群的hostpath方式,将容器的日志目录挂载到对应的宿主机的固定目录。
其进一步技术方案为:所述在每个宿主机中部署日志收集工具,收集对应宿主机的固定目录中存储的日志数据的步骤之后包括:
对收集到的日志数据进行分析处理,并进行可视化展示。
其进一步技术方案为:所述对收集到的日志数据进行分析处理,并进行可视化展示的步骤包括:
通过logstash将日志数据标准化;
将标准化的日志数据输出到Elasticsearch存储;
通过Kibana可视化展示标准化的日志数据。
本发明还提出了一种基于宿主机的日志收集装置,包括:
日志写入单元,用于将容器中的应用程序的日志写入容器的日志目录;
日志挂载单元,用于将每个容器的日志目录挂载到运行该容器的宿主机的固定目录;
日志收集单元,用于在每个宿主机中部署日志收集工具,收集对应宿主机的固定目录中存储的日志数据。
其进一步技术方案为:所述日志写入单元包括日志切割模块和日志写入模块;
所述日志切割模块,用于将单笔交易请求的日志切割为单个日志文件;
所述日志写入模块,用于将所有交易请求的单个日志文件写容器的日志目录。
其进一步技术方案为:还包括分析处理单元,用于对收集到的日志数据进行分析处理,并进行可视化展示。
本发明还提出了一种计算机设备,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如上中任一项所述的基于宿主机的日志收集方法。
本发明还提出了一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现如上中任一项所述的基于宿主机的日志收集方法。
本发明与现有技术相比的有益效果是:本发明通过先将应用程序的日志写入到容器的日志目录中,再将容器的日志目录挂载到宿主机的固定目录中,通过收集宿主机中固定目录中的日志数据,无需设置辅助容器进行日志收集,避免了通过日志收集资源消耗大的问题;同时通过在宿主机上设置一个工具即可精准收集到所有容器和应用程序的日志,能够对日志数据进行更好的收集。
下面结合附图和具体实施例对本发明作进一步描述。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种基于宿主机的日志收集方法的应用场景示意图;
图2为本发明实施例提供的一种基于宿主机的日志收集方法的流程示意图;
图3为本发明实施例提供的一种基于宿主机的日志收集方法的子流程示意图;
图4为本发明另一实施例提供的一种基于宿主机的日志收集方法的流程示意图;
图5为本发明另一实施例提供的一种基于宿主机的日志收集方法的子流程示意图;
图6为本发明实施例提供的一种基于宿主机的日志收集装置的示意性框图;
图7为本发明实施例提供的一种基于宿主机的日志收集装置的日志写入单元的示意性框图;
图8为本发明另一实施例提供的一种基于宿主机的日志收集装置的示意性框图;
图9为本发明另一实施例提供的一种基于宿主机的日志收集装置的分析处理单元的示意性框图;
图10为本发明实施例提供的计算机设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
请参阅图1和图2,图1为本发明实施例提供的基于宿主机的日志收集方法的应用场景示意图。图2为本发明实施例提供的基于宿主机的日志收集方法的示意性流程图。该基于宿主机的日志收集方法应用于服务器中,该服务器与终端进行数据交互,并收集kubernetes集群的宿主机的日志数据。
图2是本发明实施例提供的基于宿主机的日志收集方法的流程示意图。如图2所示,该方法包括以下步骤S110至S130。.
S110、将容器中的应用程序的日志写入容器的日志目录。
在本实施例中,Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的Linux或Windows机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。docker用于运行容器。Pod是kubernetes集群的基础单元,是由用户创建或部署的最小组件,也是kubernetes集群上运行容器化应用的资源对象。容器中运行有应用程序,应用程序的日志可以存储于容器的日志目录中,可以通过收集业务容器的日志,进而对宿主机的日志数据进行分析整理。
参阅图3,在一实施例中,步骤S110包括步骤S111和S112。
S111、将单笔交易请求的日志切割为单个日志文件。
S112、将所有交易请求的单个日志文件写容器的日志目录。
在本实施例中,将单笔交易请求的日志切割为单个日志文件是为了在定位问题的时,能够一次性找到单笔交易请求的所有相关日志,精确定位,减少回溯问题时查找日志的时间。
S120、将每个容器的日志目录挂载到运行该容器的宿主机的固定目录。
在本实施例中,宿主机中设置有用于存储日志数据的固定目录,可以将宿主机内运行的所有容器的日志数据全部通过hostpath方式,挂载于宿主机中的固定目录中,通过获取宿主机中固定目录,即可进而获取到运行与该主机的所有容器,及所有运行于对应容器内的应用程序的日志数据。具体的,Hostpath是kubernetes集群的一种本地存储卷,用于将宿主机的文件或者目录映射到pod内部,Hostpath方式是指通过在创建pod的配置文件中加入hostpath存储卷的相关设置,将宿主机的固定目录映射到pod容器内的固定目录。
在一实施例中,步骤S120包括步骤S121。
S121、通过Kubernetes集群的hostpath方式,将容器的日志目录挂载到对应的宿主机的固定目录。
S130、在每个宿主机中部署日志收集工具,收集对应宿主机的固定目录中存储的日志数据。
在本实施例中,通过Kubernetes集群的hostpath方式,将容器的日志目录挂载到对应的宿主机的固定目录之后,只需要在对应的宿主机中部署一个日志收集工具(日志agent),由日志收集工具即可统一收集挂载到该宿主机上的固定目录,该固定目录包含了宿主机承载的所有容器的日志,实现一个日志收集工具同时收集该宿主机上多个容器日志的目的,通过在宿主机上设置一个工具即可精准收集到所有容器和应用程序的日志,能够对日志数据进行更好的收集。
具体的日志收集工具为Filebeat,Filebeat是一种轻量级的日志收集工具,可以用来收集日志文件,并传输到后端的logstash。
本方案通过先将应用程序的日志写入到容器的日志目录中,再将容器的日志目录挂载到宿主机的固定目录中,通过收集宿主机中固定目录中的日志数据,无需设置辅助容器进行日志收集,避免了通过日志收集资源消耗大的问题;同时通过在宿主机上设置一个工具即可精准收集到所有容器和应用程序的日志,能够对日志数据进行更好的收集。
图4是本发明另一实施例提供的一种基于宿主机的日志收集方法的流程示意图。如图4所示,本实施例的基于宿主机的日志收集方法包括步骤S210-S240。其中步骤S210-S230与上述实施例中的步骤S110-S130类似,在此不再赘述。下面详细说明本实施例中所增加的步骤S240。
S240、对收集到的日志数据进行分析处理,并进行可视化展示。
在本实施例中,在收集到宿主机上的日志数据之后,将日志数据发送到ELK框架进行进一步地分析处理,并最终输出可视化的结果给到用户,使得用户对于日志数据有更直观的了解。
ELK是一个开源的日志分析框架,ELK是Elasticsearch、Logstash、Kibana的简称,这三者是核心套件,但并非全部。
其中,Elasticsearch是实时全文搜索和分析引擎,提供搜集、分析、存储数据三大功能;是一套开放REST和JAVA API等结构提供高效搜索功能,可扩展的分布式系统。它构建于Apache Lucene搜索引擎库之上。
Logstash是一个用来搜集、分析、过滤日志的工具。它支持几乎任何类型的日志,包括系统日志、错误日志和自定义应用程序日志。它可以从许多来源接收日志,这些来源包括syslog、消息传递(例如RabbitMQ)和JMX,它能够以多种方式输出数据,包括电子邮件、websockets和Elasticsearch。
Kibana是一个基于Web的图形界面,用于搜索、分析和可视化存储在Elasticsearch指标中的日志数据。它利用Elasticsearch的REST接口来检索数据,不仅允许用户创建他们自己的数据的定制仪表板视图,还允许他们以特殊的方式查询和过滤数据
参阅图5,在一实施例中,步骤S240包括步骤S241-S243。
S241、通过logstash将日志数据标准化。
S242、将标准化的日志数据输出到Elasticsearch存储。
S243、通过Kibana可视化展示标准化的日志数据。
在一实施例中,对于步骤S241-S243日志收集工具收集到日志数据之后,将日志数据传输给后端的logstash,logstash对接收到的日志数据进行数据标准化,并将标准化后的日志数据输出到Elasticsearch存储,并通过Kibana来可视化展示,最终输出可视化的结果给到用户,使得用户对于日志数据有更直观的了解。
日志数据标准化是指在使用logstash收集日志时,将日志内容按照预先设定的匹配规则分解为多个字段,实现标准化。日志数据标准化的作用是,标准化后的日志便于统计分析,和问题的定位跟踪。
本方案通过先将应用程序的日志写入到容器的日志目录中,再将容器的日志目录挂载到宿主机的固定目录中,通过收集宿主机中固定目录中的日志数据,无需设置辅助容器进行日志收集,避免了通过日志收集资源消耗大的问题;同时通过在宿主机上设置一个工具即可精准收集到所有容器和应用程序的日志,能够对日志数据进行更好的收集。
图6是本发明实施例提供的一种基于宿主机的日志收集装置的示意性框图。如图6所示,对应于以上基于宿主机的日志收集方法,本发明还提供一种基于宿主机的日志收集装置。该基于宿主机的日志收集装置包括用于执行上述基于宿主机的日志收集方法的单元,该装置可以被配置于台式电脑、平板电脑、手提电脑、等终端中。具体地,请参阅图5,该基于宿主机的日志收集装置包括日志写入单元10,日志挂载单元20以及日志收集单元30。
日志写入单元10,用于将容器中的应用程序的日志写入容器的日志目录。
在本实施例中,Pod是kubernetes集群的基础单元,是由用户创建或部署的最小组件,也是kubernetes集群上运行容器化应用的资源对象。容器中运行有应用程序,应用程序的日志可以存储于容器的日志目录中,可以通过收集业务容器的日志,进而对宿主机的日志数据进行分析整理。
参阅图7,在一实施例中,日志写入单元10包括日志切割模块11和日志写入模块12。
日志切割模块11,用于将单笔交易请求的日志切割为单个日志文件。
日志写入模块12,用于将所有交易请求的单个日志文件写容器的日志目录。
日志挂载单元20,用于将每个容器的日志目录挂载到运行该容器的宿主机的固定目录。
在本实施例中,宿主机中设置有用于存储日志数据的固定目录,可以将宿主机内运行的所有容器的日志数据全部通过hostpath方式,挂载于宿主机中的固定目录中,通过获取宿主机中固定目录,即可进而获取到运行与该主机的所有容器,及所有运行于对应容器内的应用程序的日志数据。具体的,Hostpath是kubernetes集群的一种本地存储卷,用于将宿主机的文件或者目录映射到pod内部。
在一实施例中,日志挂载单元20具体用于通过Kubernetes集群的hostpath方式,将容器的日志目录挂载到对应的宿主机的固定目录。
日志收集单元30,用于在每个宿主机中部署日志收集工具,收集对应宿主机的固定目录中存储的日志数据。
在本实施例中,通过Kubernetes集群的hostpath方式,将容器的日志目录挂载到对应的宿主机的固定目录之后,只需要在对应的宿主机中部署一个日志收集工具(日志agent),由日志收集工具即可统一收集挂载到该宿主机上的固定目录,该固定目录包含了宿主机承载的所有容器的日志,实现一个日志收集工具同时收集该宿主机上多个容器日志的目的,通过在宿主机上设置一个工具即可精准收集到所有容器和应用程序的日志,能够对日志数据进行更好的收集。
具体的日志收集工具为Filebeat,Filebeat是一种轻量级的日志收集工具,可以用来收集日志文件,并传输到后端的logstash。
本方案通过先将应用程序的日志写入到容器的日志目录中,再将容器的日志目录挂载到宿主机的固定目录中,通过收集宿主机中固定目录中的日志数据,无需设置辅助容器进行日志收集,避免了通过日志收集资源消耗大的问题;同时通过在宿主机上设置一个工具即可精准收集到所有容器和应用程序的日志,能够对日志数据进行更好的收集。
图8是本发明另一实施例提供的一种基于宿主机的日志收集装置的示意性框图。如图8所示,本实施例的基于宿主机的日志收集装置是上述实施例的基础上增加了分析处理单元40。
分析处理单元40,用于对收集到的日志数据进行分析处理,并进行可视化展示。
在本实施例中,在收集到宿主机上的日志数据之后,将日志数据发送到ELK框架进行进一步地处理,并最终输出可视化的结果给到用户,使得用户对于日志数据有更直观的了解。
ELK是一个开源的日志分析框架,是Elasticsearch、Logstash、Kibana的简称,这三者是核心套件,但并非全部。
其中,Elasticsearch是实时全文搜索和分析引擎,提供搜集、分析、存储数据三大功能;是一套开放REST和JAVA API等结构提供高效搜索功能,可扩展的分布式系统。它构建于Apache Lucene搜索引擎库之上。
Logstash是一个用来搜集、分析、过滤日志的工具。它支持几乎任何类型的日志,包括系统日志、错误日志和自定义应用程序日志。它可以从许多来源接收日志,这些来源包括syslog、消息传递(例如RabbitMQ)和JMX,它能够以多种方式输出数据,包括电子邮件、websockets和Elasticsearch。
Kibana是一个基于Web的图形界面,用于搜索、分析和可视化存储在Elasticsearch指标中的日志数据。它利用Elasticsearch的REST接口来检索数据,不仅允许用户创建他们自己的数据的定制仪表板视图,还允许他们以特殊的方式查询和过滤数据
参阅图9,在一实施例中,分析处理单元40包括标准化模块41,存储模块42和可视化模块43。
标准化模块41,用于通过logstash将日志数据标准化。
存储模块42,用于将标准化的日志数据输出到Elasticsearch存储。
可视化模块43,用于通过Kibana可视化展示标准化的日志数据。
在一实施例中,对于标准化模块41、存储模块42和可视化模块43,日志收集工具收集到日志数据之后,将日志数据传输给后端的logstash,logstash对接收到的日志数据进行数据标准化,并将标准化后的日志数据输出到Elasticsearch存储,并通过Kibana来可视化展示,最终输出可视化的结果给到用户,使得用户对于日志数据有更直观的了解。
需要说明的是,所属领域的技术人员可以清楚地了解到,上述基于宿主机的日志收集装置和各单元的具体实现过程,可以参考前述方法实施例中的相应描述,为了描述的方便和简洁,在此不再赘述。
请参阅图10,图10是本申请实施例提供的一种计算机设备的示意性框图。该计算机设备500可以是终端,也可以是服务器,其中,终端可以是智能手机、平板电脑、笔记本电脑、台式电脑、个人数字助理和穿戴式设备等具有通信功能的电子设备。服务器可以是独立的服务器,也可以是多个服务器组成的服务器集群。
参阅图10,该计算机设备500包括通过系统总线501连接的处理器502、存储器和网络接口505,其中,存储器可以包括非易失性存储介质503和内存储器504。
该非易失性存储介质503可存储操作系统5031和计算机程序5032。该计算机程序5032包括程序指令,该程序指令被执行时,可使得处理器502执行一种基于宿主机的日志收集方法。
该处理器502用于提供计算和控制能力,以支撑整个计算机设备500的运行。
该内存储器504为非易失性存储介质503中的计算机程序5032的运行提供环境,该计算机程序5032被处理器502执行时,可使得处理器502执行一种基于宿主机的日志收集方法。
该网络接口505用于与其它设备进行网络通信。本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备500的限定,具体的计算机设备500可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器502用于运行存储在存储器中的计算机程序5032。
应当理解,在本申请实施例中,处理器502可以是中央处理单元(CentralProcessing Unit,CPU),该处理器502还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本领域普通技术人员可以理解的是实现上述实施例的方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成。该计算机程序包括程序指令,计算机程序可存储于一存储介质中,该存储介质为计算机可读存储介质。该程序指令被该计算机系统中的至少一个处理器执行,以实现上述方法的实施例的流程步骤。
因此,本发明还提供一种存储介质。该存储介质可以为计算机可读存储介质。该存储介质存储有计算机程序。
所述存储介质可以是U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的计算机可读存储介质。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的。例如,各个单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。本发明实施例装置中的单元可以根据实际需要进行合并、划分和删减。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,终端,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种基于宿主机的日志收集方法,其特征在于,包括以下步骤:
将容器中的应用程序的日志写入容器的日志目录;
将每个容器的日志目录挂载到运行该容器的宿主机的固定目录;
在每个宿主机中部署日志收集工具,收集对应宿主机的固定目录中存储的日志数据。
2.根据权利要求1所述的基于宿主机的日志收集方法,其特征在于,所述将容器中的应用程序的日志写入容器的日志目录的步骤,包括:
将单笔交易请求的日志切割为单个日志文件;
将所有交易请求的单个日志文件写容器的日志目录。
3.根据权利要求1所述的基于宿主机的日志收集方法,其特征在于,所述将每个容器的日志目录挂载到运行该容器的宿主机的固定目录的步骤,包括:
通过Kubernetes集群的hostpath方式,将容器的日志目录挂载到对应的宿主机的固定目录。
4.根据权利要求1所述的基于宿主机的日志收集方法,其特征在于,所述在每个宿主机中部署日志收集工具,收集对应宿主机的固定目录中存储的日志数据的步骤之后,包括:
对收集到的日志数据进行分析处理,并进行可视化展示。
5.根据权利要求4所述的基于宿主机的日志收集方法,其特征在于,所述对收集到的日志数据进行分析处理,并进行可视化展示的步骤,包括:
通过logstash将日志数据标准化;
将标准化的日志数据输出到Elasticsearch存储;
通过Kibana可视化展示标准化的日志数据。
6.一种基于宿主机的日志收集装置,其特征在于,包括:
日志写入单元,用于将容器中的应用程序的日志写入容器的日志目录;
日志挂载单元,用于将每个容器的日志目录挂载到运行该容器的宿主机的固定目录;
日志收集单元,用于在每个宿主机中部署日志收集工具,收集对应宿主机的固定目录中存储的日志数据。
7.根据权利要求6所述的基于宿主机的日志收集装置,其特征在于,所述日志写入单元包括日志切割模块和日志写入模块;
所述日志切割模块,用于将单笔交易请求的日志切割为单个日志文件;
所述日志写入模块,用于将所有交易请求的单个日志文件写容器的日志目录。
8.根据权利要求6所述的基于宿主机的日志收集装置,其特征在于,还包括分析处理单元,用于对收集到的日志数据进行分析处理,并进行可视化展示。
9.一种计算机设备,其特征在于,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至5中任一项所述的基于宿主机的日志收集方法。
10.一种存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现如权利要求1至5中任一项所述的基于宿主机的日志收集方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911177457.9A CN110955578A (zh) | 2019-11-26 | 2019-11-26 | 基于宿主机的日志收集方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911177457.9A CN110955578A (zh) | 2019-11-26 | 2019-11-26 | 基于宿主机的日志收集方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110955578A true CN110955578A (zh) | 2020-04-03 |
Family
ID=69976980
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911177457.9A Pending CN110955578A (zh) | 2019-11-26 | 2019-11-26 | 基于宿主机的日志收集方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110955578A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111782498A (zh) * | 2020-07-29 | 2020-10-16 | 杭州玳数科技有限公司 | 基于kuberntes的flink任务日志elk采集方法和系统 |
CN111966465A (zh) * | 2020-08-21 | 2020-11-20 | 苏州浪潮智能科技有限公司 | 一种实时修改宿主机配置参数的方法、系统、设备及介质 |
CN112905537A (zh) * | 2021-02-20 | 2021-06-04 | 北京百度网讯科技有限公司 | 文件处理方法、装置、电子设备和存储介质 |
CN112948056A (zh) * | 2021-03-05 | 2021-06-11 | 浪潮云信息技术股份公司 | 一种针对kubeedge的edge节点上log日志的收集方法及系统 |
CN113157658A (zh) * | 2021-05-13 | 2021-07-23 | 心动互动娱乐有限公司 | 客户端日志收集分发方法、装置及计算机设备 |
CN113326004A (zh) * | 2021-06-10 | 2021-08-31 | 深圳市移卡科技有限公司 | 云计算环境下高效日志集中化方法及设备 |
CN113760638A (zh) * | 2020-10-15 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 一种基于kubernetes集群的日志服务方法和装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104572781A (zh) * | 2013-10-29 | 2015-04-29 | 中国银联股份有限公司 | 一种交易日志产生方法和装置 |
CN106383852A (zh) * | 2016-08-30 | 2017-02-08 | 中国民生银行股份有限公司 | 基于Docker容器的日志获取方法和装置 |
CN108153649A (zh) * | 2018-01-23 | 2018-06-12 | 北京粉笔蓝天科技有限公司 | docker容器中应用日志的获取及查看方法及其装置 |
CN109491859A (zh) * | 2018-10-16 | 2019-03-19 | 华南理工大学 | 针对Kubernetes集群中容器日志的收集方法 |
CN109660397A (zh) * | 2018-12-21 | 2019-04-19 | 北京百度网讯科技有限公司 | 用于采集日志的系统、方法和装置 |
CN110309130A (zh) * | 2018-03-21 | 2019-10-08 | 中国人民财产保险股份有限公司 | 一种用于主机性能监控的方法及装置 |
-
2019
- 2019-11-26 CN CN201911177457.9A patent/CN110955578A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104572781A (zh) * | 2013-10-29 | 2015-04-29 | 中国银联股份有限公司 | 一种交易日志产生方法和装置 |
CN106383852A (zh) * | 2016-08-30 | 2017-02-08 | 中国民生银行股份有限公司 | 基于Docker容器的日志获取方法和装置 |
CN108153649A (zh) * | 2018-01-23 | 2018-06-12 | 北京粉笔蓝天科技有限公司 | docker容器中应用日志的获取及查看方法及其装置 |
CN110309130A (zh) * | 2018-03-21 | 2019-10-08 | 中国人民财产保险股份有限公司 | 一种用于主机性能监控的方法及装置 |
CN109491859A (zh) * | 2018-10-16 | 2019-03-19 | 华南理工大学 | 针对Kubernetes集群中容器日志的收集方法 |
CN109660397A (zh) * | 2018-12-21 | 2019-04-19 | 北京百度网讯科技有限公司 | 用于采集日志的系统、方法和装置 |
Non-Patent Citations (1)
Title |
---|
WX5C1CFD6E22842: "Kubernetes运维之使用ELK Stack收集K8S平台日志", 《51CTO博客》 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111782498A (zh) * | 2020-07-29 | 2020-10-16 | 杭州玳数科技有限公司 | 基于kuberntes的flink任务日志elk采集方法和系统 |
CN111966465A (zh) * | 2020-08-21 | 2020-11-20 | 苏州浪潮智能科技有限公司 | 一种实时修改宿主机配置参数的方法、系统、设备及介质 |
CN111966465B (zh) * | 2020-08-21 | 2023-06-02 | 苏州浪潮智能科技有限公司 | 一种实时修改宿主机配置参数的方法、系统、设备及介质 |
CN113760638A (zh) * | 2020-10-15 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 一种基于kubernetes集群的日志服务方法和装置 |
CN112905537A (zh) * | 2021-02-20 | 2021-06-04 | 北京百度网讯科技有限公司 | 文件处理方法、装置、电子设备和存储介质 |
CN112948056A (zh) * | 2021-03-05 | 2021-06-11 | 浪潮云信息技术股份公司 | 一种针对kubeedge的edge节点上log日志的收集方法及系统 |
CN113157658A (zh) * | 2021-05-13 | 2021-07-23 | 心动互动娱乐有限公司 | 客户端日志收集分发方法、装置及计算机设备 |
CN113157658B (zh) * | 2021-05-13 | 2021-11-09 | 心动互动娱乐有限公司 | 客户端日志收集分发方法、装置及计算机设备 |
CN113326004A (zh) * | 2021-06-10 | 2021-08-31 | 深圳市移卡科技有限公司 | 云计算环境下高效日志集中化方法及设备 |
CN113326004B (zh) * | 2021-06-10 | 2023-03-03 | 深圳市移卡科技有限公司 | 云计算环境下高效日志集中化方法及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110955578A (zh) | 基于宿主机的日志收集方法、装置、计算机设备及存储介质 | |
CN110832453B (zh) | 使用基于云的系统的应用的分布式版本控制 | |
US11782989B1 (en) | Correlating data based on user-specified search criteria | |
US10310969B2 (en) | Systems and methods for test prediction in continuous integration environments | |
US9949681B2 (en) | Burnout symptoms detection and prediction | |
US9811442B2 (en) | Dynamic trace level control | |
US9400700B2 (en) | Optimized system for analytics (graphs and sparse matrices) operations | |
US9413818B2 (en) | Deploying applications in a networked computing environment | |
US11694090B2 (en) | Debugging deep neural networks | |
US10732964B2 (en) | Systems and methods for updating multi-tier cloud-based application stacks | |
CN109388657B (zh) | 数据处理方法、装置、计算机设备及存储介质 | |
CN111737609B (zh) | 一种web系统菜单栏的展示方法、终端及存储介质 | |
CN111400361A (zh) | 数据实时存储方法、装置、计算机设备和存储介质 | |
CN112328448A (zh) | 基于Zookeeper的监控方法、监控装置、设备及存储介质 | |
US20220179764A1 (en) | Multi-source data correlation extraction for anomaly detection | |
US11288170B1 (en) | Log analysis debugging without running on real production environment | |
JP2021515304A (ja) | システムにおける時系列ログ構造のキーバリュー・ストア内のチェックポイントを使用した障害後のリカバリのための方法、コンピュータ・プログラム、および装置 | |
US11599404B2 (en) | Correlation-based multi-source problem diagnosis | |
CN112187509A (zh) | 多架构云平台执行日志管理方法、系统、终端及存储介质 | |
US20180107723A1 (en) | Content oriented analysis of dumps | |
CN112905931B (zh) | 页面信息的展示方法、装置、电子设备及存储介质 | |
US20220180217A1 (en) | Integrating documentation knowledge with log mining for system diagnosis | |
CN114064712A (zh) | 数据访问方法、装置、电子设备及计算机可读存储介质 | |
CN113760317A (zh) | 一种页面显示方法、装置、设备及存储介质 | |
CN113297030B (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 |