CN104113605A - 一种企业云应用开发的监控处理方法 - Google Patents

一种企业云应用开发的监控处理方法 Download PDF

Info

Publication number
CN104113605A
CN104113605A CN201410368198.9A CN201410368198A CN104113605A CN 104113605 A CN104113605 A CN 104113605A CN 201410368198 A CN201410368198 A CN 201410368198A CN 104113605 A CN104113605 A CN 104113605A
Authority
CN
China
Prior art keywords
cluster
data
url
request
resource
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
Application number
CN201410368198.9A
Other languages
English (en)
Inventor
周庆勇
陈娟妮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Software Co Ltd
Original Assignee
Inspur Software Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Inspur Software Co Ltd filed Critical Inspur Software Co Ltd
Priority to CN201410368198.9A priority Critical patent/CN104113605A/zh
Publication of CN104113605A publication Critical patent/CN104113605A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种企业云应用开发的监控处理方法,其具体实现过程为:借助web服务器访问日志,从开发人员的角度,提供了从监控分析指标的采集、接入分发、存储、检索分析全过程的解决方案,并针对开发监控指标提供了索引模板、离线分析算法。该一种企业云应用开发的监控处理方法与现有技术相比,解决在海量日志数据下开发人员难以多应用采集、监控分析发现web应用开发中各资源异常的问题,实用性强。

Description

