一种基于nginx日志的服务状态统计方法及系统技术方案

技术编号:18894338 阅读:30 留言:0更新日期:2018-09-08 10:53
本发明专利技术公开了一种基于nginx日志的服务状态统计方法及系统,通过采集想要代理中间件(负载均衡)日志,将用户访问服务器的各种http状态数据采集并存储到ElasticSearch数据库中,可进一步通过程序分析计算出各种访问状态;并根据各个访问状态来判断应用服务的正常与否;还可以通过日志分析其中哪些状态是异常的,根据异常状态的日志,分析出是什么原因导致的异常,并根据得到的数据再判断是否需要对服务进行调整优化、是否更加稳定运行;对服务的文档高可用提供根本性的依据。本发明专利技术在简化访问数量难度、复杂性和繁琐度上面提供了一套对用户友好的解决方案;也为统计请求数量、统计服务健康状况等的准确度提供另外一个思路。

A service state statistics method and system based on nginx log

The invention discloses a service state statistic method and system based on nginx log. By collecting logs of desired proxy middleware (load balancing), various HTTP state data of user accessing server are collected and stored in Elastic Search database, and various access states can be further calculated through program analysis. According to each access state to judge whether the application service is normal or not; also can analyze which state is abnormal through the log, according to the abnormal state of the log, analyze what causes the abnormal, and according to the data obtained to determine whether the need to adjust and optimize the service, whether more stable operation; The high availability of documents for services provides a fundamental basis. The invention provides a set of user-friendly solutions to simplify the difficulty, complexity and complexity of the number of visits, and provides another idea for the accuracy of counting the number of requests and the health status of the service, etc.

【技术实现步骤摘要】
一种基于nginx日志的服务状态统计方法及系统
本专利技术涉及计算机
,特别涉及一种基于nginx日志的服务状态统计方法及系统。
技术介绍
任何线上的服务只要存在大量用户访问的情况,就必须有负载均衡的中间件,而我们提供的服务则必须要保证用户使用时系统的稳定,同时还需要为运营运维人员提供相关数据,运维人员在查看当前服务是否正常时,一般是通过一系列监控手段来实现,具体包括判断服务域名下请求的服务返回状态是否正确、是否有异常返回等,一般通过简单的统计就可以反映相关的服务状态。本专利技术的技术方案就在这样的技术背景下诞生,其在简化访问数量难度、复杂性和繁琐度上面提供了一套对用户友好的解决方案;也为统计请求数量、统计服务健康状况等的准确度提供另外一个思路。
技术实现思路
本专利技术的目的是基于上述
技术介绍
,提供一种基于nginx日志的服务状态统计方法及系统,可在简化访问数量难度、复杂性和繁琐度上面提供了一套对用户友好的解决方案;也为统计请求数量、统计服务健康状况等的准确度提供另外一个思路。为了达到上述的技术效果,本专利技术采取以下技术方案:一种基于nginx日志的服务状态统计方法,具体包含以下步骤:日志格式配置步骤:配置nginx服务产生的日志的格式并启动nginx服务代理,从而使得nginx生成配置的json格式的日志;日志信息采集步骤:通过日志采集服务器filebeat采集nginx服务产生的日志文件,并将采集到的日志文件保留并转发到日志文档内容存储服务器ElasticSearch中;日志索引创建及日志保存步骤:在日志文档内容存储服务器ElasticSearch创建基于filebeat模板的索引,并将filebeat传过来的日志内容存放到对应的索引中;日志展示步骤:通过查询展示程序服务器Grafana,将ElasticSearch作为数据库链接对象,在对应的索引中查询存储的日志内容并通过展示模板及展示报表展示;在本专利技术的基于nginx日志的服务状态统计方法中,主要用filebeat来采集nginx的access_log并自动化和实时传输给ElasticSearch;ElasticSearch对filebeat传过来的日志进行储存,filebeat可具体按照每天来创建对应的索引;ElasticSearch还可提供查询接口,让用户能根据查看需要对应的nginx日志内容;最后再利用Grafana的中间件配置ElasticSearch数据源,满足用户统计服务各状态需求;即本专利技术的方法通过采集想要代理中间件(负载均衡)日志,将用户访问服务器的各种http状态数据采集并存储到ElasticSearch数据库中,通过程序分析计算出各种访问状态;再由运维人员根据各个访问状态来判断应用服务的正常与否;还可以通过日志分析其中哪些状态是异常的,根据异常状态的日志,分析出是什么原因导致的异常,并根据我们得到的数据再判断是否需要对服务进行调整优化、是否更加稳定运行;对服务的文档高可用提供了根本性的依据。进一步地,在所述日志信息采集步骤中还包含日志数据清洗步骤,即:所述日志采集服务器filebeat采集到nginx服务产生的日志文件后,将对采集到的数据按照特定需求进行数据的过滤,仅保留需求的部分日志数据内容,再将保留的日志数据内容转发到日志文档内容存储服务器ElasticSearch中。进一步地,所述日志数据清洗步骤可通过在日志采集服务器filebeat中配置具有特定数据过滤规则的数据清除服务exclude_files实现。进一步地,所述日志格式配置步骤中,具体是将nginx服务产生的日志配置为具有健值对形式的日志属性,且其键名与查询展示程序服务器Grafana的模板中的键名一一对应;也即是说日志格式配置必须是按照指定的key:value对配置,且需要记录配置的对应格式的键名以便在grafana通过ElasticSearch查询日志数据时根据键名来统计,这个键名可以任意指定,但对应于grafana程序模板中的键名必须一一对应即可;配置完成后使nginx重新加载配置以便产生日志内容供filebeat读取并采集。同时,本专利技术还公开了一种基于nginx日志的服务状态统计系统,包含以下模块:用于配置nginx服务产生的日志的格式的日志格式配置模块、用于采集nginx服务产生的日志文件的数据采集模块、用于保存日志数据的存储模块及用于展示日志内容的前端展示系统;其中,所述存储模块分别与数据采集模块及前端展示系统相连。进一步地,还包含用于过滤日志数据的数据清洗模块,所述数据清洗模块与数据采集模块相连。本专利技术与现有技术相比,具有以下的有益效果:与现有技术相比,本专利技术的技术方案是通过采集想要代理中间件(负载均衡)日志,将用户访问服务器的各种http状态数据采集并存储到ElasticSearch数据库中,可进一步通过程序分析计算出各种访问状态;并根据各个访问状态来判断应用服务的正常与否;还可以通过日志分析其中哪些状态是异常的,根据异常状态的日志,分析出是什么原因导致的异常,并根据得到的数据再判断是否需要对服务进行调整优化、是否更加稳定运行;对服务的文档高可用提供根本性的依据;其主要是基于filebeat和ElasticSearch方案的日志采集和Grafana的统计查询并展示给用户报表图,在简化访问数量难度、复杂性和繁琐度上面提供了一套对用户友好的解决方案;也为统计请求数量、统计服务健康状况等的准确度提供另外一个思路。附图说明图1是本专利技术的基于nginx日志的服务状态统计方法的流程图。图2是本专利技术的基于nginx日志的服务状态统计系统的示意图。具体实施方式下面结合本专利技术的实施例对本专利技术作进一步的阐述和说明。实施例:实施例一:如图1所示,一种基于nginx日志的服务状态统计方法,具体包含以下步骤:日志格式配置步骤:配置nginx服务产生的日志的格式并启动nginx服务代理,从而使得nginx生成配置的json格式的日志。具体为配置nginx服务程序中需要配置日志的产生格式,配置成功后启动nginx服务代理;让nginx服务产生的日志是由我们配置的键、值形式的日志格式;也即日志格式配置必须是按照我们指定的key:value对配置;再让nginx服务程序产生的日志存放在指定路径下,并可以让filebeat程序读取这些日志文件的内容。其中,日志格式配置必须是按照指定的key:value对配置,且需要记录配置的对应格式的键名以便在grafana通过ElasticSearch查询日志数据时根据键名来统计,这个键名可以任意指定,但对应于grafana程序模板中的键名必须一一对应。日志信息采集、清洗步骤:日志采集服务器filebeat采集到nginx服务产生的日志文件后,将对采集到的数据按照特定需求进行数据的过滤,仅保留需求的部分日志数据内容,再将保留的日志数据内容转发到日志文档内容存储服务器ElasticSearch中。具体为在对应的nginx服务器上部署并配置好filebeat采集程序,让filebeat能读取到日志格式配置步骤中nginx产生的日志文件;将日志文件中我们需要的数据保留并转发到ElasticSearch服务程序中去;其中,剔除不需要的日志内容可通过e本文档来自技高网...

