CN110352409B - 信息处理程序、信息处理装置以及调试系统 - Google Patents

信息处理程序、信息处理装置以及调试系统 Download PDF

Info

Publication number
CN110352409B
CN110352409B CN201880001995.XA CN201880001995A CN110352409B CN 110352409 B CN110352409 B CN 110352409B CN 201880001995 A CN201880001995 A CN 201880001995A CN 110352409 B CN110352409 B CN 110352409B
Authority
CN
China
Prior art keywords
group
data
result
processing
incomplete
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.)
Active
Application number
CN201880001995.XA
Other languages
English (en)
Other versions
CN110352409A (zh
Inventor
D·柯伦
青木健悟
宫永直树
P·梅杰扎克
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.)
Soft Gear Co Ltd
Original Assignee
Soft Gear 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 Soft Gear Co Ltd filed Critical Soft Gear Co Ltd
Publication of CN110352409A publication Critical patent/CN110352409A/zh
Application granted granted Critical
Publication of CN110352409B publication Critical patent/CN110352409B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • 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
    • G06F11/3072Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
    • G06F11/3075Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting the data filtering being achieved in order to maintain consistency among the monitored data, e.g. ensuring that the monitored data belong to the same timeframe, to the same system or component
    • 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
    • G06F11/3072Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
    • G06F11/3082Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting the data filtering being achieved by aggregating or compressing the monitored data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Hardware Design (AREA)
  • Debugging And Monitoring (AREA)

Abstract

提供即使在对随着时间经过依次受理的日志数据列进行批次处理的情况且一连串的日志横跨多个批次数据的情况下,仍抑制调试的结果错误的信息处理程序、信息处理装置以及调试系统。调试装置(1)随着时间经过依次受理伴随调试对象的程序的动作产生的日志,作为对预先决定的范围的日志进行批次处理的处理中批次数据(112),对处理中批次数据(112)进行群组化,在群组化的日志的集合未满足条件的情况下,将该群组记录为未完成的状态,并且在新的处理中批次数据(112)与未完成的群组之间存在共同的群组的情况下,将未完成的群组的日志数据加到新的处理数据(112)。

Description