一种企业云应用开发的监控处理方法
技术领域
本发明涉及软件开发技术领域,具体地说是实用性强、企业云应用开发的监控处理方法。
背景技术
对于软件的运维人员希望能够及时的发现软件中隐藏的问题,并将问题反馈给后台的研发人员,使问题得到解决。对于web应用软件开发者来说,针对反馈如何能够在应用多,架构复杂下有效的确定哪个应用下的哪些资源响应时间慢,哪些资源占用带宽比较大等问题变得非常的重要,因此在应用上线前,如何开发提供一种既方便又快速地监控分析系统变得非常的关键,该系统除了实现监控动态资源(需要和后台交互获取业务数据的资源)的响应时间、响应字节大小外,还可以离线分析用户更倾向于使用哪种浏览器访问、页面在浏览器上是否表现良好、是否有优化的必要性,以便在后续开发中重点关注浏览器的兼容性。
在云应用环境下,应用繁多,用户频繁在应用之间切换,频繁访问和操作应用,在这个过程中产生了大量的操作日志。传统的离线分析方案是使用日志文件记录数据,然后集中批量处理分析。这种方式对于实时性要求很高的数据不适合。基于此,现提供一种企业云应用开发的监控处理方法,该方法通过可以量化的指标,给开发人员良好的指导和帮助。
发明内容
本发明的技术任务是针对以上不足之处,提供一种实用性强、企业云应用开发的监控处理方法。
一种企业云应用开发的监控处理方法,其具体实现过程为:
一、设置WEB服务器,该WEB服务器是所有请求的入口,该WEB服务器中包括以下信息:请求资源的URL、上下文、请求资源的方式、请求发生时间、资源状态、请求响应时间、流量、请求的客户端ip和浏览器版本;
二、采用日志收集系统进行日志采集,并通过监控文件源将这些数据实时写入消息中间件,该消息中间件采用集群一并作为日志信息缓冲和日志信息路由;
三、设置集群二和集群三,其中集群二作为数据的存储集群,集群三作为当天的索引的存储和搜索引擎,该集群二和集群三从上述集群一订阅数据;
四、启动Map/Reduce任务,读取集群二的文件,将分析好的数据存储到MySQL中;
五、通过集群三提供的客户端实时搜索和分析,查看当天请求URL状态为404的资源有哪些,响应时间超长或者带宽占用过大的请求资源有哪些,开发人员发现后及时修正。
所述步骤三中的集群二和集群三的详细设置过程为:
集群二订阅的数据按天生成目录,并以追加的方式将日志信息存入该集群文件中,文件中包含所有操作信息,该操作信息包括静态资源访问信息和非静态资源访问信息,格式与原始日志格式一致;
集群三订阅的数据,按天建索引,索引数据的生存时间为1天,按照日志的组织方式解析日志,过滤静态资源访问信息,分析非静态资源访问信息并获取每次访问的web应用地址、URL、响应时间、URL状态、流量、访问时间、发出请求的客户端ip和浏览器版本信息,以JSON格式写入该集群三。
所述集群三在订阅数据后,预先定义模板,即指定web应用上下文、URL、客户端ip、浏览器版本作为一个整体使用,响应时间、流量采用数字型的数据,访问时间采用日期型的数据。
所述Map/Reduce任务中的Map函数按浏览器种类进行分组,reduce函数请求求和并计算浏览器种类的访问次数。
所述步骤四中启动Map/Reduce任务的详细过程为:Map函数中,先根据请求资源URL的后缀,过滤静态资源,由web应用上下文和动态资源URL组成该函数中Mapper类输出的key,由响应时间、流量、访问时间组成value函数;Reducer函数中,按照同一web应用下的URL分组,统计出每个URL在当天的访问次数、平均响应时间、最大响应时间、平均流量,ruduce函数输出信息到MySQL。
本发明的一种企业云应用开发的监控处理方法,具有以下优点:
该发明的一种企业云应用开发的监控处理方法针对web应用访问日志,从开发人员的角度,提供了从监控分析指标的采集、接入分发、存储、检索分析全过程的解决方案,做到不侵入web应用系统,实时监控、离线分析等特点,该技术架构对于凡是涉及日志的业务,都可以普遍适用,实用性强,适用范围广泛,易于推广。
附图说明
附图1为本发明的实现示意图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步说明。
本发明的提供一种企业云应用开发的监控处理方法,本方法提供了面向企业云应用开发对从web服务器日志监控分析指标的采集、接入分发、存储、检索分析全过程的解决方案,并针对开发监控指标提供了索引模板、离线分析算法等,如附图1所示,该方法的具体实现过程为:
一、在云应用部署架构中,设置WEB服务器,该WEB服务器是所有请求的入口,该WEB服务器中可以获得很多信息:请求资源的URL、上下文、请求资源的方式(GET/POST)、请求发生时间、资源状态、请求响应时间、流量、请求的客户端ip和浏览器版本等,这些又恰恰是开发人员比较关注的信息,因此本专利以web服务器产生的访问日志信息作为监控分析数据来源;
二、采用日志收集系统进行日志采集,并通过监控文件源将这些数据实时写入消息中间件,该消息中间件采用集群一并作为日志信息缓冲和日志信息路由;
三、设置集群二和集群三,其中集群二作为数据的存储集群,集群三作为当天的索引的存储和搜索引擎,该集群二和集群三从上述集群一订阅数据;
四、启动Map/Reduce任务,读取集群二的文件,将分析好的数据存储到MySQL中;
五、通过集群三提供的客户端实时搜索和分析,查看当天请求URL状态为404的资源有哪些,响应时间超长或者带宽占用过大的请求资源有哪些,开发人员发现后及时修正。
所述步骤三中的集群二和集群三的详细设置过程为:
集群二订阅的数据按天生成目录,并以追加的方式将日志信息存入该集群文件中,文件中包含所有操作信息,该操作信息包括静态资源访问信息和非静态资源访问信息,格式与原始日志格式一致;
集群三订阅的数据,按天建索引,索引数据的生存时间为1天,按照日志的组织方式解析日志,过滤静态资源访问信息,分析非静态资源访问信息并获取每次访问的web应用地址、URL、响应时间、URL状态、流量、访问时间、发出请求的客户端ip和浏览器版本信息,以JSON格式写入该集群三。
所述集群三在订阅数据后,预先定义模板,即指定web应用上下文、URL、客户端ip、浏览器版本作为一个整体使用,响应时间、流量采用数字型的数据,访问时间采用日期型的数据。
所述Map/Reduce任务中的Map函数按浏览器种类进行分组,reduce函数请求求和并计算浏览器种类的访问次数。
所述步骤四中启动Map/Reduce任务的详细过程为:Map函数中,先根据请求资源URL的后缀,过滤静态资源,由web应用上下文和动态资源URL组成该函数中Mapper类输出的key,由响应时间、流量、访问时间组成value函数;Reducer函数中,按照同一web应用下的URL分组,统计出每个URL在当天的访问次数、平均响应时间、最大响应时间、平均流量,ruduce函数输出信息到MySQL。
实施例:
为了达到实时监控的目标,需要实时轮播查看web服务器产生的access.log日志文件,标识哪些记录已处理,哪些记录是新增记录。本发明采用Apache flume作为日志采集,采用监控文件源模式将这些数据实时写入消息中间件,在这里之所以选择消息中间件的理由主要有三,其一为了做日志信息缓冲,其二为了做日志信息路由,正如背景中提到的日志信息既有实时检索,又有离线分析,其三是分布式、水平可扩展的,最终选择了Apache Kafka集群存储该消息中间件。
考虑到企业中应用系统多,业务频次高的情况下,数据量较大,未来数据增长较快以及数据的可靠容错性上,采用Apache hadoop集群作为基础数据的存储系统。考虑到实时搜索监控、索引的数据容错上以及后续根据负载水平扩展上,选择采用分布式实时搜索引擎elasticsearch集群作为当天的索引的存储和搜索引擎。hdfs和elasticsearch从Apache kafka订阅数据,其中hdfs订阅的数据,按天生成目录,以追加的方式将日志信息写入hdfs文件,文件中包含所有的操作信息(包括静态资源访问信息和非静态资源访问信息),格式和原始日志格式一致; elasticsaerch订阅的数据,按天建索引,索引数据的生存时间为1天(TTL=1d),按照日志的组织方式解析日志,过滤静态资源访问信息,分析非静态资源访问信息并获取每次访问的web应用地址、URL、响应时间、URL状态、流量、访问时间、发出请求的客户端ip和浏览器版本等信息,以JSON格式写入elasticsearch。因为web应用地址、URL等信息是一个完整的整体,为保证这些信息能作为一个完整的项被搜索,预先定义模板,指定web应用上下文、URL、客户端ip、浏览器版本等不能被分词(搜索时只能作为一个整体),响应时间、流量是数字型的数据,访问时间是日期型的数据。模板结构为:
{"template_1" : {
"template" : "*",
 "mappings" : {
     "_default_":{
      "properties" : {
        "fields" : {
          "properties" : {
            "timestamp" : {
              "type" : "string"
            },
            "hostname" : {
              "type" : "string"
            },
            "filename" : {
              "type" : "string"
            }
          }
        },
        "appdContext" : {
          "type" : "string"
        },
        "timestamp" : {
          "format" : "dateOptionalTime",
          "type" : "date"
        },
        "message" : {
          "type" : "string"
        },
        "req_url" : {
          "index" : "not_analyzed",
          "type" : "string"
        },
        "status" : {
          "type" : "string"
        },
        "source_ip" : {
          "type" : "string"
        },
        "request" : {
          "index" : "not_analyzed",
          "type" : "string"
        },
        "user_agent" : {
          "index" : "not_analyzed",
          "type" : "string"
        },
        "body_bytes_sent" : {
          "type" : "long"
        },
        "request_time" : {
          "type" : "double"
        }
      }
    }
  }}
}。
为分析动态资源响应时间、带宽的趋势变化以及浏览器使用情况,需要启动Map/Reduce任务,读取hdfs文件,并将分析好的数据存储到MySQL中,方便查询。针对动态资源响应时间、带宽趋势变化,采用按天读取hdfs文件,即每晚的23点59分启动任务,具体的实现为:在Map函数中,先根据请求资源URL的后缀,过滤诸如js、css、jpg等静态资源,Mapper输出的key由web应用上下文和动态资源URL组成,value由响应时间、流量、访问时间等组成;Reducer函数中,按照同一web应用下的URL分组,统计出每个URL在当天的访问次数、平均响应时间、最大响应时间、平均流量等,ruduce函数输出信息到MySQL。针对浏览器的使用情况,可以按周、月启动任务,读取hdfs文件,Map函数主要实现按浏览器种类进行分组,reduce函数主要是请求求和,计算该浏览器种类的访问次数。
上述具体实施方式仅是本发明的具体个案,本发明的专利保护范围包括但不限于上述具体实施方式,任何符合本发明的一种企业云应用开发的监控处理方法的权利要求书的且任何所属技术领域的普通技术人员对其所做的适当变化或替换,皆应落入本发明的专利保护范围。

