CN111124815A - 一种日志查看方法、装置、设备及存储介质 - Google Patents

一种日志查看方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN111124815A
CN111124815A CN201911235970.9A CN201911235970A CN111124815A CN 111124815 A CN111124815 A CN 111124815A CN 201911235970 A CN201911235970 A CN 201911235970A CN 111124815 A CN111124815 A CN 111124815A
Authority
CN
China
Prior art keywords
log
search
server
terminal
checked
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
CN201911235970.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.)
JD Digital Technology Holdings Co Ltd
Original Assignee
JD Digital Technology Holdings 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 JD Digital Technology Holdings Co Ltd filed Critical JD Digital Technology Holdings Co Ltd
Priority to CN201911235970.9A priority Critical patent/CN111124815A/zh
Publication of CN111124815A publication Critical patent/CN111124815A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3664Environments for testing or debugging software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3692Test management for test results analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请实施例公开了一种日志查看方法、装置、设备及存储介质,其中,所述方法包括:服务器接收第一终端发送的搜索请求,所述搜索请求中携带有搜索参数;根据所述搜索参数和预先加载的搜索函数,从自身存储的日志数据中确定待查看日志;发送所述待查看日志至所述第一终端。

Description

一种日志查看方法、装置、设备及存储介质
技术领域
本申请涉及计算机应用技术领域,涉及但不限于一种日志查看方法、装置、设备及存储介质。
背景技术
测试环境是指为了完成软件测试工作所必需的计算机硬件、软件、网络设备、历史数据的总称,是项目开发完成后、上传到线上环境前进行测试的环境。测试环境的日志在整个项目过程中查看的频次较多,相关的技术人员以及业务人员都会从日志中寻找问题的原因、关键数据或联调字段等各种各样的数据信息,定位确认问题。可见,如何快速且无障碍的获取到测试环境日志,间接影响迭代的上线时间是否可以按期交付或完成,获取测试环境日志的快捷与否,甚至是追溯事故原因的有力证据。
现有的开源日志系统本身比较庞大,不适合测试环境服务器数量较少的环境部署。并且,通过安全外壳协议(SSH,Secure Shell)连接服务器查看测试环境的日志时,若存在权限控制,需要先申请权限访问服务器,然后才能查看测试环境日志,同时,使用开源日志系统查看测试环境的日志操作复杂、时间成本较高。
发明内容
有鉴于此,本申请实施例提供了一种日志查看方法、装置、设备及存储介质。
本申请的技术方案是这样实现的:
第一方面,本申请实施例提供了一种日志查看方法,所述方法包括:
接收第一终端发送的搜索请求,所述搜索请求中携带有搜索参数;
根据所述搜索参数和预先加载的搜索函数,从自身存储的日志数据中确定待查看日志;
发送所述待查看日志至所述第一终端。
第二方面,本申请实施例提供了一种日志查看方法,所述方法包括:
获取用于搜索待查看日志的搜索参数;
响应于搜索待查看日志的操作指令,发送搜索请求至服务器,所述搜索请求中携带有所述搜索参数;
接收并输出所述服务器发送的待查看日志,所述待查看日志由所述服务器根据所述搜索参数和预先加载的搜索函数确定。
第三方面,本申请实施例提供了一种日志查看装置,所述装置包括:
第一接收模块,用于接收第一终端发送的搜索请求,所述搜索请求中携带有搜索参数;
第一确定模块,用于根据所述搜索参数和预先加载的搜索函数,从自身存储的日志数据中确定待查看日志;
第一发送模块,用于发送所述待查看日志至所述第一终端。
第四方面,本申请实施例提供了一种日志查看装置,所述装置包括:
第一获取模块,用于获取用于搜索待查看日志的搜索参数;
第二发送模块,用于响应于搜索待查看日志的操作指令,发送搜索请求至服务器,所述搜索请求中携带有所述搜索参数;
第二接收模块,用于接收并输出所述服务器发送的待查看日志,所述待查看日志由所述服务器根据所述搜索参数和预先加载的搜索函数确定。
第五方面,本申请提供了一种日志查看设备,包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现上述日志查看方法。
第六方面,本申请提供了一种存储介质,存储有可执行指令,用于引起处理器执行时,实现上述日志查看方法。
本申请实施例提供了一种日志查看方法、装置、设备及存储介质,其中,第一终端获取用于搜索待查看日志的搜索参数,响应于搜索日志的操作指令,发送搜索请求至服务器,所述搜索请求中携带有搜索参数;服务器接收第一终端发送的搜索请求,根据所述搜索参数和预先加载的搜索函数,从自身存储的日志数据中确定待查看日志,发送所述待查看日志至所述第一终端;第一终端接收并输出所述服务器发送的待查看日志。在本申请实施例中,无需部署开源日志系统,通过部署在同一台服务器上的待测试应用与日志服务,第一终端通过访问服务器上的日志服务,实现了日志查看,解决了现有技术中通过部署开源日志系统查看测试环境日志时难度大、成本高、速度慢,以及查看日志时操作复杂的问题。
附图说明
图1为本申请实施例提供的日志查看方法的网络架构示意图;
图2为本申请实施例提供的日志查看方法的一种实现流程示意图;
图3为本申请实施例提供的日志查看方法的另一种实现流程示意图;
图4为本申请实施例提供的日志查看方法的又一种实现流程示意图;
图5为本申请实施例提供的日志查看方法的再一种实现流程示意图;
图6为本申请实施例提供的日志查看方法的再一种实现流程示意图;
图7为本申请实施例服务器获取的搜索函数的界面示意图;
图8为本申请实施例第一终端输出的显示日志查看页面的界面示意图;
图9为本申请实施例第一终端获取的搜索参数的界面示意图;
图10为本申请实施例第一终端输出的待查看日志的界面示意图;
图11为本申请实施例提供的日志查看装置的一种结构示意图;
图12为本申请实施例提供的日志查看设备的一种结构示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
为了更好地理解本申请实施例,首先对相关技术中的日志查看方法及存在的缺点进行说明。
一般项目开发中,常用并且必须存在的环境包括测试环境和线上环境等。测试环境负责测试功能模块是否可用、上下游或模块间联调测试等常规的测试验证工作。当确定测试环境没问题后,部署到线上环境。测试环境的日志在整个项目过程中查看的频次较多,相关的技术人员以及业务人员都会从日志中寻找问题的原因、关键数据或联调字段等各种数据信息,以定位出现的问题并确认出现问题的原因。可见,快速的并且无障碍的获取到测试环境的日志,会间接的影响迭代的上线时间是否可按期交付或完成,甚至是追溯事故原因的有力证据。
在相关技术中,现有的开源日志系统本身比较庞大,当测试环境内涉及到的应用数量较少时,部署一套庞大的日志系统有些大材小用,部署成本及时间成本较高。对于测试环境内涉及到的应用数量较少时,现有的很多做法是不部署日志系统,不利于项目上线。并且,在部署日志系统时,对于技术较为薄弱的测试人员,部署一套日志系统的学习难度较大、操作复杂、时间成本较高。
在相关技术中,当部署了测试环境日志系统时,常规测试环境日志查看方式是通过直连SSH方式连接服务器来查看日志。该方式存在实时性不强以及权限问题。举例说明:测试环境联调测试比较多,联调方都需要查看日志,新接入的应用联调可能存在无SSH权限导致其无法查看日志,此时需要经过有权限的人为其提供日志文件后才能查看,大大降低了工作效率。并且,对于技术较为薄弱的测试人员,使用开源日志系统查看测试环境日志的操作复杂、难度较大。
基于以上问题,在本申请实施例中提供了一种日志查看方法,将待测试应用与日志服务同时部署在一台服务器上,日志数据保存在该服务器上,用户终端基于Web服务访问服务器,不仅可以节省服务器资源,不再受到SSH的权限控制,实现了日志资源共享,而且用户可及时通过终端浏览器访问日志服务来查看日志,无需复杂的操作即可查看日志,节省了测试时间,大大方便了测试。
下面说明实现本申请实施例的装置的示例性应用,本申请实施例提供的装置可以实施为终端设备。下面,将说明装置实施为终端设备时涵盖终端设备的示例性应用。
参见图1,图1为本申请实施例提供的日志查看方法的网络架构示意图,如图1所示,在该网络架构中至少包括配置终端100、服务器200、网络300和访问终端400。为实现支撑一个示例性应用,配置终端100通过网络300连接服务器200,访问终端400通过网络300连接服务器200,网络300可以是局域网。
当配置用户通过配置终端100输入搜索函数后,将搜索函数通过网络300上传到服务器200,并将其载入服务器200的日志服务中,完成配置。在用户通过访问终端400向服务器200发起连接服务器200的连接请求时,服务器200根据连接请求确定并发送响应信息至访问终端400,访问终端400根据响应信息输出日志查看页面,用户在该日志查看页面包括的图形控件中输入待查看日志的搜索参数,访问终端400将搜索参数上传到服务器200,服务器200基于搜索参数和预先加载的搜索函数,在自身存储的日志数据中获取待查看日志,将待查看日志发送至访问终端400,访问终端400输出待查看日志以使用户查看。
下面说明本申请实施例提供的日志查看方法的各种示例性实施。
参见图2,图2为本申请实施例提供的日志查看方法的一种实现流程示意图,应用于图1所示的网络架构中的服务器,将结合图2示出的步骤进行说明。
步骤S201,接收第一终端发送的搜索请求。
其中,所述搜索请求中携带有搜索参数。
本实施例中的第一终端可以为图1所示的网络架构中的访问终端。
项目开发完成后进行测试阶段时,测试人员无需部署测试环境的开源日志系统,只需要将待测试应用部署在服务器,同时在该服务器中部署用以记录该待测试应用的测试日志的日志服务。当用户(如测试人员、开发人员或运营人员等)需要查看待测试应用的日志时,通过第一终端向该服务器发送一搜索请求以访问服务器上的日志服务,该搜索请求携带有第一终端的用户根据其想要查看的日志内容确定的搜索参数。
其中,搜索参数可以为一个,也可以为多个。当搜索参数为多个时,可以为不同的类型,例如:搜索参数的类型可以为关键词、时间、日志等级或其他类型中的一种或多种。
实际应用中,将待测试应用部署在服务器上的测试人员和进行日志查看的第一终端的用户可以为同一用户,也可以为不同的用户。
步骤S202,根据所述搜索参数和预先加载的搜索函数,从自身存储的日志数据中确定待查看日志。
由于在服务器中部署了待测试应用,在用户测试该应用时,服务器将其测试日志保存为日志数据,当服务器接收到搜索请求时,根据搜索请求携带的搜索参数以及预先加载的搜索函数,在服务器保存的日志数据中查找与搜索参数和搜索函数相匹配的日志数据,从而获得用户想要查看的待查看日志。
其中,本实施例中的搜索函数具体可以采用程序、软件、软件模块、脚本或代码的形式,以任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,加载至日志服务时,可被加载为独立的程序或者为模块、组件、子例程或者适合在计算环境中使用的其它单元。
步骤S203,发送所述待查看日志至所述第一终端。
服务器响应搜索请求,将获得的用户想要查看的待查看日志发送回第一终端,第一终端显示待查看日志,以便第一终端的用户查看。
在本申请实施例提供的日志查看方法中,服务器接收第一终端发送的搜索请求,所述搜索请求中携带有搜索参数;根据所述搜索参数和预先加载的搜索函数,从自身存储的日志数据中确定待查看日志;发送所述待查看日志至所述第一终端,无需部署开源日志系统,通过部署在同一台服务器上的待测试应用与日志服务,第一终端通过访问服务器上的日志服务,实现了日志查看,部署难度小、成本低、速度快,并且,降低了用户查看日志操作的复杂度。。
在一些实施例中,图2所示的步骤S202“根据所述搜索参数和预先加载的搜索函数,从自身存储的日志数据中确定待查看日志”可以通过下述的步骤S2021至步骤S2023实现,以下结合各个步骤进行说明。
步骤S2021,根据所述搜索参数和所述搜索函数确定搜索条件。
服务器中预先加载有搜索函数,在搜索函数中限定了搜索位置,即为日志数据在服务器中保存的位置,但并没有限定搜索关键字。当接收到搜索参数后,可以将搜索参数作为搜索关键字代入搜索函数,得到用于在日志数据中进行查找的搜索条件。
例如,搜索参数为关键字risk、开始时间2019年07月22日8点、结束时间为2019年07月22日23点,搜索函数中限定的搜索位置为/home/wy/www/jrs-designer.wangyin.com/logs/catalina.out,搜索条件为grep'risk,*%s|awk-F'[,:]”$2>=2019/07/22/08/00/00&&$2<=2019/07/22/23/00/00'。
步骤S2022,从自身存储的日志数据中提取出符合所述搜索条件的目标日志数据。
服务器根据搜索条件,在测试该待测试应用时保存的日志数据中进行搜索查找,得到符合搜索条件的目标日志数据。
步骤S2023,解析所述目标日志数据,将得到的解析结果确定为待查看日志。
为了便于第一终端的用户查看与理解、按照符合用户习惯的方式发送给第一终端,服务器将提取的目标日志数据进行解析,得到解析结果,进一步将解析结果确定为待查看日志。
服务器根据从第一终端获取的搜索参数和预先加载的搜索函数确定待查看日志,无需部署开源日志系统,节省了部署成本、时间,通过服务器上部署的待测试应用与日志服务,得到了第一终端用户想要的待查看日志,减小了查看测试环境日志的难度。
在一些实施例中,如图3所示,在步骤S201之前,还可以执行步骤S311,获取并加载第二终端发送的搜索函数。
其中,所述第二终端可以为图1所示的网络架构中的配置终端。在实际应用中,第一终端和第二终端可以为同一终端。当然,第一终端的用户和第二终端的用户也可以为同一用户。
在用户查看待测试应用的测试环境日志数据之前,需要先将搜索函数上传并加载在服务器的日志服务中。实施上传和加载操作的用户,可以是测试人员,也可以是其他用户。上传和加载的时间可以为待测试应用和日志服务部署在服务器之后、第一终端的用户发送搜索请求之前的任一时间。若在第一终端的用户发送搜索请求之后再上传或加载,由于缺少搜索函数,服务器会搜索失败,第一终端的用户发送的查看日志的搜索请求将请求失败,无法查看日志。
服务器获取搜索函数和加载搜索函数可以同时完成,也可以先获取,当接收到第一终端发送的搜索请求后进行加载。
在具体的实现方式中,本实施例中服务器获取到搜索函数的同时进行加载,在接收到搜索请求后,可以立即进行搜索,从而减少用户等待服务器搜索响应时间。
当采用接收到第一终端发送的搜索请求后进行加载的方式时,仅在第一次接收到搜索请求时进行搜索函数的加载,若再次接收到同一第一终端发送的搜索请求,或者其他第一终端发送的搜索请求时,由于已经进行过加载,无需再重新加载。
在一些实施例中,如图3所示,在步骤S201之前,步骤S311之后,还可以执行以下步骤:
步骤S321,接收所述第一终端发送的连接请求。
其中,所述连接请求用于连接服务器,以获取待查看日志。
第一终端在发送搜索请求至服务器之前,需要先与服务器建立连接,具体的,第一终端向服务器发送用于连接服务器的连接请求。该连接请求可以为一访问地址,该访问地址由第一终端的用户预先从第二终端上传的搜索函数或第二终端的用户处获取。
步骤S322,根据所述连接请求,确定响应信息,并发送所述响应信息至所述第一终端。
服务器根据连接请求的访问地址确定出响应信息,该响应信息中携带有显示待查看日志的日志查看页面的数据。服务器发送响应信息至第一终端,第一终端对响应信息携带的日志查看页面的数据进行解析、渲染操作,输出日志查看页面,以使第一终端的用户在日志查看页面的图形控件中输入搜索参数。
服务器通过第一终端发送的连接请求,将携带有日志查看页面数据的响应信息发送至第一终端,为第一终端的用户提供了输入搜索参数的页面,简化了用户查看日志的操作,降低了查看日志的操作难度。
基于前述的实施例,本申请实施例再提供一种日志查看方法,应用于图1所示的网络架构中的访问终端,图4为本申请实施例提供的日志查看方法的又一实现流程示意图,如图4所示,所述方法包括:
步骤S401,获取用于搜索待查看日志的搜索参数。
当第一终端的用户想要查看测试环境的测试日志时,根据其想要查看的日志内容确定搜索参数,第一终端获取该搜索参数。
步骤S402,响应于搜索待查看日志的操作指令,发送搜索请求至服务器。
其中,所述搜索请求中携带有所述搜索参数。
第一终端获取根据其待查看日志确定的搜索参数后,根据搜索参数确定搜索请求。在用户进行搜索待查看日志的操作后,将搜索请求中发送至服务器。
在具体的实现方式中,搜索待查看日志的操作,可以为用户在第一终端上进行的点击操作,相应的,搜索待查看日志的操作指令为用户进行点击操作后所触发的操作指令。
步骤S403,接收并输出所述服务器发送的待查看日志。
所述待查看日志由所述服务器根据所述搜索参数和预先加载的搜索函数确定。
服务器接收到搜索请求后,根据搜索请求中携带的搜索参数和预先加载的搜索函数,从服务器自身存储的测试环境的日志数据中确定待查看日志,第一终端接收并显示待查看日志。
在本申请实施例提供的日志查看方法中,第一终端获取用于搜索待查看日志的搜索参数;响应于搜索待查看日志的操作指令,发送搜索请求至服务器,所述搜索请求中携带有所述搜索参数,以使得服务器能够根据所述搜索参数和预先加载的搜索函数确定待查看日志,进而第一终端接收并输出所述服务器发送的待查看日志,如此无需在服务器中部署开源日志系统,而只要在同一台服务器上部署待测试应用与日志服务,就能够使得第一终端通过访问服务器上的日志服务,实现日志查看,部署难度小、成本低、速度快,并且,降低了用户查看日志操作的复杂度。
在一些实施例中,图4所示的步骤S401“获取用于搜索待查看日志的搜索参数”可以通过下述的步骤S4011至步骤S4014实现,以下结合各个步骤进行说明:
步骤S4011,响应于连接服务器的操作指令,发送连接请求至所述服务器。
第一终端的用户预先从第二终端上传的搜索函数或第二终端的用户处获取用于连接服务器的连接请求,进行连接服务器的操作。在一种可能的实现方式中,搜索待查看日志的操作指令可以为用户点击搜索控件触发的指令。
在具体实现时,本实施例的连接请求可以为一访问网址,用户在第一终端的浏览器中通过语音、文字或其他方式输入访问网址,键入回车键,确定用户发出连接服务器的操作指令,第一终端发送连接请求至服务器。
步骤S4012,接收所述服务器根据所述连接请求确定的响应信息。
服务器接收到第一终端发送的连接请求,确定出响应信息,该响应信息中携带有显示待查看日志的日志查看页面的数据。
步骤S4013,根据所述响应信息输出日志查看页面。
其中,所述日志查看页面包括用于输入搜索参数的图形控件。
第一终端根据响应信息携带的显示待查看日志的日志查看页面的数据,解析渲染后得到在其显示屏上显示日志查看页面。该日志查看页面上显示有用于输入搜索参数的图形控件,以接收用户根据其想要查看的日志确定的搜索参数。该用于输入搜索参数的图形控件可以为输入框。为了便于用户输入,当搜索参数为多个时,日志查看页面上还可以显示搜索参数的提示信息,以对多个搜索参数进行区分。
同时,该日志查看页面还可以包括用于进行搜索操作的图形控件,以接收用户进行的连接服务器的操作指令。该用于进行搜索操作的图形控件可以为确认搜索的控件。
步骤S4014,基于所述图形控件,获取用于搜索待查看日志的搜索参数。
根据用户在日志查看页面的图形控件中输入的字段,获取搜索参数。在用户进行搜索待查看日志的操作之后,将搜索参数携带于搜索请求中发送至服务器。
本实施例提供的获取用于搜索待查看日志的搜索参数的方法,第一终端通过响应于连接服务器的操作指令,发送连接请求至所述服务器,接收所述服务器根据所述连接请求确定的响应信息,根据所述响应信息输出日志查看页面,基于所述图形控件,获取用于搜索待查看日志的搜索参数,实现了用于搜索待测试应用日志数据的搜索参数的获取,用户仅需输入连接服务器的连接地址和搜索参数即可查看日志,减小了查看测试环境日志时操作复杂度、降低了查找难度。
在一些实施例中,如图5所示,在步骤S402之前,还可以执行以下步骤:
步骤S511,判断所述搜索参数是否满足预设条件。
由于获取的搜索参数(例如用户在日志查看页面的图形控件中输入的字段可能是随意输入的)不符合搜索参数的格式、类型等条件,因此,在发送搜索请求至服务器之前,先对获取的搜索参数是否满足预设条件进行判断。其中,预设条件可以是服务器发送至第一终端的响应信息中携带的信息,以确保服务器接收的搜索参数符合搜索条件的要求。
当获取的搜索参数满足预设条件时,第一终端发送搜索请求至服务器。当获取的搜索参数不满足预设条件时,进入步骤S512。
步骤S512,输出参数输入错误的提示信息。
在搜索参数不满足预设条件时,第一终端显示提示信息,以提醒用户参数输入错误。可选的,可同时显示预设条件和/或举例,以提示用户再次输入搜索参数时按照预设条件输入。然后,返回执行步骤S401,重新获取用于搜索待查看日志的搜索参数。
在发送搜索请求至服务器之前,先对获取的搜索参数是否满足预设条件进行判断,确保服务器接收的搜索参数符合搜索条件的要求,避免了由于用户输入的搜索参数不符合预设条件而导致无法查看日志。
基于前述的实施例,本申请实施例再提供一种日志查看方法,应用于图1所示的网络架构,图6为本申请实施例日志查看方法的再一种实现流程示意图,如图6所示,所述方法包括:
步骤S601,第二终端获取搜索函数。
这里,搜索函数可以为第二终端的用户在其上输入并保存的程序、软件、软件模块、脚本或代码。
步骤S602,第二终端发送搜索函数至服务器。
步骤S603,服务器获取并加载第二终端发送的搜索函数。
步骤S604,第一终端获取连接服务器的操作指令。
这里,连接服务器的操作指令可以为第一终端根据用户进行的连接服务器的操作而触发的指令。
步骤S605,第一终端发送连接请求至所述服务器。
步骤S606,服务器接收所述第一终端发送的连接请求,根据所述连接请求,确定响应信息。
其中,所述连接请求用于连接服务器,以获取待查看日志。
步骤S607,服务器发送所述响应信息至所述第一终端。
该响应信息中携带有显示待查看日志的日志查看页面的数据。
步骤S608,第一终端接收所述服务器根据所述连接请求确定的响应信息,根据所述响应信息输出日志查看页面。
其中,所述日志查看页面包括用于输入搜索参数的图形控件。第一终端对响应信息进行解析、渲染,得到日志查看页面,将其输出至显示屏上。
步骤S609,第一终端基于所述图形控件,获取用于搜索待查看日志的搜索参数。
所述搜索参数为用户在日志查看页面的图形控件中输入的信息。
步骤S610,第一终端获取搜索待查看日志的操作指令。
这里,搜索待查看日志的操作指令可以为第一终端根据用户进行的搜索待查看日志的操作而触发的指令。
这里,需要说明的是,步骤S611至步骤S612可以在步骤S610之前执行,在获取到搜索参数后即刻进行判断,当搜索参数不满足预设条件时,第一时间通知用户以便及时修改。
步骤S611,第一终端判断所述搜索参数是否满足预设条件。
这里,为确保发送至服务器的搜索请求中携带的搜索参数的格式、类型等满足预设条件,第一终端对获取的搜索参数是否满足预设条件进行判断,若获取的搜索参数不满足预设条件,进入步骤S612,若获取的搜索参数满足预设条件,执行步骤S613至步骤S618。
步骤S612,第一终端输出参数输入错误的提示信息。
用户根据提示信息,返回步骤S609重新获取用户输入的搜索参数。
步骤S613,第一终端发送搜索请求至服务器。
其中,所述搜索请求中携带有所述搜索参数。
步骤S614,服务器根据所述搜索参数和所述搜索函数确定搜索条件。
当接收到搜索参数后,可以将搜索参数作为搜索关键字代入搜索函数,得到用于在日志数据中进行查找的搜索条件。
步骤S615,服务器从自身存储的日志数据中提取出符合所述搜索条件的目标日志数据。
步骤S616,服务器解析所述目标日志数据,将得到的解析结果确定为待查看日志。
步骤S617,服务器发送所述待查看日志至所述第一终端。
步骤S618,第一终端接收并输出所述服务器发送的待查看日志。
所述待查看日志由所述服务器根据所述搜索参数和预先加载的搜索函数确定。服务器将查询到的结果返回到第一终端的日志查看页面中,最终在第一终端的浏览器中显示。
本申请实施例提供的日志查看方法,第一终端获取用于搜索待查看日志的搜索参数,响应于搜索日志的操作指令,发送搜索请求至服务器,所述搜索请求中携带有搜索参数;服务器接收第一终端发送的搜索请求,根据所述搜索参数和预先加载的搜索函数,从自身存储的日志数据中确定待查看日志,发送所述待查看日志至所述第一终端;第一终端接收并输出所述服务器发送的待查看日志。在本申请实施例中,无需部署开源日志系统,通过部署在同一台服务器上的待测试应用与日志服务,第一终端通过访问服务器上的日志服务,实现了日志查看,部署难度小、成本低、速度快,并且,降低了用户查看日志操作的复杂度。。
下面,将说明本申请实施例在一个实际的应用场景中的示例性应用。
在本申请实施例中以常规的Liunx服务器为例,由于Liunx服务器上预装了Python环境,且支持shell以及awk命令,可使得实现本申请实施例时更加快捷方便。当然,也可以使用Java、PHP或其他多种Web开发语言实现本申请实施例。
awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大。简单来说awk就是把文件逐行的读入,以空格为默认分隔。
本申请实施例以shell、awk命令,Python环境以及使用Python编写的轻量级Web应用框架Flask实现的一种日志查看方法为例。
测试人员将待测试应用与日志服务部署在同一服务器上,第二终端获取测试人员输入的搜索函数,搜索函数具体可以为如图7所示的代码片段。如图7所示,第一代码模块701用于限定搜索位置,第二代码模块702用于获取搜索参数,第三代码模块703用于判断获取的搜索参数中的时间是否为空,当为空时,按照缺省值进行搜索,第四代码模块704用于开启进程,执行shell命令。
服务器从第二终端接收并加载搜索函数。任一用户需要查看待测试应用的日志时,在第一终端的浏览器中输入搜索函数中设定的网址访问服务器,如图7中所示的网址risk_jrs.html,服务器返回响应信息,第一终端根据响应信息在浏览器中显示日志查看页面,如图8所示。图8中的日志查看页面包括的搜索类型可包括:按关键字搜索的关键字查询图形控件801、按时间搜索的时间图形控件802、按日志等级搜索的日志等级图形控件803。除用于输入搜索参数的图形控件801至803外,日志查看页面还包括搜索控件804,当用户点击搜索控件804时,触发搜索待查看日志的操作指令。
其中,时间图形控件802包括开始时间图形控件8021和结束时间图形控件8022,开始时间图形控件8021和结束时间图形控件8022中输入搜索参数的方式可以为键入方式,也可以为选择方式。
第一终端获取用户在日志查看页面的图形控件中输入的搜索参数,如图9所示,关键字查询图形控件801中的输入的搜索参数为risk,开始时间图形控件8021中输入的搜索参数为2019-07-22 08:00:00,结束时间图形控件8022中输入的搜索参数为2019-07-2223:00:00,日志等级图形控件803中输入的搜索参数为INFO。其中,用户输入的结束时间可以为当前时刻之前的任意时刻,开始时间为部署待测试应用之后、结束时间之前的任意时刻,以对当前时刻之前的任一时间的测试环境日志数据进行查看。用户可根据其需要进行一个或多个输入,第一终端根据如图9中所示的获取具体的搜索参数发送至服务器。
其中,日志等级优先级从高到低依次为:OFF(最高等级,用于关闭所有日志记录)、FATAL、ERROR、WARN、INFO、DEBUG、TRACE、ALL(最低等级,用于打开所有日志记录),日志等级设置在某一个级别上,比该级别优先级高的日志都可以显示出来,因此日志等级越低,打印的日志越多。例如,如果设置优先级为WARN,那么OFF、FATAL、ERROR、WARN这4个级别的日志数据能显示出来,而INFO、DEBUG、TRACE、ALL级别的日志数据则被筛选出去。
服务器根据搜索参数和搜索函数确定搜索条件,从自身存储的日志数据中提取出符合所述搜索条件的目标日志数据并对其进行解析,将解析结果确定为待查看日志,然后将待查看日志发送至第一终端。第一终端在浏览器中显示待查看日志,如图10中日志信息101所示,由于篇幅限制,图10中仅显示了部分待查看日志。
在本实施例中,无需部署开源日志系统,通过部署在同一台服务器上的待测试应用与日志服务,第一终端通过访问服务器上的日志服务,实现了日志查看,部署难度小、成本低、速度快,并且,降低了用户查看日志操作的复杂度。。
下面继续说明本申请实施例提供的日志查看装置的各种示例性实施。
参见图11,图11为本申请实施例提供的日志查看装置的一种结构示意图,如图11所示,所述日志查看装置110至少包括:
第一接收模块111,用于接收第一终端发送的搜索请求,所述搜索请求中携带有搜索参数;
第一确定模块112,用于根据所述搜索参数和预先加载的搜索函数,从自身存储的日志数据中确定待查看日志;
第一发送模块113,用于发送所述待查看日志至所述第一终端。
在一些实施例中,所述第一确定模块112,进一步包括:
第一确定单元,用于根据所述搜索参数和所述搜索函数确定搜索条件;
提取单元,用于从自身存储的日志数据中提取出符合所述搜索条件的目标日志数据;
解析单元,用于解析所述目标日志数据,将得到的解析结果确定为待查看日志。
在一些实施例中,所述日志查看装置110,还包括:
第二获取模块,用于获取并加载第二终端发送的搜索函数。
在一些实施例中,所述第一接收模块111,进一步包括:
第一接收单元,用于接收所述第一终端发送的连接请求,所述连接请求用于连接服务器,以获取待查看日志。
所述第一确定模块112,进一步包括:
第二确定单元,用于根据所述连接请求,确定响应信息;
第一发送单元,用于发送所述响应信息至所述第一终端。
本申请实施例再提供一种日志查看装置,所述日志查看装置至少包括:
第一获取模块,用于获取用于搜索待查看日志的搜索参数;
第二发送模块,用于响应于搜索待查看日志的操作指令,发送搜索请求至服务器,所述搜索请求中携带有所述搜索参数;
第二接收模块,用于接收并输出所述服务器发送的待查看日志,所述待查看日志由所述服务器根据所述搜索参数和预先加载的搜索函数确定。
在一些实施例中,所述第一获取模块,进一步包括:
第二发送单元,用于响应于连接服务器的操作指令,发送连接请求至所述服务器;
第二接收单元,用于接收所述服务器根据所述连接请求确定的响应信息;
输出单元,用于根据所述响应信息输出日志查看页面,所述日志查看页面包括用于输入搜索参数的图形控件;
获取单元,用于基于所述图形控件,获取用于搜索待查看日志的搜索参数。
在一些实施例中,所述日志查看装置,还包括:
判断模块,用于判断所述搜索参数是否满足预设条件;
输出模块,用于当所述搜索参数不满足预设条件时,输出参数输入错误的提示信息。
参见图12,图12为本申请实施例提供的日志查看设备的一种结构示意图,如图12所示,所述日志查看设备120,包括:存储器121和处理器122,其中,所述存储器121用于存储可执行指令,所述处理器122用于执行所述存储器121中存储的可执行指令时,实现本申请实施例提供的方法,例如,如图2、图3、图4和图5示出的方法。
本实施例的日志查看设备120,存储器121和处理器122为示例性结构,可以预见日志查看设备120的其他的示例性结构,因此这里所描述的结构不应视为限制,例如可以省略下文所描述的部分组件,或者,增设下文所未记载的组件以适应某些应用的特殊需求。
日志查看设备120包括:至少一个处理器122、存储器121、至少一个网络接口和用户接口。日志查看设备120中的每个组件通过总线系统耦合在一起。可理解,总线系统用于实现这些组件之间的连接通信。总线系统除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,本实施例中将各种总线都统一称为总线系统。
作为示例,用户接口可以包括显示器、键盘、鼠标、触感板和触摸屏等。
存储器121可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(ROM,Read Only Memory)。易失性存储器可以是随机存取存储器(RAM,Random Access Memory)。本申请实施例描述的存储器121旨在包括任意适合类型的存储器。
本申请实施例中的存储器121能够存储数据以支持数据日志查看设备120的操作。这些数据的示例包括:用于在日志查看设备120上操作的任何计算机程序,如操作系统和应用程序。其中,操作系统包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序可以包含各种应用程序。
处理器122可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
作为本申请实施例提供的方法采用软件实施的示例,本申请实施例所提供的方法可以直接体现为由处理器122执行的软件模块组合,软件模块可以位于存储介质中,存储介质位于存储器,处理器122读取存储器121中软件模块包括的可执行指令,结合必要的硬件(例如,包括处理器以及连接到总线的其他组件)完成本申请实施例提供的方法。
本申请实施例提供一种存储有可执行指令的存储介质,当可执行指令被处理器执行时,将引起处理器执行本申请实施例提供的方法,例如,如图2、图3、图4和图5示出的方法。
在一些实施例中,存储介质可以是FRAM、ROM、PROM、EPROM、EEPROM、闪存、磁表面存储器、光盘、或CD-ROM等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(HTML,Hyper TextMarkup Language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
以上所述,仅为本申请的实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本申请的保护范围之内。

Claims (11)

1.一种日志查看方法,其特征在于,包括:
接收第一终端发送的搜索请求,所述搜索请求中携带有搜索参数;
根据所述搜索参数和预先加载的搜索函数,从自身存储的日志数据中确定待查看日志;
发送所述待查看日志至所述第一终端。
2.根据权利要求1所述的方法,其特征在于,所述根据所述搜索参数和预先加载的搜索函数,从自身存储的日志数据中确定待查看日志,包括:
根据所述搜索参数和所述搜索函数确定搜索条件;
从自身存储的日志数据中提取出符合所述搜索条件的目标日志数据;
解析所述目标日志数据,将得到的解析结果确定为待查看日志。
3.根据权利要求1所述的方法,其特征在于,所述接收第一终端发送的搜索请求之前,所述方法还包括:
获取并加载第二终端发送的搜索函数。
4.根据权利要求1所述的方法,其特征在于,所述接收第一终端发送的搜索请求之前,所述方法还包括:
接收所述第一终端发送的连接请求,所述连接请求用于连接服务器,以获取待查看日志;
根据所述连接请求,确定响应信息,并发送所述响应信息至所述第一终端。
5.一种日志查看方法,其特征在于,包括:
获取用于搜索待查看日志的搜索参数;
响应于搜索待查看日志的操作指令,发送搜索请求至服务器,所述搜索请求中携带有所述搜索参数;
接收并输出所述服务器发送的待查看日志,所述待查看日志由所述服务器根据所述搜索参数和预先加载的搜索函数确定。
6.根据权利要求5所述的方法,其特征在于,所述获取用于搜索待查看日志的搜索参数,包括:
响应于连接服务器的操作指令,发送连接请求至所述服务器;
接收所述服务器根据所述连接请求确定的响应信息;
根据所述响应信息输出日志查看页面,所述日志查看页面包括用于输入搜索参数的图形控件;
基于所述图形控件,获取用于搜索待查看日志的搜索参数。
7.根据权利要求5所述的方法,其特征在于,所述发送搜索请求至服务器之前,所述方法还包括:
判断所述搜索参数是否满足预设条件;
当所述搜索参数不满足预设条件时,输出参数输入错误的提示信息。
8.一种日志查看装置,其特征在于,包括:
第一接收模块,用于接收第一终端发送的搜索请求,所述搜索请求中携带有搜索参数;
第一确定模块,用于根据所述搜索参数和预先加载的搜索函数,从自身存储的日志数据中确定待查看日志;
第一发送模块,用于发送所述待查看日志至所述第一终端。
9.一种日志查看装置,其特征在于,包括:
第一获取模块,用于获取用于搜索待查看日志的搜索参数;
第二发送模块,用于响应于搜索待查看日志的操作指令,发送搜索请求至服务器,所述搜索请求中携带有所述搜索参数;
第二接收模块,用于接收并输出所述服务器发送的待查看日志,所述待查看日志由所述服务器根据所述搜索参数和预先加载的搜索函数确定。
10.一种日志查看设备,其特征在于,包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现权利要求1至4或权利要求5至7任一项所述的方法。
11.一种存储介质,其特征在于,存储有可执行指令,用于引起处理器执行时,实现权利要求1至4或权利要求5至7任一项所述的方法。
CN201911235970.9A 2019-12-05 2019-12-05 一种日志查看方法、装置、设备及存储介质 Pending CN111124815A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911235970.9A CN111124815A (zh) 2019-12-05 2019-12-05 一种日志查看方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911235970.9A CN111124815A (zh) 2019-12-05 2019-12-05 一种日志查看方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN111124815A true CN111124815A (zh) 2020-05-08

Family

ID=70497626

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911235970.9A Pending CN111124815A (zh) 2019-12-05 2019-12-05 一种日志查看方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN111124815A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114002987A (zh) * 2021-11-03 2022-02-01 杭州和利时自动化有限公司 一种获取日志信息的方法、装置、电子设备及介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150193459A1 (en) * 2014-01-07 2015-07-09 2020CyberSec Ltd Data file searching method
CN108737467A (zh) * 2017-04-19 2018-11-02 腾讯科技(深圳)有限公司 一种服务器日志查看方法、装置和系统
CN109325010A (zh) * 2018-09-26 2019-02-12 中国平安人寿保险股份有限公司 日志查看方法、装置、计算机设备和存储介质
CN109783754A (zh) * 2018-12-17 2019-05-21 杭州玳数科技有限公司 一种基于web技术实现的日志展示方法及系统
CN109885548A (zh) * 2019-02-22 2019-06-14 网易(杭州)网络有限公司 日志查询方法、装置、存储介质和电子装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150193459A1 (en) * 2014-01-07 2015-07-09 2020CyberSec Ltd Data file searching method
CN108737467A (zh) * 2017-04-19 2018-11-02 腾讯科技(深圳)有限公司 一种服务器日志查看方法、装置和系统
CN109325010A (zh) * 2018-09-26 2019-02-12 中国平安人寿保险股份有限公司 日志查看方法、装置、计算机设备和存储介质
CN109783754A (zh) * 2018-12-17 2019-05-21 杭州玳数科技有限公司 一种基于web技术实现的日志展示方法及系统
CN109885548A (zh) * 2019-02-22 2019-06-14 网易(杭州)网络有限公司 日志查询方法、装置、存储介质和电子装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114002987A (zh) * 2021-11-03 2022-02-01 杭州和利时自动化有限公司 一种获取日志信息的方法、装置、电子设备及介质

Similar Documents

Publication Publication Date Title
CN111061526B (zh) 自动化测试方法、装置、计算机设备及存储介质
US7992127B2 (en) Method and system of encapsulating web site transactions for computer-aided generation of web services
CN110032519B (zh) 云函数调试方法、装置、计算机设备及存储介质
US11074162B2 (en) System and a method for automated script generation for application testing
US11237948B2 (en) Rendering engine component abstraction system
CN111414309B (zh) 应用程序的自动化测试方法、计算机设备和存储介质
CN111475390A (zh) 日志采集系统部署方法、装置、设备及存储介质
CN109783355A (zh) 页面元素获取方法、系统、计算机设备及可读存储介质
CN113505082B (zh) 应用程序测试方法及装置
CN111666201A (zh) 回归测试方法、装置、介质及电子设备
CN114461533A (zh) Web页面自动化测试的方法、系统、电子装置和存储介质
CN113918864A (zh) 网站页面的测试方法、测试系统、装置、电子设备及介质
CN111124815A (zh) 一种日志查看方法、装置、设备及存储介质
CN113220566A (zh) 接口性能测试脚本的生成方法、装置和计算机设备
US11442105B2 (en) Disaggregated distributed measurement analysis system using dynamic application builder
US20160132424A1 (en) Simulating sensors
Salem et al. Functional Size Measurement Automation for IoT Edge Devices.
EP1674991A2 (en) System and method for creating web services from an existing web site
CN112765040B (zh) 页面测试方法、系统、计算机设备和存储介质
JP7426493B2 (ja) ソフトウェア開発の補助処理方法、機器、電子機器、記憶媒体及びプログラム
CN113742240A (zh) 用户界面测试方法、装置、存储介质和电子设备
Coleti et al. ErgoMobile: A software to support usability evaluations in mobile devices using observation techniques
CN117950991A (zh) 程序测试方法、装置、电子设备及计算机可读存储介质
CN115757110A (zh) 自动化测试方法、装置及电子设备
CN114490330A (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
RJ01 Rejection of invention patent application after publication

Application publication date: 20200508