信息处理程序、信息处理装置以及调试系统
技术领域
本发明涉及信息处理程序、信息处理装置以及调试系统。
背景技术
为了调试应用等程序,需要收集随着时间经过记录通过执行应用而产生的事件的历史(以下还称为“日志”),对通过应用执行某个动作而记录的一组日志(还称为日志的“群组”)进行分析处理。
作为以往的技术,提出了关于需要判断事件的成立条件的程序自动地进行调试的信息处理装置(参照例如专利文献1)。
专利文献1公开的信息处理装置在事件检测器中判断在受理的命令中是否包括与事件有关的批次记述,在事件检测器检测到事件的存在的情况下,使用于表示该事件的成立的成立标志成为ON,在成立标志是ON的情况下,通过事件信息解析单元执行事件成立时的批次处理,自动地进行程序的调试。
现有技术文献
专利文献1:日本特开2000‐293399号公报
发明内容
但是,专利文献1的信息处理装置在命令中包括与事件有关的批次记述的情况下使调试自动化,但仅以将执行命令而动作的结果记录的日志作为一个集合进行批次处理的情况为前提,未设想如将日志分成多个而处理的情况。另外,未设想如以不同顺序执行构成多个种类的动作的数据,对其结果记录的多个种类的日志进行批次处理的状况。即,在如使多个种类的应用、服务动作并从他们随着时间经过受理日志,对包括多个种类的群组的日志的某个期间的数据进行批次处理的状况下,如横跨多个批次处理的单位包含某个群组的日志的情况下,专利文献1的信息处理装置存在由于在批次处理的单位中数据不完全而调试的结果处置为未完成的日志的集合或者判断为差错,而无法正确地进行调试这样的问题。
因此,本发明的目的在于提供一种即使在对随着时间经过依次受理的日志数据列进行批次处理的情况且一连串的日志横跨多个批次数据的情况下,仍抑制调试的结果错误的信息处理程序、信息处理装置以及调试系统。
本发明的一个方案为了达成上述目的,提供以下的信息处理程序、信息处理装置以及调试系统。
[1]一种信息处理程序,用于使计算机作为如下单元发挥功能:
处理数据选择单元,从随着时间经过依次受理到伴随调试对象的程序的动作产生的日志的日志数据列,选择预先决定的范围的日志,作为批次处理的处理中批次数据;
群组化单元,根据日志的字段,对所述处理数据选择单元选择出的所述处理中批次数据进行群组化;
群组处理单元,在由所述群组化单元群组化的日志的集合未满足完成的条件的情况下,将该群组作为未完成的状态记录为未完成结果;以及
未完成群组处理单元,所述处理数据选择单元在所述处理中批次数据之后选择新的处理中批次数据,所述群组化单元对该新的处理中批次数据进行群组化之后,在该新的处理中批次数据与所述群组处理单元作为未完成结果的群组之间存在共同的群组的情况下,将所述新的处理中批次数据的该共同的群组的日志数据作为属于该共同的群组的所有日志数据。
[2]在所述[1]记载的信息处理程序中,所述群组处理单元在所述未完成结果中设定超时时刻而记录。
[3]在所述[2]记载的信息处理程序中,群组处理单元在所述群组化单元群组化的日志的集合满足完成的条件的情况下,处理该群组而保存为完成结果,
使所述计算机还作为
将所述未完成结果中的、经过所述超时时刻的未完成结果、和所述完成结果作为调试的结果输出的结果输出单元发挥功能。
[4]一种信息处理装置,具备:
处理数据选择单元,从随着时间经过依次受理到伴随调试对象的程序的动作产生的日志的日志数据列,选择预先决定的范围的日志,作为批次处理的处理中批次数据;
群组化单元,根据日志的字段,对所述处理数据选择单元选择出的所述处理中批次数据进行群组化;
群组处理单元,在由所述群组化单元群组化的日志的集合未满足完成的条件的情况下,将该群组作为未完成的状态记录为未完成结果;以及
未完成群组处理单元,所述处理数据选择单元在所述处理中批次数据之后选择新的处理中批次数据,所述群组化单元对该新的处理中批次数据进行群组化之后,在该新的处理中批次数据与所述群组处理单元作为未完成结果的群组之间存在共同的群组的情况下,将所述新的处理中批次数据的该共同的群组的日志数据作为属于该共同的群组的所有日志数据。
[5]在所述[4]记载的信息处理装置中,所述群组处理单元在所述未完成结果中设定超时时刻而记录。
[6]在所述[4]记载的信息处理装置中,群组处理单元在所述群组化单元群组化的日志的集合满足完成的条件的情况下,处理该群组而保存为完成结果,
使所述计算机还作为
将所述未完成结果中的、经过所述超时时刻的未完成结果、和所述完成结果作为调试的结果输出的结果输出单元发挥功能。
[7]一种调试系统,包括:
调试对象装置,随着时间经过依次输出伴随调试对象的程序的动作产生的日志;以及
信息处理装置,
该信息处理装置具有:
处理数据选择单元,从从所述调试对象装置受理的日志数据列,选择预先决定的范围的日志,作为批次处理的处理中批次数据;
群组化单元,根据日志的字段,对所述处理数据选择单元选择出的所述处理中批次数据进行群组化;
群组处理单元,在由所述群组化单元群组化的日志的集合未满足完成的条件的情况下,将该群组作为未完成的状态记录为未完成结果;以及
未完成群组处理单元,所述处理数据选择单元在所述处理中批次数据之后选择新的处理中批次数据,所述群组化单元对该新的处理中批次数据进行群组化之后,在该新的处理中批次数据与所述群组处理单元作为未完成结果的群组之间存在共同的群组的情况下,将所述新的处理中批次数据的该共同的群组的日志数据作为属于该共同的群组的所有日志数据。
根据方案1、4、7所涉及的发明,即使在对随着时间经过依次受理的日志数据列进行批次处理的情况下且一连串的日志横跨多个批次数据的情况下,仍能够抑制调试的结果错误。
根据方案2、5所涉及的发明,能够在未完成结果中设定并记录超时时刻。
根据方案3、6所涉及的发明,在群组化单元群组化的日志的集合满足完成的条件的情况下,能够处理该群组而保存为完成结果,将未完成结果中的、经过超时时刻的未完成结果和完成结果作为调试的结果输出。
附图说明
图1是示出实施方式所涉及的调试系统的结构的一个例子的概略图。
图2是示出实施方式所涉及的调试装置的结构例的框图。
图3是用于说明调试装置的日志受理动作的概略图。
图4是用于说明调试装置的批次数据选择动作的概略图。
图5是示出调试装置对批次数据进行群组化之前的批次数据的结构的概略图。
图6是示出调试装置对批次数据进行群组化之后的批次数据的结构的概略图。
图7是用于说明调试装置的未完成结果输出动作的概略图。
图8是用于说明调试装置的未完成群组的继续处理动作的概略图。
图9是用于说明调试装置的未完成群组的继续处理动作的其他概略图。
图10是用于说明调试装置的群组处理动作的概略图。
图11是示出调试装置的调试动作的概要的流程图。
图12是示出调试装置的批次数据选择动作的概要的流程图。
图13是示出调试装置的未完成结果输出动作的概要的流程图。
图14是示出调试装置的未完成群组的继续处理动作的概要的流程图。
图15是示出调试装置的群组处理动作的概要的流程图。
(符号说明)
1:调试装置;2:调试对象装置;5:调试系统;10:控制部;11:存储部;12:通信部;100:日志受理单元;101:处理数据选择单元;102:群组化单元;103:未完成结果表格制作单元;104:未完成结果输出单元;105:未完成群组处理单元;106:群组处理单元;107:结果输出单元;110:调试程序;111:日志数据;112:处理中批次数据;113:未完成结果表格;114:输出结果列表;115:结果数据。
具体实施方式
(调试系统的结构)
图1是示出实施方式所涉及的调试系统的结构的一个例子的概略图。
该调试系统5是将作为信息处理装置的调试装置1和调试对象装置2通过网络可相互通信地连接而构成的。
调试装置1是服务器型的信息处理装置,根据操作者操作的未图示的终端的要求而动作,在本体内具备具有用于处理信息的功能的CPU(Central Processing Unit,中央处理单元)、HDD(Hard Disk Drive,硬盘驱动器)或者闪存存储器等电子元件。调试装置1从调试对象装置2随着时间经过依次受理日志,对受理的日志逐次进行批次处理,解析日志的群组来执行调试。
调试对象装置2是终端型或者服务器型的信息处理装置,根据作为调试对象的程序动作,在本体内具备具有用于处理信息的功能的CPU、HDD或者闪存存储器等电子元件。调试对象装置2根据程序动作,针对调试装置1逐次输出作为动作的结果的日志。此外,调试对象装置2根据程序依次或者并行地执行多个种类的动作,以不同顺序随着时间经过输出各动作的日志。
网络是能够进行高速通信的通信网络,例如是因特网、LAN(Local Area Network,局域网)等有线或者无线的通信网。
作为一个例子,调试装置1通过使Fluentd、Elasticsearch、Hadoop等中间件动作而如上那样发挥功能,主要通过Fluentd进行日志收集,通过Elasticsearch进行日志的保存,通过Hadoop解析日志并概括。此外,调试装置1既可以由多个分组构成,也可以构成为通过Apache Spark执行分散处理。
此外,在图1中,关于调试装置1以及调试对象装置2,为了简化说明,以单一的装置描绘,但也可以将各功能分到多个装置而动作,还可以使动作在多个装置中分散处理。另外,也可以在单一的装置内构成调试装置1以及调试对象装置2。
另外,调试对象装置2只要是程序动作而输出动作的结果日志的例子,结构没有特别限定。也可以成为不准备调试装置2,而仅准备日志数据并在调试装置1中处理的结构。
(调试装置的结构)
图2是示出实施方式所涉及的调试装置1的结构例的框图。
调试装置1具备:控制部10,由CPU(Central Processing Unit)等构成,其控制各部并且执行各种程序;存储部11,由闪存存储器等存储介质构成,存储信息;以及通信部12,经由网络与外部进行通信。
控制部10通过执行作为后述信息处理程序的调试程序110,作为日志受理单元100、处理数据选择单元101、群组化单元102、未完成结果输出单元103、未完成群组处理单元104、群组处理单元105、未完成结果表格制作单元106以及结果输出单元107等而发挥功能。
日志受理单元100从调试对象装置2随着时间经过依次受理在调试对象装置2中作为调试对象的程序动作的结果即日志,作为日志数据111储存到存储部11。即,日志数据111随着时间经过增加。
处理数据选择单元101从日志数据111选择应处理的数据,作为处理中批次数据112储存到存储部11。关于处理中批次数据112,依次制作新的数据。
群组化单元102针对程序的动作的每个种类,例如,用事件ID等,对处理中批次数据112进行群组化。
未完成结果输出单元103输出未完成的结果,具体而言,将超过在未完成结果表格113中预先决定的超时时刻的群组作为未完成结果输出并追加到输出结果列表114,并且从未完成结果表格113删除超过超时时刻的群组来更新未完成结果表格113的内容。输出结果列表114是记载状态确定的结果的列表,未完成结果表格113是记载状态未确定的未完成的结果的中间数据。此外,“完成”是指,日志的集合满足预先决定的条件,“未完成”是指,日志的集合未满足预先决定的条件。
未完成群组处理单元104关于未完成群组的数据继续处理,具体而言,比较处理中批次数据112的群组和未完成结果表格113的群组,在存在共同的群组的情况下,用该群组的全部数据置换处理中批次数据112的相应的群组的数据。即,未完成群组处理单元104将包含于状态未确定的未完成的结果的日志,实时地重新追加到处理中的处理中批次数据112的群组。
群组处理单元105根据包含于某个群组的日志的内容是否满足预先决定的条件,处理群组,输出记载有完成或者未完成中的某一个状态的结果。
未完成结果表格制作单元106关于由群组处理单元105未完成的群组,制作未完成结果表格113。此外,未完成结果表格制作单元106将从未完成结果被保存的时刻追加预先决定的期间的时刻设定为超时的时刻。即使是未完成结果,在超过超时的时刻以前状态不确定,如果超过超时的时刻,则状态确定。
结果输出单元107将完成的结果、和由于超时而状态确定的未完成结果作为结果数据115储存到存储部11,并且集中输出到确认调试结果的利用者操作的未图示的终端等。即,将状态确定的结果作为结果数据115输出。
存储部11存储使控制部10作为上述各单元100‐107动作的调试程序110、日志数据111、处理中批次数据112、未完成结果表格113、输出结果列表114以及结果数据115等。
(信息处理装置的动作)
接下来,将本实施方式的作用分为(1)整体动作、(2)调试动作进行说明。
(1)整体动作
首先,调试对象装置2根据作为调试对象的程序动作,随着时间经过记录伴随动作产生的事件并作为日志依次输出。
调试装置1从调试对象装置2依次受理日志,对受理的日志进行批次处理,作为可分析的数据执行调试。另外,调试装置1将调试结果输出到未图示的终端等。此外,在以下的“(2)调试动作”中,详细说明调试装置1的处理的内容。
(2)调试动作
以下,详细说明调试装置1的调试动作。
图11是示出调试装置1的调试动作的概要的流程图。
(2‐1)日志受理动作
首先,调试装置1的日志受理单元100从调试对象装置2依次受理在调试对象装置2中作为调试对象的程序动作的结果即日志,作为日志数据111储存到存储部11(步骤S10)。
图3是用于说明调试装置1的日志受理动作的概略图。
日志数据111a是日志数据111的结构的一个例子,包括多个日志。日志的各个是包括能够变更类型的多个字段的抽象等级的目标。日志数据111a在图3所示的例子中,具有:ID,用于识别各日志;时间戳,表示生成日志的时刻;事件ID,用于识别与日志对应的事件;节点,表示产生事件的节点;操作,表示事件的动作类别;以及父母节点,表示节点的父节点。此外,日志数据111a也可以根据调试对象装置2的系统而其格式变化。
日志受理单元100将在受理到数据列时自动地生成的序列号作为ID赋予,作为追加日志1110追加。此外,日志受理动作与在批次数据选择动作以后说明的动作独立地经常执行。
此外,在日志受理单元100中,作为一个例子,将日志数据111储存为字段、值被严格地映射的JSON(Java Script(注册商标)Object Notation)文档。另外,日志受理单元100使用Fluentd从在调试对象装置2中动作的应用、服务收集日志,通过Elasticsearch,将日志受理的时刻、调试对象装置2的节点、自动生成的序列号等作为日志的ID赋予。
(2‐2)批次数据选择动作
接下来,处理数据选择单元101从日志数据111选择应处理的数据,作为处理中批次数据112储存到存储部11(步骤S11)。
图4是用于说明调试装置1的批次数据选择动作的概略图。另外,图12是示出调试装置1的批次数据选择动作的概要的流程图。
处理数据选择单元101在有上次的批次数据选择动作的情况下,确认上次选择的日志的序列号中的最终ID的存在(步骤S20;“是”),在图4所示的例子中,确认日志数据111b的上次选择日志1111的ID,对过滤器设定该最终ID“2378965”以前的日志(步骤S21),并且取得日志(步骤S23)。即,取得ID“2378966”及其以后的日志,作为选择日志1112。此外,也可以取得ID“2378966”及其以后的取得时间点存在的所有日志,还可以取得预先决定的数量的日志,能够根据调试装置1和/或调试执行装置3的处理能力,决定选择哪一个以及预先决定的数量的值。另外,能够根据日志的生成数等调试装置1的动作量,适宜地调整批次数据选择动作的频度、定时。
另外,处理数据选择单元101在无上次的批次数据选择动作的情况下(步骤S20;“否”),作为一个例子,对过滤器设定比当前时刻早1日的日志(步骤S22),并且取得日志(步骤S23)。即,取得1日前以后的日志,作为选择日志1112。
在处理数据选择单元101中,作为一个例子,通过使用Elasticsearch‐Hadoop执行Elasticsearch query,进行批次数据选择动作。
(2‐3)批次数据群组化动作
接下来,群组化单元102针对动作的每个种类,对处理中批次数据112进行群组化(步骤S12)。
图5是示出调试装置1对批次数据进行群组化之前的批次数据的结构的概略图。图6是示出调试装置1对批次数据进行群组化之后的批次数据的结构的概略图。
群组化单元102针对在图5所示的处理中批次数据112a中包含的日志,作为一个例子,将事件ID作为群组关键字,分别抽出“131145”、“131146”、“131147”的日志。接下来,群组化单元102生成将群组关键字作为定界符(分隔文字)将日志数据重排而群组化的处理中批次数据112b。
在群组化单元102中,作为一个例子,使用Apache Spark的“groupBy”功能,进行批次数据群组化动作。
(2‐4)未完成结果输出动作
接下来,未完成结果输出单元103输出状态确定的未完成结果(步骤S13)。
图7是用于说明调试装置1的未完成结果输出动作的概略图。另外,图13是示出调试装置1的未完成结果输出动作的概要的流程图。
首先,未完成结果输出单元103如图7所示,参照记载有状态未确定的未完成结果的未完成结果表格113a(步骤S30)。未完成结果表格113a具有:ID,用于识别结果;超时,表示确定结果的状态的时刻;群组关键字,表示与结果对应的群组的关键字;成果类型,表示群组的结果的内容(表示验证结果妥当的“PASS”或者表示不妥当的“FAIL”中的某一个。未完成结果由于在该时间点数据并不完全而无法验证,作为临时的值,成果类型成为“FAIL”。);以及成果数据,表示验证结果的内容。此外,关于未完成结果表格113a的制作方法,在“(2‐7)未完成结果保存动作”中后述。
接下来,未完成结果输出单元103对超时的时刻比当前时刻(在此将当前时刻设为2017年10月11日00时00分00秒)之前的结果进行过滤(步骤S31)。另外,未完成结果输出单元103将通过过滤剩下的结果恢复为日志并储存到日志数据111(步骤S32)。
接下来,未完成结果输出单元103视为在未完成结果表格113a中超过超时时刻的群组是状态确定的群组,根据该群组制作输出结果列表114a(步骤S33)。输出结果列表114a具有群组关键字、成果类型、以及成果数据。
另外,未完成结果输出单元103由于超过超时时刻的群组是状态确定的群组,所以从未完成结果表格113删除超过超时时刻的群组的结果来更新未完成结果表格113的内容(步骤S34)。
此外,在未完成结果输出单元103中,作为一个例子,代替Elasticsearch‐Hadoop,直接通过Elasticsearch,执行上述未完成结果输出动作。其原因为,虽然Elasticsearch‐Hadoop能够进行数据的取得以及保存,但无法进行数据的删除。另外,以使Elasticsearch能够用当前时刻的时间戳容易地执行过滤的方式,以时间戳的形式,保存未完成结果表格113的超时时刻。
(2‐5)未完成群组继续处理动作
接下来,未完成群组处理单元104关于未完成群组的数据,继续处理(步骤S14)。
图8是用于说明调试装置1的未完成群组的继续处理动作的概略图。另外,图9是用于说明调试装置1的未完成群组的继续处理动作的其他概略图。另外,图14是示出调试装置1的未完成群组的继续处理动作的概要的流程图。
首先,未完成群组处理单元104如图8所示,从处理中批次数据112c抽出群组关键字1040b(步骤S40)。
另外,未完成群组处理单元104如图8所示,从未完成结果表格113c抽出群组关键字1040a(步骤S41)。
接下来,未完成群组处理单元104确定在群组关键字1040a以及1040b中重复的群组关键字1040c(步骤S42)。
接下来,未完成群组处理单元104如图9所示,从日志数据111取得重复的群组关键字1040c的日志并作为取得群组104a(步骤S43),将处理中批次数据112c中的重复的群组关键字的日志用取得群组104a的日志置换并作为处理中批次数据112d(步骤S44)。其原因为,过去未完成的群组的日志存在于新处理的处理中批次数据112d,所以需要集中这些群组的日志。此外,能够在处理中批次数据112c的日志中追加未完成的日志即可,也可以不一定置换相应的群组的所有日志。
此外,在未完成群组处理单元104中,作为一个例子,关于上述未完成群组继续处理动作中的重复的群组关键字的抽出动作,使用Elasticsearch,代替利用处理中批次数据112c的群组列表来检索日志数据111,而使用Apache Spark的“intersection”功能,从处理中批次数据112c的群组关键字1040b的RDD(Resilient Distributed Dataset,弹性分布式数据集)和未完成结果表格113c的群组关键字1040a的RDD,得到重复的群组关键字1040c。其原因为,Elasticsearch无法在检索要求中处置大的信息输入。
在得到重复的群组关键字1040c之后,使用专用设计的插件,从Elasticsearch用群组关键字过滤,从而取得群组关键字1040a,将处理中批次数据112c中的重复的群组关键字的日志用取得群组104a的日志置换,作为处理中批次数据112d。
(2‐6)群组处理动作
接下来,群组处理单元105处理群组并输出结果(步骤S15)。在此,处理是指在将群组变换为结果的抽象措施中定义的业务逻辑的构成要素。另外,结果是关于“complete”(完成)或者“incomplete”(未完成)的记载以外未决定严格的方式的业务数据。
图10是用于说明调试装置1的群组处理动作的概略图。另外,图15是示出调试装置1的群组处理动作的概要的流程图。
群组处理单元105如图10所示,开始某个群组的处理中批次数据112e的处理(步骤S50)。
首先,群组处理单元105生成未输入值的结果数据115e(步骤S51)。结果数据115e具有:状态状况,表示群组的状态是完成或者未完成中的哪一个;以及成果数据,表示群组的日志是否满足预先决定的条件的验证结果,设为在该状态下在状态状况以及成果数据中什么也未记载(或者也可以记载默认值)。
接下来,在群组处理单元105中,作为预先决定的条件,预先准备典型的模型群组,与该典型的模型群组比较,确认在该群组中是否有日志的缺陷(步骤S52),在有缺陷的情况下(步骤S52;“是”),在结果数据115e的状态状况中记载为“Incomplete”(步骤S53)。另外,该结果数据115e的成果数据由于无法进行验证,所以作为一个例子,作为临时的值记载为“FAIL”。
接下来,群组处理单元105确认在该群组中是否有日志的缺陷(步骤S52),在无缺陷的情况下(步骤S52;“否”),在结果数据115e的状态状况中记载为“Complete”(步骤S54)。另外,该结果数据115e的成果数据由于在日志中无缺陷而能够验证,群组处理单元105如果通过预先决定的验证方法判断为日志的群组妥当则记载为“PASS”,如果判断为不妥当则记载为“FAIL”。此外,日志的群组的妥当性的判断也可以通过外部装置、外部功能实现。
接下来,群组处理单元105将结果数据115e输出到存储部11并储存(步骤S55)。
(2‐7)未完成结果保存动作
接下来,群组处理单元105保存结果数据115e中的状态状况是“Incomplete”的未完成结果(步骤S16)。另外,未完成结果表格制作单元106将从未完成结果被保存的时刻追加预先决定的期间的时刻设定为超时的时刻,作为状态未确定的未完成结果,制作未完成结果表格113。
在此,设定超时的目的在于:防止构筑使应用的性能降低的未完成结果。例如,在如产生系统的崩溃而群组未结束的情况下,该群组的未完成结果使应用的性能降低。即,超时成为用于将该群组去掉并反映到结果的安全网。
另外,同时,超时还是使群组适应于以下所示的情形的例子。例如,通过针对持续几日、几周期间的事件设定非常长的超时,即使在长的期间未受理到数据的情况下,也能够正确地评价群组的完成或者未完成。因此,应用的性能提高、和向持续长期间的事件的对应处于折中的关系,所以由利用者适宜地调整超时的期间。
(2‐8)结果输出动作
接下来,结果输出单元107将完成的结果和未完成结果中的通过超时输出的结果作为状态确定的结果集中输出到未图示的终端等(步骤S17)。即,集中输出在“(2‐6)群组处理动作”中状态状况成为“Complete”的结果和在“(2‐4)未完成结果输出动作”中制作的输出结果列表114a的结果。
此外,在结果输出单元107中,作为一个例子,为了将与系统的验证有关的所有信息提供给要求调试的用户,将所有结果重新保存到Elasticsearch。另外,结果输出单元107为了接下来的批次处理,制作包括成果数据是“PASS”的数量、成果数据是“FAIL”的数量、处理中批次数据112的最终ID等的批次处理的摘要。
(实施方式的效果)
根据上述实施方式,通过将未完成结果表格113保持为中间结果数据,能够将在单一的批次数据中未完成的日志在接受到新的批次数据时与不同的批次数据间的日志重新群组化,对如在持续多个批次数据的时间的范围中引起的动作群组也能够对应地调试。
另外,为了还能够对应如在持续多个批次数据的时间的范围中引起的动作群组,即使在对直至动作完成所需的期间不同的多个群组的日志进行批次处理的情况下,无需等待其他群组的动作完成而能够从完成的动作依次输出调试结果。
此外,在以往的调试装置中,虽然认为通过以包括群组的所有数据的方式将批次数据的期间设定得较长也能够调试,但在以调试多个群组的所有的方式调整期间时,存在调试所需的时间成为各群组所需的必要时间以上这样的问题。另外,在如与多个种类的群组对应的动作的开始时刻分别不同,依次受理数据的情况下,仍仅能够进行在批次数据中包含的群组的调试,无法通过延长期间来对应。
[其他实施方式]
此外,本发明不限于上述实施方式,能够在不脱离本发明的要旨的范围内进行各种变形。
在上述实施方式中,用程序实现了控制部10的各单元100~107的功能,但也可以通过ASIC等硬件实现各单元的全部或者一部分。另外,还能够将在上述实施方式中使用的程序储存到CD‐ROM等记录介质来提供。另外,能够在不变更本发明的要旨的范围内,进行在上述实施方式中说明的上述步骤的重排、删除、追加等。
提供即使在对随着时间经过依次受理的日志数据列进行批次处理的情况且一连串的日志横跨多个批次数据的情况下,仍抑制调试的结果错误的信息处理程序、信息处理装置以及调试系统。