Claims (5)

1.一种企业云应用开发的监控处理方法,其特征在于其具体实现过程为:
一、设置WEB服务器,该WEB服务器是所有请求的入口,该WEB服务器中包括以下信息:请求资源的URL、上下文、请求资源的方式、请求发生时间、资源状态、请求响应时间、流量、请求的客户端ip和浏览器版本;
二、采用日志收集系统进行日志采集,并通过监控文件源将这些数据实时写入消息中间件,该消息中间件采用集群一并作为日志信息缓冲和日志信息路由;
三、设置集群二和集群三,其中集群二作为数据的存储集群,集群三作为当天的索引的存储和搜索引擎,该集群二和集群三从上述集群一订阅数据;
四、启动Map/Reduce任务,读取集群二的文件,将分析好的数据存储到MySQL中;
五、通过集群三提供的客户端实时搜索和分析,查看当天请求URL状态为404的资源有哪些,响应时间超长或者带宽占用过大的请求资源有哪些,开发人员发现后及时修正。
2.根据权利要求1所述的一种企业云应用开发的监控处理方法,其特征在于:所述步骤三中的集群二和集群三的详细设置过程为:
集群二订阅的数据按天生成目录,并以追加的方式将日志信息存入该集群文件中,文件中包含所有操作信息,该操作信息包括静态资源访问信息和非静态资源访问信息,格式与原始日志格式一致;
集群三订阅的数据,按天建索引,索引数据的生存时间为1天,按照日志的组织方式解析日志,过滤静态资源访问信息,分析非静态资源访问信息并获取每次访问的web应用地址、URL、响应时间、URL状态、流量、访问时间、发出请求的客户端ip和浏览器版本信息,以JSON格式写入该集群三。
3.根据权利要求2所述的一种企业云应用开发的监控处理方法,其特征在于:所述集群三在订阅数据后,预先定义模板,即指定web应用上下文、URL、客户端ip、浏览器版本作为一个整体使用,响应时间、流量采用数字型的数据,访问时间采用日期型的数据。
4.根据权利要求1所述的一种企业云应用开发的监控处理方法,其特征在于:所述Map/Reduce任务中的Map函数按浏览器种类进行分组,reduce函数请求求和并计算浏览器种类的访问次数。
5.根据权利要求4所述的一种企业云应用开发的监控处理方法,其特征在于:所述步骤四中启动Map/Reduce任务的详细过程为:Map函数中,先根据请求资源URL的后缀,过滤静态资源,由web应用上下文和动态资源URL组成该函数中Mapper类输出的key,由响应时间、流量、访问时间组成value函数;Reducer函数中,按照同一web应用下的URL分组,统计出每个URL在当天的访问次数、平均响应时间、最大响应时间、平均流量,ruduce函数输出信息到MySQL。
CN201410368198.9A 2014-07-30 2014-07-30 一种企业云应用开发的监控处理方法 Pending CN104113605A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410368198.9A CN104113605A (zh) 2014-07-30 2014-07-30 一种企业云应用开发的监控处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410368198.9A CN104113605A (zh) 2014-07-30 2014-07-30 一种企业云应用开发的监控处理方法