【技术保护点】
1.一种基于nginx日志的服务状态统计方法,其特征在于,具体包含以下步骤:日志格式配置步骤:配置nginx服务产生的日志的格式并启动nginx服务器;日志信息采集步骤:通过日志采集服务器filebeat采集nginx服务器产生的日志文件,并将采集到的日志文件保留并转发到日志文档内容存储服务器ElasticSearch中;日志索引创建及日志保存步骤:在日志文档内容存储服务器ElasticSearch中创建基于filebeat的模板的索引,并将filebeat传过来的日志内容存放到对应的索引中;日志展示步骤:通过查询展示程序服务器Grafana,将ElasticSearch作为数据库链接对象,在对应的索引中查询存储的日志内容并通过展示模板及展示报表展示。

【技术特征摘要】
1.一种基于nginx日志的服务状态统计方法,其特征在于,具体包含以下步骤:日志格式配置步骤:配置nginx服务产生的日志的格式并启动nginx服务器;日志信息采集步骤:通过日志采集服务器filebeat采集nginx服务器产生的日志文件,并将采集到的日志文件保留并转发到日志文档内容存储服务器ElasticSearch中;日志索引创建及日志保存步骤:在日志文档内容存储服务器ElasticSearch中创建基于filebeat的模板的索引,并将filebeat传过来的日志内容存放到对应的索引中;日志展示步骤:通过查询展示程序服务器Grafana,将ElasticSearch作为数据库链接对象,在对应的索引中查询存储的日志内容并通过展示模板及展示报表展示。2.根据权利要求1所述的一种基于nginx日志的服务状态统计方法,其特征在于,在所述日志信息采集步骤中还包含日志数据清洗步骤,即:所述日志采集服务器filebeat采集到nginx服务器产生的日志文件后,将对采集到的数据按照特定需求进行数据的过滤,仅保留需求的部分日志数据内容,再将保留的日志数据...

【专利技术属性】
技术研发人员:熊星鸿
申请(专利权)人:四川长虹电器股份有限公司
类型:发明
国别省市:四川,51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1