Claims (12)

1.一种调试方法,具备:
处理数据选择步骤,从按照时间经过依次受理到伴随调试对象的程序的动作而产生的日志的日志数据之列,选择预先决定的范围的日志,作为批次处理的处理中批次数据;
群组化步骤,根据日志的字段,对在所述处理数据选择步骤中选择出的所述处理中批次数据进行群组化;
群组处理步骤,在由所述群组化步骤群组化的日志的集合与预先决定的条件相比有缺陷的情况下,将该群组作为未完成的状态记录为未完成结果;以及
未完成群组处理步骤,在选择所述处理中批次数据之后,执行所述处理数据选择步骤,选择新的处理中批次数据,执行所述群组化步骤对该新的处理中批次数据进行群组化之后,在该新的处理中批次数据与在所述群组处理步骤中作为未完成结果的群组之间存在在所述群组化步骤中群组化的字段的值共同的群组的情况下,将所述新的处理中批次数据的该共同的群组的日志数据作为属于该共同的群组的所有日志数据。
2.根据权利要求1所述的调试方法,其中,
所述群组处理步骤在所述未完成结果中设定并记录超时时刻。
3.根据权利要求2所述的调试方法,其中,
群组处理步骤在由所述群组化步骤群组化的日志的集合满足完成的条件的情况下,处理该群组并保存为完成结果,
所述调试方法还具备:
结果输出步骤,将所述未完成结果中的经过所述超时时刻的未完成结果和所述完成结果作为调试的结果输出。
4.一种信息处理装置,具备:
处理数据选择单元,从按照时间经过依次受理到伴随调试对象的程序的动作而产生的日志的日志数据之列,选择预先决定的范围的日志,作为批次处理的处理中批次数据;
群组化单元,根据日志的字段,对所述处理数据选择单元选择出的所述处理中批次数据进行群组化;
群组处理单元,在由所述群组化单元群组化的日志的集合与预先决定的条件相比有缺陷的情况下,将该群组作为未完成的状态记录为未完成结果;以及
未完成群组处理单元,所述处理数据选择单元在所述处理中批次数据之后选择新的处理中批次数据,所述群组化单元对该新的处理中批次数据进行群组化之后,在该新的处理中批次数据与所述群组处理单元作为未完成结果的群组之间存在所述群组化单元群组化的字段的值共同的群组的情况下,将所述新的处理中批次数据的该共同的群组的日志数据作为属于该共同的群组的所有日志数据。
5.根据权利要求4所述的信息处理装置,其中,
所述群组处理单元在所述未完成结果中设定并记录超时时刻。
6.根据权利要求5所述的信息处理装置,其中,
群组处理单元在所述群组化单元群组化的日志的集合满足完成的条件的情况下,处理该群组并保存为完成结果,
所述的信息处理装置还作为如下单元而发挥功能:
结果输出单元,将所述未完成结果中的经过所述超时时刻的未完成结果和所述完成结果作为调试的结果输出。
7.一种调试系统,包括:
调试对象装置,按照时间经过依次输出伴随调试对象的程序的动作而产生的日志;以及
信息处理装置,
该信息处理装置具有:
处理数据选择单元,从自所述调试对象装置受理到的日志数据之列,选择预先决定的范围的日志,作为批次处理的处理中批次数据;
群组化单元,根据日志的字段,对所述处理数据选择单元选择出的所述处理中批次数据进行群组化;
群组处理单元,在由所述群组化单元群组化的日志的集合与预先决定的条件相比有缺陷的情况下,将该群组作为未完成的状态记录为未完成结果;以及
未完成群组处理单元,所述处理数据选择单元在所述处理中批次数据之后选择新的处理中批次数据,所述群组化单元对该新的处理中批次数据进行群组化之后,在该新的处理中批次数据与所述群组处理单元作为未完成结果的群组之间存在所述群组化单元群组化的字段的值共同的群组的情况下,将所述新的处理中批次数据的该共同的群组的日志数据作为属于该共同的群组的所有日志数据。
8.根据权利要求7所述的调试系统,其中,
所述信息处理装置在所述未完成结果中设定并记录超时时刻。
9.根据权利要求8所述的调试系统,其中,
所述信息处理装置在所述群组化单元群组化的日志的集合满足完成的条件的情况下,处理该群组并保存为完成结果,
将所述未完成结果中的经过所述超时时刻的未完成结果和所述完成结果作为调试的结果输出。
10.一种记录了信息处理程序的记录介质,该信息处理程序用于使计算机作为如下单元而发挥功能:
处理数据选择单元,从按照时间经过依次受理到伴随调试对象的程序的动作而产生的日志的日志数据之列,选择预先决定的范围的日志,作为批次处理的处理中批次数据;
群组化单元,根据日志的字段,对所述处理数据选择单元选择出的所述处理中批次数据进行群组化;
群组处理单元,在由所述群组化单元群组化的日志的集合与预先决定的条件相比有缺陷的情况下,将该群组作为未完成的状态记录为未完成结果;以及
未完成群组处理单元,所述处理数据选择单元在所述处理中批次数据之后选择新的处理中批次数据,所述群组化单元对该新的处理中批次数据进行群组化之后,在该新的处理中批次数据与所述群组处理单元作为未完成结果的群组之间存在所述群组化单元群组化的字段的值共同的群组的情况下,将所述新的处理中批次数据的该共同的群组的日志数据作为属于该共同的群组的所有日志数据。
11.根据权利要求10所述的记录了信息处理程序的记录介质,其中,
所述群组处理单元在所述未完成结果中设定并记录超时时刻。
12.根据权利要求11所述的记录了信息处理程序的记录介质,其中,
群组处理单元在所述群组化单元群组化的日志的集合满足完成的条件的情况下,处理该群组并保存为完成结果,
所述信息处理程序使计算机还作为如下单元而发挥功能:
结果输出单元,将所述未完成结果中的经过所述超时时刻的未完成结果和所述完成结果作为调试的结果输出。
CN201880001995.XA 2018-02-01 2018-02-27 信息处理程序、信息处理装置以及调试系统 Active CN110352409B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2018-016373 2018-02-01
JP2018016373A JP6396615B1 (ja) 2018-02-01 2018-02-01 情報処理プログラム、情報処理装置及びデバッグシステム
PCT/JP2018/007259 WO2019150589A1 (ja) 2018-02-01 2018-02-27 情報処理プログラム、情報処理装置及びデバッグシステム