Publications (1)

Publication Number Publication Date
CN104113605A true CN104113605A (zh) 2014-10-22

Family

ID=51710236

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410368198.9A Pending CN104113605A (zh) 2014-07-30 2014-07-30 一种企业云应用开发的监控处理方法

Country Status (1)

Country Link
CN (1) CN104113605A (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104486107A (zh) * 2014-12-05 2015-04-01 曙光信息产业(北京)有限公司 一种日志采集装置及方法
CN104601666A (zh) * 2014-12-22 2015-05-06 杭州华为数字技术有限公司 日志服务方法及云平台
CN107016106A (zh) * 2017-04-12 2017-08-04 深圳市茁壮网络股份有限公司 一种信息采集系统及Web应用
WO2017198227A1 (zh) * 2016-05-19 2017-11-23 中兴通讯股份有限公司 一种交互式网络电视系统及用户数据实时获取方法
CN107579864A (zh) * 2017-10-16 2018-01-12 深圳大宇无限科技有限公司 请求监控方法、装置及服务器
CN107948016A (zh) * 2017-12-04 2018-04-20 科大国创软件股份有限公司 一种监控指标数据的可视化查询及多维度叠加分析的方法
CN109344033A (zh) * 2018-09-27 2019-02-15 浪潮软件股份有限公司 一种基于分布式架构的云日志采集方法
CN110928718A (zh) * 2019-11-18 2020-03-27 上海维谛信息科技有限公司 一种基于关联分析的异常处理方法、系统、终端及介质
CN112152823A (zh) * 2019-06-26 2020-12-29 北京易真学思教育科技有限公司 网站运行错误监控方法、装置及计算机存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020161673A1 (en) * 1999-01-27 2002-10-31 International Business Machines Corporation Aggregating and analyzing information about content requested in an e-commerce web environment to determine conversion rates
CN103178982A (zh) * 2011-12-23 2013-06-26 阿里巴巴集团控股有限公司 日志分析方法和装置
CN103399887A (zh) * 2013-07-19 2013-11-20 蓝盾信息安全技术股份有限公司 一种海量日志的查询与统计分析系统
CN103838867A (zh) * 2014-03-20 2014-06-04 网宿科技股份有限公司 日志处理方法和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020161673A1 (en) * 1999-01-27 2002-10-31 International Business Machines Corporation Aggregating and analyzing information about content requested in an e-commerce web environment to determine conversion rates
CN103178982A (zh) * 2011-12-23 2013-06-26 阿里巴巴集团控股有限公司 日志分析方法和装置
CN103399887A (zh) * 2013-07-19 2013-11-20 蓝盾信息安全技术股份有限公司 一种海量日志的查询与统计分析系统
CN103838867A (zh) * 2014-03-20 2014-06-04 网宿科技股份有限公司 日志处理方法和装置

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104486107A (zh) * 2014-12-05 2015-04-01 曙光信息产业(北京)有限公司 一种日志采集装置及方法
CN104601666A (zh) * 2014-12-22 2015-05-06 杭州华为数字技术有限公司 日志服务方法及云平台
CN104601666B (zh) * 2014-12-22 2018-04-27 杭州华为数字技术有限公司 日志服务方法及云平台
WO2017198227A1 (zh) * 2016-05-19 2017-11-23 中兴通讯股份有限公司 一种交互式网络电视系统及用户数据实时获取方法
CN107016106A (zh) * 2017-04-12 2017-08-04 深圳市茁壮网络股份有限公司 一种信息采集系统及Web应用
CN107579864A (zh) * 2017-10-16 2018-01-12 深圳大宇无限科技有限公司 请求监控方法、装置及服务器
CN107948016A (zh) * 2017-12-04 2018-04-20 科大国创软件股份有限公司 一种监控指标数据的可视化查询及多维度叠加分析的方法
CN109344033A (zh) * 2018-09-27 2019-02-15 浪潮软件股份有限公司 一种基于分布式架构的云日志采集方法
CN112152823A (zh) * 2019-06-26 2020-12-29 北京易真学思教育科技有限公司 网站运行错误监控方法、装置及计算机存储介质
CN110928718A (zh) * 2019-11-18 2020-03-27 上海维谛信息科技有限公司 一种基于关联分析的异常处理方法、系统、终端及介质
CN110928718B (zh) * 2019-11-18 2024-01-30 上海维谛信息科技有限公司 一种基于关联分析的异常处理方法、系统、终端及介质

Similar Documents

Publication Publication Date Title
US11941017B2 (en) Event driven extract, transform, load (ETL) processing
CN104113605A (zh) 一种企业云应用开发的监控处理方法
CN109643312B (zh) 托管查询服务
US11074560B2 (en) Tracking processed machine data
US10560465B2 (en) Real time anomaly detection for data streams
CN109074377B (zh) 用于实时处理数据流的受管理功能执行
Das et al. Big data analytics: A framework for unstructured data analysis
CN109716323B (zh) 流数据中的空间变化检测器
US9590880B2 (en) Dynamic collection analysis and reporting of telemetry data
Finogeev et al. The convergence computing model for big sensor data mining and knowledge discovery
Strohbach et al. Towards a big data analytics framework for IoT and smart city applications
US9336288B2 (en) Workflow controller compatibility
CN104065685B (zh) 面向云计算环境的分层存储系统中的数据迁移方法
CA2991150C (en) Multi-stage network discovery
Lai et al. Towards a framework for large-scale multimedia data storage and processing on Hadoop platform
US9992269B1 (en) Distributed complex event processing
CA3059738A1 (en) Behaviour data processing method, device, electronic device and computer readable medium
US10157213B1 (en) Data processing with streaming data
US11892976B2 (en) Enhanced search performance using data model summaries stored in a remote data store
Liu et al. On construction of an energy monitoring service using big data technology for smart campus
US20170344453A1 (en) Determining dynamic statistics based on key value patterns
US11941459B2 (en) Integrating applications using containerized integration flow
US11841827B2 (en) Facilitating generation of data model summaries
CN108764746A (zh) 基于大数据的安全环保管理装置和系统
Sarkar et al. An indexed approach for multiple data storage in cloud

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20141022

WD01 Invention patent application deemed withdrawn after publication