Publications (2)

Publication Number Publication Date
CN110352409A CN110352409A (zh) 2019-10-18
CN110352409B true CN110352409B (zh) 2023-02-03

Family

ID=63668429

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880001995.XA Active CN110352409B (zh) 2018-02-01 2018-02-27 信息处理程序、信息处理装置以及调试系统

Country Status (4)

Country Link
EP (1) EP3748506B1 (zh)
JP (1) JP6396615B1 (zh)
CN (1) CN110352409B (zh)
WO (1) WO2019150589A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020154381A (ja) * 2019-03-18 2020-09-24 ヤフー株式会社 情報処理システム、情報処理装置、情報処理方法およびプログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60129851A (ja) * 1983-12-19 1985-07-11 Fujitsu Ltd ログ・デ−タ分類付け収集処理方式
JP2013058264A (ja) * 2012-12-25 2013-03-28 Fujitsu Ltd ソフトウェアデバッグ支援プログラム、ソフトウェアデバッグ支援装置およびソフトウェアデバッグ支援方法
JP2016170713A (ja) * 2015-03-13 2016-09-23 日本電気株式会社 情報処理装置、方法及びプログラム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11327967A (ja) * 1998-05-18 1999-11-30 Mitsubishi Electric Corp ログファイル解析装置
JP2000293399A (ja) * 1999-04-06 2000-10-20 Nec Ic Microcomput Syst Ltd デバッグ方法及びデバッグ装置
US7779021B1 (en) * 2004-03-09 2010-08-17 Versata Development Group, Inc. Session-based processing method and system
US8126943B2 (en) * 2004-08-09 2012-02-28 International Business Machines Corporation Autonomic virtual log configuration
US10152366B2 (en) * 2013-09-24 2018-12-11 Nec Corporation Log analysis system, fault cause analysis system, log analysis method, and recording medium which stores program
US9626271B2 (en) * 2014-09-26 2017-04-18 Oracle International Corporation Multivariate metadata based cloud deployment monitoring for lifecycle operations

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60129851A (ja) * 1983-12-19 1985-07-11 Fujitsu Ltd ログ・デ−タ分類付け収集処理方式
JP2013058264A (ja) * 2012-12-25 2013-03-28 Fujitsu Ltd ソフトウェアデバッグ支援プログラム、ソフトウェアデバッグ支援装置およびソフトウェアデバッグ支援方法
JP2016170713A (ja) * 2015-03-13 2016-09-23 日本電気株式会社 情報処理装置、方法及びプログラム

Also Published As

Publication number Publication date
EP3748506A4 (en) 2021-11-03
JP2019133497A (ja) 2019-08-08
WO2019150589A1 (ja) 2019-08-08
JP6396615B1 (ja) 2018-09-26
EP3748506B1 (en) 2024-03-06
EP3748506A1 (en) 2020-12-09
CN110352409A (zh) 2019-10-18

Similar Documents

Publication Publication Date Title
CN110737584A (zh) 基于区块链的业务数据测试方法、装置及计算机设备
US20090182794A1 (en) Error management apparatus
CN110781231A (zh) 基于数据库的批量导入方法、装置、设备及存储介质
CN109344053B (zh) 接口覆盖测试方法、系统、计算机设备和存储介质
US20120254337A1 (en) Mainframe Management Console Monitoring
CN110352409B (zh) 信息处理程序、信息处理装置以及调试系统
US7451145B1 (en) Method and apparatus for recursively analyzing log file data in a network
CN109992476B (zh) 一种日志的分析方法、服务器及存储介质
CN114116422A (zh) 一种硬盘日志分析方法、硬盘日志分析装置及存储介质
US10698796B2 (en) Non-transitory computer-readable medium, information processing apparatus, debugging system and debugging method
CN110825816B (zh) 对分片数据库数据采集的系统和方法
CN110417892B (zh) 基于报文解析的数据复制链路优化方法及装置
CN112749043B (zh) 一种数据库灾备的方法、系统、设备及介质
CN111400117B (zh) 一种自动化测试Ceph集群的方法
CN115878448A (zh) 数据库测试方法、分布式数据库、存储介质
CN109992475B (zh) 一种日志的处理方法、服务器及存储介质
CN113342650A (zh) 分布式系统的混沌工程方法及装置
JP5717600B2 (ja) アラームパターン解析装置、アラームパターン解析プログラム、およびネットワーク監視システム
CN111177097B (zh) 一种日志收集方法、装置、设备及计算机可读存储介质
US11429597B2 (en) System and method for reconstructing regression test scenarios using post-production events
JP6295176B2 (ja) メッセージ処理装置およびメッセージ処理方法
CN117880211A (zh) 适用于流量录制回放多节点采集的流量去重方法
JP5411613B2 (ja) プログラムテスト決定装置、プログラムテスト決定方法、およびプログラム
JP2012226504A (ja) プログラムの実行結果の比較方法
CN114490407A (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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40010461

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant