JP5618381B2 - Event log search method, apparatus and program thereof - Google Patents
Event log search method, apparatus and program thereof Download PDFInfo
- Publication number
- JP5618381B2 JP5618381B2 JP2012031315A JP2012031315A JP5618381B2 JP 5618381 B2 JP5618381 B2 JP 5618381B2 JP 2012031315 A JP2012031315 A JP 2012031315A JP 2012031315 A JP2012031315 A JP 2012031315A JP 5618381 B2 JP5618381 B2 JP 5618381B2
- Authority
- JP
- Japan
- Prior art keywords
- seqbdd
- event
- representing
- node
- event log
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G06F17/30—
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
本発明は、ソフトウェアにおけるイベントログを検索する技術に関する。 The present invention relates to a technique for searching event logs in software.
コンピュータ上で動作するソフトウェアによって実現される、企業における業務システム等の情報処理システム向けのソリューションとして、近年、イベントログを活用した技術が数多く提案されている。通常、業務の案件を完了させるには、情報処理システムのサーバやクライアントの機能を活用し、様々な処理を順次実行する必要がある。イベントログとは、案件の完了までの過程で実施される処理や操作、システムの状態変化の内容(ここではこれらを総称して単にイベントと呼ぶ。)を、処理時刻(タイムスタンプ)とともに記録したものである。各案件のイベントログは記憶装置に蓄積され、例えば業務監査で不正な処理や必要な処理が抜けた案件がないかの検査や、エラーの発生した状態がどのような案件に多いのか等の業務改善のための分析に活用される。 In recent years, a number of technologies utilizing event logs have been proposed as solutions for information processing systems such as business systems in enterprises that are realized by software running on computers. Normally, in order to complete a business case, it is necessary to sequentially execute various processes using the functions of the server and client of the information processing system. The event log is a record of the processing and operations performed in the process up to the completion of the matter, and the contents of the system status change (here, these are collectively referred to simply as events) along with the processing time (time stamp). Is. The event log of each case is stored in the storage device. For example, checks whether there are cases in which illegal processing or necessary processing has been missed in business audits, and what types of cases are causing errors. Used for analysis for improvement.
イベントログを用いた検査や分析ではイベントログの集合に対して条件を与え、その条件に合致するイベントログを検索する技術が必須となる。一般的なイベントログの検索技術は、検索キーワードを含む文書を抽出するWeb検索などと同様に、条件として記述されたイベントが出現するイベントログを抽出する。しかし、実際のイベントログの検査や分析では、2以上の特定のイベントが特定の順序で出現するイベントログ、すなわち特定のイベント発生順序を含むイベントログを抽出したい場合があり、イベント発生順序に関する検索技術の確立が必要となっている。 In inspection and analysis using event logs, a technique is required for assigning conditions to a set of event logs and searching for event logs that match the conditions. A general event log search technique extracts an event log in which an event described as a condition appears, as in a Web search for extracting a document including a search keyword. However, in the actual event log inspection and analysis, there are cases where it is desired to extract an event log in which two or more specific events appear in a specific order, that is, an event log including a specific event occurrence order. Technology needs to be established.
[従来技術]
特定のイベント発生順序の検索技術として、非特許文献1に提案の技術がある。非特許文献1提案の技術では、特定のイベント発生順序を表す条件を線形時相論理で記述し、記憶装置に蓄積されている各イベントログがその条件を満たすか判定する。以下、非特許文献1提案の技術について説明する。
[Conventional technology]
As a search technique for a specific event occurrence order, there is a technique proposed in Non-Patent
記憶装置に蓄積されているイベントログの集合をSとし、案件に対するイベントログをπ∈Sとしたとき、イベントログπはその案件を処理する過程で発生したイベントをタイムスタンプの昇順に並べた列で表現することができる。すなわちイベントログの集合Sに含まれるすべてのイベントの集合をAとし、イベントログπで発生するイベントをタイムスタンプの昇順にe1,e2,・・・,enとすると、π=e1e2e3・・・enとなる。但し、e1,e2,・・・,en∈Aである。なおイベントログπの長さを|π|と表記する。 When a set of event logs stored in the storage device is S and an event log for a matter is π∈S, the event log π is a sequence in which events generated in the process of the matter are arranged in ascending order of time stamps. Can be expressed as That is, assuming that a set of all events included in the set S of event logs is A, and events that occur in the event log π are e 1 , e 2 ,..., E n in ascending order of time stamps, π = e 1 the e 2 e 3 ··· e n. Here, e 1 , e 2 ,..., E n ∈A. The length of the event log π is expressed as | π |.
検索条件として記述する線形時相論理式では、命題論理における否定(¬)や連言(∧)、選言(∨)などの論理演算子に加えて、Next(○)、Until(U)といった様相演算子を使用することができる。図1にBNF記法で記した線形時相論理の文法を示す。 In linear temporal logic formulas described as search conditions, in addition to logical operators such as negation (¬), conjunction (∧), and disjunction (∨) in propositional logic, Next (○), Until (U), etc. Modality operators can be used. FIG. 1 shows the grammar of linear temporal logic written in BNF notation.
イベントログπが線形時相論理式Fを満たすかの判定は、関数Check(F,π,i)を用いてCheck(F,π,0)を実行する。Check(F,π,i)は、イベントログπのi番目のイベントeiにて論理式Fを満たすか判定する関数である。出力はtrueもしくはfalseであり、それぞれ論理式を満たすこと、及び満たさないことを意味する。Check(F,π,0)は論理式Fの構造に対して再帰的に判定が実施される。図2にCheck(F,π,i)の判定処理、すなわちイベントログπが線形時相論理式Fを満たすかの判定処理の概要を示す。 To determine whether the event log π satisfies the linear temporal logic formula F, Check (F, π, 0) is executed using the function Check (F, π, i). The Check (F, [pi, i) is a function that determines whether to satisfy a formula F at the i-th event e i in the event log [pi. The output is true or false, meaning that the logical expression is satisfied or not satisfied, respectively. Check (F, π, 0) is recursively determined for the structure of logical expression F. FIG. 2 shows an outline of the determination process of Check (F, π, i), that is, the determination process of whether the event log π satisfies the linear temporal logic formula F.
このような判定方法は、イベントログを個々にCheck関数を用いて判定する必要がある。したがって集合Sに含まれるイベントログの数に対して、ログを検索する計算量が比例してしまうという問題点がある。 Such a determination method needs to determine event logs individually using the Check function. Therefore, there is a problem in that the amount of calculation for searching the log is proportional to the number of event logs included in the set S.
時相論理による判定の高速化技術としては、モデル検査技術分野において様々な提案がなされている。モデル検査とは、システムの振る舞いをオートマトンでモデル化し、その振る舞いが時相論理式で記述された仕様を満たすか判定する。オートマトンの状態数に比例して判定に必要となる計算量が増加するため、オートマトンをBDD(Binary Decision Diagram)と呼ばれるコンパクトなデータ構造で表現し、検査手続を高速化した非特許文献2や、SAT問題に帰着することでSATソルバを利用して高速化を実現する非特許文献3などが提案されている。このような高速化技術は、検査対象がオートマトンであることを前提としている。
Various proposals have been made in the model checking technology field as a technique for speeding up judgment based on temporal logic. In model checking, the behavior of a system is modeled by an automaton, and it is determined whether the behavior satisfies a specification described by a temporal logic expression. Since the amount of calculation required for determination increases in proportion to the number of states of the automaton, the automaton is expressed by a compact data structure called BDD (Binary Decision Diagram), and
イベントログの時相論理による検索に、モデル検査などで利用されている高速化技術を適用する場合、イベントログの集合Sをそれと等価なオートマトンに変換する必要がある。イベントの集合に含まれる各イベントをアルファベット(a,b,c等)で表現すると、イベントログは文字列a,abb,ac,bc等として表現することができる。イベントログの集合Sと等価なオートマトンとは、Sに含まれる文字列のみを受理するオートマトンとなる。 When a high-speed technique used in model checking or the like is applied to the search based on temporal logic of the event log, it is necessary to convert the set S of event logs into an automaton equivalent to it. If each event included in the set of events is expressed by alphabets (a, b, c, etc.), the event log can be expressed as a character string a, abb, ac, bc, etc. An automaton equivalent to the set S of event logs is an automaton that accepts only a character string included in S.
このような有限長の文字列の集合をコンパクトに表現するデータ構造として、非特許文献4にSeqBDD(Sequence BDD)が提案されている。SeqBDDはノードとノード間を結ぶ方向つきのエッジとで表現される無閉路有向グラフの一種である。 Non-Patent Document 4 proposes SeqBDD (Sequence BDD) as a data structure that compactly represents a set of character strings of a finite length. SeqBDD is a kind of acyclic directed graph expressed by nodes and edges with directions connecting the nodes.
前記ノードとしては他のノードへのエッジを持つ中間ノードと、他のノードへのエッジを持たないシンクノードの2種類が存在する。中間ノードはラベルを持ち、ここではアルファベット文字とする。中間ノードから他のノードへのエッジは必ず2つ存在し、ここではそれぞれを1エッジ、0エッジと呼ぶ。さらに1エッジ側に接続されるノードを1子ノード、同様に0エッジ側に接続されるノードを0子ノードと呼ぶ。 There are two types of nodes: an intermediate node having an edge to another node and a sink node having no edge to another node. The intermediate node has a label, and here is an alphabetic character. There are always two edges from the intermediate node to the other nodes, which are referred to as 1 edge and 0 edge, respectively. Further, a node connected to the 1 edge side is called a 1 child node, and similarly a node connected to the 0 edge side is called a 0 child node.
1子ノードが中間ノードの場合、文字列中において親ノードが示す文字の次に出現する文字を示す。0子ノードが中間ノードの場合、親ノードが示す文字は文字列に出現せず、0子ノードの文字が出現することを意味する。文字には順序が付与されており、中間ノードとその1子ノードの中間ノードのラベルに制限はない。中間ノードとその0子ノードの中間ノードのラベルは、その順序を守って文字が出現する必要がある。例えばa→bという順序があるとき、中間ノードのラベルがbである場合にその0子ノードの中間ノードのラベルがaであったり、bであったりすることは許されない。 When one child node is an intermediate node, it indicates the character that appears next to the character indicated by the parent node in the character string. When the 0 child node is an intermediate node, it means that the character indicated by the parent node does not appear in the character string but the character of the 0 child node appears. The order is given to the characters, and there is no restriction on the label of the intermediate node and the intermediate node of its one child node. The labels of the intermediate node and the intermediate node of its 0 child node must follow the order and characters appear. For example, when there is an order of a → b and the label of the intermediate node is b, the label of the intermediate node of the 0 child node is not allowed to be a or b.
シンクノードは1もしくは0というラベルを持ち、それぞれ1シンクノード、0シンクノードと呼ぶ。SeqBDDにおいては1シンクノードと0シンクノードはそれぞれ1つのみ存在する。SeqBDDでは中間ノードを経由する経路が文字列を表現している。経路が1シンクノードへ到達するとき、経路の示す文字列はSeqBDDの表現する文字列の集合に含まれることを意味する。もし経路が0シンクノードへ到達するとき、経路の示す文字列はSeqBDDが表現する文字列の集合に含まれないことを意味する。 The sink node has a label of 1 or 0 and is called 1 sync node and 0 sync node, respectively. In SeqBDD, there is only one 1 sync node and one 0 sync node. In SeqBDD, a route that passes through an intermediate node represents a character string. When the route reaches one sink node, it means that the character string indicated by the route is included in the set of character strings represented by SeqBDD. If the route reaches 0 sink node, it means that the character string indicated by the route is not included in the set of character strings represented by SeqBDD.
図3に文字列abcのみで構成される文字列の集合{abc}を意味するSeqBDDを示す。また図4に文字列aaa,aba,bbc,bcで構成される文字列の集合{aaa,aba,bbc,bc}を意味するSeqBDDを示す。なお、図4では説明を容易にするため中間ノードから0シンクノードへのエッジ及び0シンクノードの表示を省略した。これ以降のSeqBDDの図示でも同様に表記するものとする。 FIG. 3 shows SeqBDD meaning a set of character strings {abc} composed only of character strings abc. FIG. 4 shows SeqBDD meaning a set of character strings {aaa, aba, bbc, bc} composed of character strings aaa, aba, bbc, bc. In FIG. 4, the edge from the intermediate node to the 0 sync node and the display of the 0 sync node are omitted for ease of explanation. In the following illustrations of SeqBDD, the same is used.
直感的にはSeqBDDの中間ノードの1シンクノードからの1エッジに関する高さが、表現する文字列中におけるラベルの文字の出現位置を示す(高いほうが文字列中の前の位置に出現する。)。一方、中間ノードと0子ノードの中間ノードとの関係は、文字列中の同じ位置における出現文字のバリエーションを表している。例えば、図4の最も高い位置にあるaノードは、文字列の先頭においてaの文字が出現する文字列を意味している。そのaノードの0子ノードであるbノードは、文字列の先頭においてaが出現せず、bが出現する文字列を意味する。 Intuitively, the height of one edge from one sink node of the intermediate node of SeqBDD indicates the appearance position of the character of the label in the character string to be expressed (the higher one appears at the previous position in the character string). . On the other hand, the relationship between the intermediate node and the intermediate node of the 0 child node represents a variation of the appearing character at the same position in the character string. For example, the a node at the highest position in FIG. 4 means a character string in which the letter a appears at the beginning of the character string. The b node which is a 0 child node of the a node means a character string in which a does not appear at the head of the character string but b appears.
SeqBDDは近年、データマイニング領域において適用されているデータ構造である。主に文字列の集合から頻出する部分文字列を抽出するために利用する。SeqBDDを時相論理によるイベントログの検索に用いる場合、イベントログの集合からそれと等価なSeqBDDに変換することが考えられる。SeqDBBは一種のオートマトンとみなすこともできるため、SeqBDDに対してモデル検査技術の高速化技術を適用することで検索を高速化することが可能である。しかし、このようなSeqBDDを用いたイベントログの検索においては、現状の技術では下記のような課題がある。 SeqBDD is a data structure that has recently been applied in the data mining domain. It is mainly used to extract partial character strings that frequently appear from a set of character strings. When SeqBDD is used to search event logs based on temporal logic, it can be considered that a set of event logs is converted to SeqBDD equivalent to it. Since SeqDBB can be regarded as a kind of automaton, it is possible to speed up the search by applying a model checking technique acceleration technique to SeqBDD. However, in the event log search using such SeqBDD, the current technology has the following problems.
一般にイベントログの検索条件の記述では、時相論理式の原子としてイベントそのものを記述するとは限らない。例えば、イベントログのイベントとしてアプリケーションのGUIの画像を記録していると仮定する。もちろん、画像そのもの(それを画像aとする。)を原子に与えて、「いつか画像aが出現するイベントログ」などの時相論理式(true U a)で検索する場合もある。しかし、イベントそのものではなく、「エラーウインドウが出現している画像」という別の観点で出現順序に関する検索をしたい場合もある。この場合、イベントをイベントで成立する観点にマップする関数が必要となる。すなわちマップ関数mは観点の集合をPとすると、m:A→2Pと表現することができる。 In general, in the description of event log search conditions, the event itself is not always described as an atom of a temporal logic formula. For example, it is assumed that an application GUI image is recorded as an event in the event log. Of course, there may be a case where an image itself (which is referred to as an image a) is given to an atom and searched by a temporal logic formula (true U a) such as “event log where an image a appears someday”. However, there is a case where it is desired to search for the appearance order from another viewpoint of “an image in which an error window appears” instead of the event itself. In this case, a function for mapping the event to the viewpoint established by the event is required. That is, the map function m can be expressed as m: A → 2 P where P is a set of viewpoints.
このようなマップ関数mのもとで、観点を原子とする時相論理式による検索を実施する場合、検索対象であるイベントログ、すなわちイベントの集合A上のイベント列を観点の部分集合2P上の列(ここでは観点列と呼ぶ。)に変換しなければならない。
When a search using a temporal logic formula with the viewpoint as an atom is performed under such a map function m, the event log on the search target, that is, the event sequence on the event set A is a
例えばイベントログとして「abc」が存在するとき、観点の集合P=[α,β]の部分集合に対して、マップ関数mがm(a)=[α],m(b)=[α],m(c)=[β]が与えられた場合を考える(マップ関数mは対表現でm:(a,[α] ),(b,[α]),(c,[β])などと表現しても良い。)。このときイベントログ「abc」を観点列「ααβ」(正確には[α][α][β]であるが略記する。)に変換し、原子が観点の集合Pの要素である時相論理式で検索することになる。 For example, when “abc” exists as the event log, the map function m is m (a) = [α], m (b) = [α] for a subset of the viewpoint set P = [α, β]. , M (c) = [β] is considered (the map function m is a pair expression m: (a, [α]), (b, [α]), (c, [β]), etc. May be expressed.) At this time, the event log “abc” is converted into the viewpoint sequence “ααβ” (precisely [α] [α] [β] but abbreviated), and the temporal logic in which atoms are elements of the set P of viewpoints) Search by expression.
このようなイベントログの観点列への変換は、イベントログの集合Sを表すSeqBDD上で実現できることが望ましい。図4のSeqBDDが表すイベントログ(文字列)の集合{aaa,aba,bbc,bc}を前述のマップ関数mによる観点列の集合{ααα,ααβ,αβ}に変換し、SeqBDDで表現したものを図5に示す。 It is desirable that such conversion of the event log into the viewpoint column can be realized on the SeqBDD representing the set S of event logs. A set {aa, aba, bbc, bc} of event logs (character strings) represented by SeqBDD in FIG. Is shown in FIG.
図5のSeqBDDを得るためには、各イベントログを一度すべて観点列に変換し、観点列の集合からSeqBDDを構築する方法が考えられる。しかし、この方法では検索条件の時相論理式にて原子が変わる、すなわち観点の集合Pの変更やイベントと観点とのマッピングの変更のたびにSeqBDDを最初から構築し直す必要があるため、最悪、検索のたびにSeqBDDを構築することになり、検索のレスポンスの低下の一因となる。 In order to obtain SeqBDD in FIG. 5, it is conceivable to convert each event log once into a viewpoint column and construct SeqBDD from a set of viewpoint columns. However, with this method, the atoms change in the temporal logic formula of the search condition, that is, it is necessary to reconstruct the SeqBDD from the beginning each time the set of viewpoints P is changed or the mapping between events and viewpoints is changed. SeqBDD is constructed for each search, which contributes to a decrease in search response.
イベントログの集合を表すSeqBDDから観点列の集合を表すSeqBDDへ直接変換することができれば、検索のレスポンスの低下を防止することができる。SeqBDDでは、様々な集合演算や操作をSeqBDD上で実施するためのアルゴリズムが提案されている(非特許文献5の表3に簡潔にまとめられているので参考にされたい。)。しかし、これらの提案されている演算の単純な組み合わせでは、本発明において実現したいイベントログの集合から観点列の集合への変換をSeqBDD上で実現することができなかった。
If it is possible to directly convert SeqBDD representing a set of event logs into SeqBDD representing a set of viewpoint columns, it is possible to prevent a decrease in search response. In SeqBDD, an algorithm for performing various set operations and operations on SeqBDD has been proposed (refer to Table 3 of
本発明では、イベントログの集合に対してイベントの観点を原子とする時相論理式で検索を行うとき、検索条件を変更による観点の集合やイベントと観点のマッピングの変更のたびに検索レスポンスが低下するという課題を解決するために、以下の特徴を有する。 In the present invention, when searching for a set of event logs using a temporal logic formula with the viewpoint of the event as an atom, a search response is sent each time a set of viewpoints or a mapping between events and viewpoints is changed by changing the search condition. In order to solve the problem of lowering, the following features are provided.
本発明の第一の発明として、
イベントログの集合から特定のイベント発生順序を含むイベントログを検索する方法であって、入力装置と、SeqBDD形式で表されたイベントログの集合を記憶する記憶装置と、出力装置と、検索制御手段と、イベントログ追加手段と、マップ関数生成手段と、観点列集合変換手段と、検索手段とを用いて、検索制御手段が、入力装置から特定のイベント発生順序を表す条件を記述した時相論理式が入力されると、記憶装置からイベントログの集合を表すSeqBDDを取り出すステップと、検索制御手段の制御に応じてマップ関数生成手段が、イベントログの集合に出現するイベントと時相論理式の原子に出現する観点の部分集合とのマップ関数を作成するステップと、検索制御手段の制御に応じて観点列集合変換手段が、記憶装置から取り出したイベントログの集合を表すSeqBDDを前記マップ関数に基づいて等価な観点列の集合を表すSeqBDDに変換するステップと、検索制御手段の制御に応じて検索手段が、観点列の集合を表すSeqBDDから前記入力された時相論理式を満たす観点列を抽出するステップと、検索制御手段が、前記抽出させた観点列をマップ関数の逆関数によりイベントログに変換するステップと、検索制御手段が、前記変換したイベントログが記憶装置から取り出したイベントログの集合を表すSeqBDDに含まれているか判定し、含まれているイベントログのみ出力装置に出力するステップと、を具備することを特徴とする。
As the first invention of the present invention,
A method for searching an event log including a specific event occurrence order from a set of event logs, an input device, a storage device storing a set of event logs expressed in SeqBDD format, an output device, and search control means And the event log adding means, the map function generating means, the viewpoint sequence set converting means, and the searching means, and the search control means describes a temporal logic describing a condition representing a specific event occurrence order from the input device. If the expression is input, retrieving the SeqBDD representing a set of event logs from the storage device, the mapping function generating unit in accordance with the control of the search control means, the event and time phase logical expressions appearing in the set of event log and creating a map function of a subset of the viewpoint appearing in atom, the viewpoint column set conversion means in accordance with the control of the search control means is taken out from the storage device event And converting the SeqBDD representing a set of equivalent aspect columns based SeqBDD representing a set of Torogu the map function, the search means in response to the control of the search control means, the input from SeqBDD representing a set of viewpoint column A step of extracting viewpoint columns satisfying the temporal logic formula, a step of the search control means converting the extracted viewpoint columns into an event log by an inverse function of a map function, and the search control means Determining whether an event log is included in SeqBDD representing a set of event logs extracted from the storage device, and outputting only the included event log to the output device.
本発明の第二の発明として、
第一の発明における記憶装置から取り出したイベントログの集合を表すSeqBDDをマップ関数に基づいて等価な観点列の集合を表すSeqBDDに変換するステップにあっては、検索制御手段の制御に応じて観点列集合変換手段が、イベントログの集合を表すSeqBDDの中間ノードのラベルをマップ関数によりイベントから対応する観点に置き換える第1のステップと、ラベルを観点に変換したSeqBDDにおける頂点ノードである基準ノードがシンクノードか判定する第2のステップと、シンクノードでない場合に基準ノードから0エッジのみで到達可能な中間ノードである比較ノードにラベルが等しいノードがあるか判定する第3のステップと、基準ノードとラベルが等しい比較ノードが存在しない場合に、基準ノードの0子ノード及び1子ノードをそれぞれ基準ノードとして第2のステップ以降を再帰的に繰り返す第4のステップと、基準ノードとラベルが等しい比較ノードが存在する場合に、当該比較ノードへの0エッジを0シンクノードに張り替える第5のステップと、基準ノードを頂点とするSeqBDDと比較ノードを頂点とするSeqBDDとの和集合を表すSeqBDDを求める第6のステップと、求めた和集合のSeqBDDの頂点ノードに対して基準ノードへのエッジを張り替える第7のステップと、求めた和集合のSeqBDDの頂点ノードの0子ノード及び1子ノードをそれぞれ基準ノードとして第2のステップ以降を再帰的に繰り返す第8のステップと、を実行することを特徴とする。
As a second invention of the present invention,
In the step of converting SeqBDD representing a set of event logs taken out from the storage device in the first invention into SeqBDD representing a set of equivalent viewpoint columns based on a map function, a viewpoint according to the control of the search control means A first step in which the column set conversion means replaces the label of the intermediate node of SeqBDD representing the set of event logs from the event to the corresponding viewpoint from the map function, and the reference node that is the vertex node in SeqBDD converted from the label to the viewpoint A second step for determining whether the node is a sink node, a third step for determining whether there is a node having the same label among the comparison nodes that are intermediate nodes that can be reached only by 0 edge from the reference node when the node is not a sink node, and the reference node If there is no comparison node with the same label, the 0 child node and 1 child node of the reference node A fourth step that recursively repeats the second and subsequent steps as a node, and a fifth step in which, when there is a comparison node having the same label as the reference node, the 0 edge to the comparison node is replaced with a 0 sink node And a sixth step for obtaining a SeqBDD representing the union of the SeqBDD having the reference node as the vertex and the SeqBDD having the comparison node as the vertex, and an edge to the reference node with respect to the vertex node of the SeqBDD of the obtained union Executing the seventh step of re-sequencing and the eighth step of recursively repeating the second and subsequent steps, with the 0 child node and 1 child node of the vertex node of the SeqBDD of the obtained union as the reference nodes, respectively. It is characterized by.
本発明の第三の発明として、
第一または第二の発明における記憶装置を更新する方法であって、さらに、イベントログ追加手段を用いて、検索制御手段が、入力装置から検索対象となるイベントログが入力されると、記憶装置からイベントログの集合を表すSeqBDDを取り出すステップと、検索制御手段の制御に応じてイベントログ追加手段が、前記入力されたイベントログのみを要素とする集合を表すSeqBDDを作成するステップと、検索制御手段の制御に応じてイベントログ追加手段が、前記作成した入力イベントログのみを要素とする集合を表すSeqBDDと記憶装置から取り出したイベントログの集合を表すSeqBDDとの和集合を表すSeqBDDを求めるステップと、検索制御手段が、前記求めさせた和集合を表すSeqBDDを記憶装置に記憶するステップと、を具備することを特徴とする。
As a third invention of the present invention,
A method of updating a memory device in the first or second invention, furthermore, by using the event log additional means, when the search control means, the event log to be searched from the input device is input, the storage device and creating and retrieving SeqBDD representing a set of event log, the event log additional means according to the control of the search control means, the SeqBDD representing a set of said input event logs only elements from the search control step event log addition means according to the control of the means to determine the SeqBDD representing the union of the SeqBDD representing a set of event log retrieved from SeqBDD a memory device representing a set of only the element input event logs that the created When the search control unit, characterized by comprising the steps of: storing SeqBDD representing the union which is the determined in the storage device.
本発明の第四の発明として、
イベントログの集合から特定のイベント発生順序を含むイベントログを検索する装置であって、入力装置と、SeqBDD形式で表されたイベントログの集合を記憶する記憶装置と、出力装置と、イベントログの集合に出現するイベントと時相論理式の原子に出現する観点の部分集合とのマップ関数を作成するマップ関数生成手段と、イベントログの集合を表すSeqBDDをマップ関数mに基づいて等価な観点列の集合を表すSeqBDDに変換する観点列集合変換手段と、観点列の集合を表すSeqBDDから時相論理式を満たす観点列を抽出する検索手段と、入力装置から特定のイベント発生順序を表す条件を記述した時相論理式が入力されると、記憶装置からイベントログの集合を表すSeqBDDを取り出し、マップ関数生成手段を制御して、イベントログの集合に出現するイベントと時相論理式の原子に出現する観点の部分集合とのマップ関数を作成させ、観点列集合変換手段を制御して、記憶装置から取り出したイベントログの集合を表すSeqBDDを前記マップ関数に基づいて等価な観点列の集合を表すSeqBDDに変換させ、検索手段を制御して、観点列の集合を表すSeqBDDから前記入力された時相論理式を満たす観点列を抽出させ、前記抽出させた観点列をマップ関数の逆関数によりイベントログに変換し、前記変換したイベントログが記憶装置から取り出したイベントログの集合を表すSeqBDDに含まれているか判定し、含まれているイベントログのみ出力装置に出力する検索制御手段と、を少なくとも具備することを特徴とする。
As a fourth invention of the present invention,
A device for searching an event log including a specific event occurrence order from a set of event logs, an input device, a storage device for storing a set of event logs expressed in SeqBDD format, an output device, and an event log Map function generating means for creating a map function between an event appearing in the set and a subset of the viewpoint appearing in the atom of the temporal logic formula, and SeqBDD representing the set of event logs based on the map function m A viewpoint column set conversion means for converting to a SeqBDD representing a set of points, a search means for extracting a viewpoint sequence satisfying a temporal logic expression from a SeqBDD representing a set of viewpoint sequences, and a condition indicating a specific event occurrence order from the input device. when temporal logic expressions when describing is input, retrieves the SeqBDD representing a set of event logs from the storage device, and controls the mapping function generating means, appears in the set of event log To create a map function of a subset of the viewpoint appearing in vent and time phase formulas of atoms, by controlling the aspect column set conversion means, the SeqBDD representing a set of event log retrieved from the storage device to the mapping function based was converted to SeqBDD representing a set of equivalent aspect column, by controlling the retrieval means, from SeqBDD representing a set of viewpoint column to extract the viewpoint columns satisfy the temporal logic expressions when the input was the extracted The viewpoint column is converted into an event log by the inverse function of the map function, and it is determined whether the converted event log is included in SeqBDD representing a set of event logs extracted from the storage device, and only the included event log is output. And at least a search control means for outputting to.
本発明の第五の発明として、
第四の発明において、さらに、入力されたイベントログのみを要素とする集合を表すSeqBDDを作成し、これと記憶装置に記憶されているイベントログの集合を表すSeqBDDとの和集合を表すSeqBDDを求めるイベントログ追加手段を備え、検索制御手段は、さらに、入力装置から検索対象となるイベントログが入力されると、記憶装置からイベントログの集合を表すSeqBDDを取り出し、イベントログ追加手段を制御して、前記入力されたイベントログのみを要素とする集合を表すSeqBDDを作成させ、イベントログ追加手段を制御して、前記作成した入力イベントログのみを要素とする集合を表すSeqBDDと記憶装置から取り出したイベントログの集合を表すSeqBDDとの和集合を表すSeqBDDを求めさせ、前記求めさせた和集合を表すSeqBDDを記憶装置に記憶することを特徴とする。
As a fifth invention of the present invention,
In a fourth invention, further, the SeqBDD representing the union of the SeqBDD representing a set of event log create a SeqBDD representing a set of only event logs entered as elements, it is stored in this storage device When the event log to be searched is input from the input device, the search control means further retrieves SeqBDD representing a set of event logs from the storage device, and controls the event log addition means. Te, only event logs the input to create a SeqBDD representing a set of an element controls the event log additional means, removed from SeqBDD a memory device representing a set of only the element input event logs that the created It was sought SeqBDD representing the union of the SeqBDD representing a set of event logs, especially to store SeqBDD representing the union which is the determined in the storage device To.
本発明の第六の発明として、
コンピュータを、第四または第五の発明の各手段として機能させるためのプログラムであることを特徴とする。
As a sixth invention of the present invention,
It is a program for causing a computer to function as each means of the fourth or fifth invention .
本発明によれば、イベントログの集合から観点列への集合の変換をSeqBDD上で実施することが可能となり、検索条件として記述される時相論理式の原子に出現する観点の集合やイベントと観点のマッピングが変更されても高速にログの検索を行うことができるようになる。 According to the present invention, it is possible to perform a set conversion from a set of event logs to a viewpoint column on SeqBDD, and a set of viewpoints and events that appear in atoms of a temporal logic expression described as a search condition Even if the viewpoint mapping is changed, the log can be searched at high speed.
図6は本発明のイベントログを検索する方法を実施する装置の実施の形態の一例、ここでは周知のコンピュータ上に実現した例を示すもので、図中、11は入力装置、12は記憶装置、13は出力装置、14はコンピュータである。 FIG. 6 shows an example of an embodiment of an apparatus for carrying out the method for retrieving an event log according to the present invention, here an example realized on a known computer. In the figure, 11 is an input device, and 12 is a storage device. , 13 is an output device, and 14 is a computer.
入力装置11は、キーボード、マウス等からなり、ユーザがコンピュータ14に所定の情報、すなわち検索対象となるイベントログや検索条件となる時相論理式を入力するためのものである。記憶装置12は、入力装置11より入力されたイベントログを記録し、イベントログの集合をSeqBDDの形式で記憶・保持するためのものである。出力装置13は、ディスプレイ等で構成され、コンピュータ14が実施する図7及び図8の手続きの途中経過や結果(抽出したイベントログ)を表示するためのものである。
The
コンピュータ14は、検索制御部15、イベントログ追加部16、マップ関数生成部17、観点列集合変換部18及び検索部19を構成する。
The
検索制御部15は、コンピュータ14に構成される各部を制御するとともに、図7及び図8の手続きを実施する。具体的には、入力装置11から検索対象となるイベントログが入力されたときに図7の手続きを実施し、記憶装置12のイベントログの集合に入力されたイベントログを追加し、記憶装置12のイベントログの集合を更新する。また検索制御部15は、入力装置11から検索条件を表す時相論理式が入力されたときに図8の手続きを実施し、記憶装置12のイベントログの集合から時相論理式を満たすイベントログを抽出し、出力装置13に結果を出力する。
The
図8のS21からS24までのステップの実施により、入力された時相論理式fを満たす観点列を抽出することができる。しかしここで必要なのは、その観点列と対応する元のイベントログである。S25のステップでは、そこで得られた観点列をマップ関数mの逆関数によってイベントログに変換する。例えば、図5のSeqBDDが示す観点列の集合から「ααα」という観点列を抽出したとする。マップ関数mがm(a)=[α],m(b)=[α],m(c)=[β]の場合、αはイベントaもしくはbと対応するため、S25のステップにより観点列「ααα」に対応するイベントログとして「aaa」,「aab」,「aba」,「baa」,「bab」,「bba」,「bbb」を得ることができる。 By performing the steps from S21 to S24 in FIG. 8, it is possible to extract a viewpoint column that satisfies the input temporal logic formula f. However, what is needed here is the original event log corresponding to the viewpoint column. In step S25, the viewpoint sequence obtained there is converted into an event log by the inverse function of the map function m. For example, it is assumed that the viewpoint sequence “ααα” is extracted from the set of viewpoint sequences indicated by SeqBDD in FIG. When the map function m is m (a) = [α], m (b) = [α], m (c) = [β], since α corresponds to the event a or b, the viewpoint sequence is performed in step S25. As event logs corresponding to “ααα”, “aaa”, “aab”, “aba”, “baa”, “bab”, “bba”, “bbb” can be obtained.
このようにして得られたイベントログには、元のイベントログの集合に含まれないイベントログが存在するため、S26のステップでイベントログの集合にこれらのイベントログが含まれるか判定し、含まれるイベントログのみ出力装置13に出力する。この例の場合、図5の観点列の集合と対応するイベントログの集合のSeqBDDは図4となるため、結果としてイベントログ「aaa」,「aba」が出力される。なお、SeqBDD上で文字列の集合に文字列が含まれるかを判定することは非特許文献4などにより公知の事項であるため、説明を割愛する。
Since the event logs obtained in this way include event logs that are not included in the original event log set, it is determined whether or not these event logs are included in the event log set in step S26. Only the event log to be output is output to the
イベントログ追加部16は、検索制御部15が実施する図7の手続きにおけるS12、S13のステップを実施し、入力されたイベントログのみを要素とする集合を表すSeqBDDを作成し、これと記憶装置に記憶されているイベントログの集合を表すSeqBDDとの和集合を表すSeqBDDを求める。
The event
すなわち、入力装置11から検索対象となるイベントログ、ここではπが入力されると、検索制御部15が、記憶装置12からイベントログの集合を表すSeqBDDを取り出し(S11)、イベントログ追加部16によりS12のステップにて入力されたイベントログπのみを要素とする集合を表すSeqBDDを作成し、イベントログ追加部16によりS13のステップにて前記作成した入力イベントログπのみを要素とする集合を表すSeqBDDと記憶装置12から取り出したイベントログの集合を表すSeqBDDとの和集合を表すSeqBDDを求め、その後、前記求めた和集合を表すSeqBDDを記憶装置12に記憶する(S14)。
That is, when an event log to be searched from the
マップ関数生成部17は、検索制御部15が実施する図8の手続きにおけるS22のステップを実施、具体的には図9の手続きを実施し、イベントログの集合を観点列の集合に変換するために必要となる、イベントログの集合に出現するイベントと時相論理式の原子に出現する観点の部分集合とのマップ関数mを生成する。
The map
図9の手続では、S31のステップにてイベントログの集合Sに出現するイベントの集合をAとし、S32のステップにて時相論理式fに出現する原子(観点)を抽出し、集合Pとする。次に、S33のステップにて集合Aが空集合であれば処理を終了して図8の手続きにおけるS23のステップに戻る。集合Aが空集合でなければ、S34のステップにて集合Aからイベントを1つ取り出してeで表す。次に、S35のステップにて、前記取り出したイベントとそのイベントが満たす観点の集合Q⊆Pとの対(e,Q)を作成する。さらに、S36のステップにてマップ関数mに前記作成した対(e,Q)を追加し、S33のステップに戻り、集合Aが空集合となるまでS34〜S36のステップを繰り返す。 In the procedure of FIG. 9, the set of events that appear in the event log set S in step S31 is A, and the atoms (viewpoints) that appear in the temporal logic formula f are extracted in step S32, and the set P and To do. Next, if the set A is an empty set in step S33, the process is terminated and the process returns to step S23 in the procedure of FIG. If the set A is not an empty set, one event is extracted from the set A in step S34 and represented by e. Next, in step S35, a pair (e, Q) of the extracted event and a set Q⊆P of viewpoints satisfied by the event is created. Further, the created pair (e, Q) is added to the map function m in step S36, the process returns to step S33, and steps S34 to S36 are repeated until the set A becomes an empty set.
観点列集合変換部18は、検索制御部15が実施する図8の手続きにおけるS23のステップ、具体的には図10の手続きを実施し、記憶装置12から取り出したイベントログの集合を表すSeqBDDをマップ関数mに基づいて等価な観点列の集合を表すSeqBDDに変換する。
The viewpoint sequence set
図10の手続では、S41のステップにて、イベントログの集合Sを表すSeqBDDの各中間ノードのラベルを、マップ関数mに基づいてイベントから観点の集合に書き換える。例えば図4のSeqBDDに対して、マップ関数mがm(a)=[α],m(b)=[α],m(c)=[β]で与えられるとき、SeqBDDの中間ノードのラベルa,bをαに書き換え、ラベルcをβに書き換えて図11のSeqBDDを得る。 In the procedure of FIG. 10, in step S41, the label of each intermediate node of SeqBDD representing the event log set S is rewritten from the event to the viewpoint set based on the map function m. For example, when the map function m is given by m (a) = [α], m (b) = [α], m (c) = [β] for SeqBDD in FIG. 4, the label of the intermediate node of SeqBDD Rewriting a and b to α and rewriting the label c to β gives SeqBDD in FIG.
このようにして得られたSeqBDDは、SeqBDDの条件を満たしておらず、正規化が必要になる。例えば、図11のSeqBDDでは、中間ノードとその0子ノードのラベルが同じ観点となっているものが存在する(図11におけるノード1とノード2、あるいはノード3とノード4など)。よって、続くS42のステップでは、S41のステップで得たSeqBDDの頂点ノード(基準ノード)nに対して図12の手続きを実施し、正規化されたSeqBDDに変換する。
The SeqBDD obtained in this way does not satisfy the SeqBDD condition, and normalization is required. For example, in the SeqBDD of FIG. 11, there are those in which the intermediate node and its 0 child node have the same viewpoint (
図12の手続きでは、まずS51のステップにて、与えられたノードnがシンクノードであるか調べる。シンクノードであればこれ以上の変換はできないため、手続きを終了する。シンクノードではなく、中間ノードである場合は、S52のステップにてノードnから0エッジのみで到達可能な中間ノード(比較ノード)に当該ノードnと同じラベルのノードn’があるかを調べる。 In the procedure of FIG. 12, it is first checked in step S51 whether the given node n is a sink node. If it is a sink node, no further conversion is possible, so the procedure ends. If the node is not a sink node but an intermediate node, it is checked in step S52 whether there is a node n 'having the same label as the node n among the intermediate nodes (comparison nodes) that can be reached from the node n with only 0 edges.
同じラベルがない場合はS53のステップを実施し、ノードnの0子ノード及び1子ノードをそれぞれノードnとしてS51以降の手続きを再帰的に実施する。同じラベルが存在する場合は以下のS54からS57のステップを実施する。例えば、図11の頂点ノード1に対して図12の手続きを実施すると、ノード1の0子ノードであるノード2が同じαというラベルを持つため、S54からS57のステップが実施されることになる。
When there is no same label, the step of S53 is performed, and the procedure after S51 is recursively performed with the 0 child node and the 1 child node of the node n as the node n. If the same label exists, the following steps S54 to S57 are performed. For example, if the procedure of FIG. 12 is performed on the
S54のステップでは、まずノードn’への0エッジを0シンクノードに接続する。図11の頂点ノード1に対して、このステップを実施した結果を図13に示す。図13ではノード1からノード2への0エッジが削除されていることに注意されたい。このノード2への0エッジは0シンクノードに接続されているが、表記上省略している。
In step S54, first, the 0 edge to the node n 'is connected to the 0 sink node. FIG. 13 shows the result of performing this step on the
次にS55のステップで、ノードnを頂点ノードとするSeqBDDと、ノードn’を頂点とするSeqBDDとの和集合を求める。図13のSeqBDDに対してこのステップを実施するとき、ノード1を頂点とするSeqBDD(図14)とノード2を頂点とするSeqBDD(図15)との和集合を求める。その結果のSeqBDDを図16に示す。和集合のSeqBDDを求める方法は非特許文献1等により公知の事項であるため、説明は割愛する。
Next, in step S55, a union of SeqBDD having node n as a vertex node and SeqBDD having node n 'as a vertex is obtained. When this step is performed on SeqBDD in FIG. 13, a union of SeqBDD (FIG. 14) having
さらにS56のステップで、ノードnへのエッジがあれば、それをS55のステップで求めたSeqBDDの頂点ノードへ張り替える。図16の場合は、ノードnが頂点ノード1であり、ノード1へのエッジがないため特に処理を実施しない。
In step S56, if there is an edge to node n, it is replaced with the vertex node of SeqBDD obtained in step S55. In the case of FIG. 16, since node n is the
最後にS57のステップでは、S56のステップで作成したSeqBDDの頂点ノードの0子ノード及び1子ノードをそれぞれノードnとしてS51以降の手続きを再帰的に実施する。図16のSeqBDDにおいてS57のステップを実行する場合、頂点ノード1’の0子ノードである0シンクノード(図示せず)と、1子ノードであるノード2’とをそれぞれノードnとしてS51以降の手続きを実施する。
Finally, in step S57, the procedure from S51 onward is recursively performed with the 0 child node and 1 child node of the vertex node of SeqBDD created in step S56 as node n. When the step of S57 is executed in SeqBDD of FIG. 16, the 0 sink node (not shown) which is the 0 child node of the
0シンクノードに対してS51以降の手続きを実施すると、S51のステップのシンクノードの判定により特に処理を実施せず、終了となる。一方、ノード2’に対しては、S51,S52,S54のステップが実行され、S55のステップでノードnであるノード2’を頂点ノードとするSeqBDD(図17)とノードn’であるノード3’を頂点ノードとするSeqBDD(図18)との和集合を求める(図19)。
When the procedure after S51 is performed on the 0 sync node, the process is terminated without performing any particular processing according to the determination of the sync node in the step of S51. On the other hand, for the
S56のステップでは、S55で求めた図19の頂点ノード1”に、図16におけるノードnであるノード2’への(ノード1’からの)エッジを張り替えて、図20のSeqBDDを得る。これ以降は図20のノード1”の0子ノード及び1子ノードをそれぞれノードnとしてS51以降の手続きを再帰的に実施するが、結果としては特に変更は発生せず、最終的に図20のSeqBDDに変換することができる。
In the step of S56, the edge (from the
このように、図12の手続き及びそれを実施する観点列集合変換部18により、イベントログの集合を表すSeqBDDから等価な観点列の集合を表すSeqBDDを直接求めることができる。これにより、検索条件が入力される度にイベントログを観点列に変換して観点列集合を表すSeqBDDを求める必要がなくなり、検索のレスポンスを大きく改善することができる。
In this way, the procedure of FIG. 12 and the viewpoint sequence set
検索部19は、図8の手続きにおけるS24のステップを実施し、観点列集合変換部18にて求めたSeqBDDに対して、入力された時相論理式fを満たす観点列を抽出する。SeqBDDは一種のオートマトンであり、オートマトンが受理する文字列の集合に対して時相論理式満たす文字列を抽出する技術は非特許文献2や3にて公知の事項であるため、説明は割愛する。
The
なお、前述した実施の形態では、検索制御部15、イベントログ追加部16、マップ関数生成部17、観点列集合変換部18及び検索部19をコンピュータ14上に実現した例を示したが、ハードウェアで実現しても良い。またこれら各装置が、適切な通信路で相互に接続された複数のハードウェア上に分散して存在し、相互に通信し合いながら実行することもできる。
In the above-described embodiment, the example in which the
ここでは、本発明の実施例として、図6の構成をとった場合におけるイベントログの検索方法を説明する。 Here, as an embodiment of the present invention, an event log search method when the configuration of FIG. 6 is adopted will be described.
例えば、記憶装置12に記憶されているイベントログが1つも存在しない場合を考える。ここで入力装置11からイベントログ「aaa」が入力された場合、コンピュータ14に構成された検索制御部15は図7の手続きを実施し、イベントログ追加部16がイベントログ「aaa」のみからなる集合を表現する図21のSeqBDDを作成し、記憶装置12に記録する。さらに、入力装置11からイベントログ「aba」が入力されると同様に図7の手続きを実施し、記憶装置12に記憶されている図21のSeqBDDと、イベントログ「aba」のみの集合を表す図22のSeqBDDとの和集合(図23)をイベントログ追加部16が求め、記憶装置12に記憶する。さらに入力装置11からイベントログ「bbc」や「bc」が入力されると、結果として記憶装置12に記憶されるイベントログの集合{aaa,aba,bbc,bc}を表すSeqBDDは図4となる。
For example, consider a case where no event log stored in the
記憶装置12に記憶されているSeqBDDが図4であるとき、入力装置11から時相論理式fとして◇β(いつかβが成立しているイベントログ)が入力された場合を考える。ここでβはイベントcでのみ成立し、イベントaやbでは成立しないものとする。このときコンピュータ14に構成される検索制御部15は図8の手続きを実施する。
When SeqBDD stored in the
まずS21のステップで記憶装置12に記憶されている図4のSeqBDDを取り出す。次にS22のステップでマップ関数生成部17によりイベントとイベントで成立する観点の集合とのマップ関数mを作成する。具体的には図9の手続きを実施する。すなわち、S31のステップにてイベントの集合がA={a,b,c}となり、S32のステップで観点の集合PがP=[β]となる。続くS33からS36のステップでイベントの集合Aからイベントを1つずつ取り出し、そのイベントで成立する観点の部分集合を求める。ここではイベントa,イベントbで成立する観点の部分集合は空集合となり、イベントcで成立する観点の部分集合は[β]となる。ここで空集合をαで表現すると、マップ関数mは(a,α),(b,α),(c,β)で表現できる。
First, in step S21, the SeqBDD of FIG. 4 stored in the
マップ関数mを求めると、検索制御部15は図8の続くS23のステップを実施し、観点列集合変換部18が図10の手続きを実施する。まずS41のステップで図4のSeqBDDのラベルをマップ関数mに基づいてイベントから観点に変更する。この結果、得られるSeqBDDは図11となる。さらにS42のステップを実施し、図11のSeqBDDを図12の手続きにより図20のSeqBDDに変換する。観点列の集合を表すSeqBDDが求まると、検索制御部15は図8の手続きのS24のステップを実施し、検索部19が図20のSeqBDDに対して時相論理式◇βを満たす観点列を求める。
When the map function m is obtained, the
結果として、観点列「ααβ」,「αβ」を抽出する。このように抽出された観点列に対して検索制御部15はS25のステップを実行し、関数mの逆関数を使って観点列をイベントログに変換する。結果としてイベントログ「aac」,「abc」,「bbc」,「ac」,「bc」を得ることができる。最後にS26のステップで検索制御部15は、これらのイベントログが記憶装置12から取り出した図4のSeqBDDに含まれるか判定し、含まれているもののみを出力装置13に出力する。この場合はイベントログ「bbc」及び「bc」が出力される。
As a result, viewpoint columns “ααβ” and “αβ” are extracted. The
11:入力装置、12:記憶装置、13:出力装置、14:コンピュータ、15:検索制御部、16:イベントログ追加部、17:マップ関数生成部、18:観点列集合変換部、19:検索部。 11: input device, 12: storage device, 13: output device, 14: computer, 15: search control unit, 16: event log addition unit, 17: map function generation unit, 18: viewpoint sequence set conversion unit, 19: search Department.
Claims (6)
入力装置と、SeqBDD形式で表されたイベントログの集合を記憶する記憶装置と、出力装置と、検索制御手段と、イベントログ追加手段と、マップ関数生成手段と、観点列集合変換手段と、検索手段とを用いて、
検索制御手段が、入力装置から特定のイベント発生順序を表す条件を記述した時相論理式が入力されると、記憶装置からイベントログの集合を表すSeqBDDを取り出すステップと、
検索制御手段の制御に応じてマップ関数生成手段が、イベントログの集合に出現するイベントと時相論理式の原子に出現する観点の部分集合とのマップ関数を作成するステップと、
検索制御手段の制御に応じて観点列集合変換手段が、記憶装置から取り出したイベントログの集合を表すSeqBDDを前記マップ関数に基づいて等価な観点列の集合を表すSeqBDDに変換するステップと、
検索制御手段の制御に応じて検索手段が、観点列の集合を表すSeqBDDから前記入力された時相論理式を満たす観点列を抽出するステップと、
検索制御手段が、前記抽出させた観点列をマップ関数の逆関数によりイベントログに変換するステップと、
検索制御手段が、前記変換したイベントログが記憶装置から取り出したイベントログの集合を表すSeqBDDに含まれているか判定し、含まれているイベントログのみ出力装置に出力するステップと、を具備する
ことを特徴とするイベントログの検索方法。 A method for searching an event log including a specific event occurrence order from a set of event logs,
An input device, a storage device that stores a set of event logs expressed in the SeqBDD format, an output device, a search control unit, an event log addition unit, a map function generation unit, a viewpoint sequence set conversion unit, and a search With means,
When the search control means receives a temporal logic expression describing a condition representing a specific event occurrence order from the input device, a step of retrieving SeqBDD representing a set of event logs from the storage device;
Map function generation means in response to the control of the search control means, and creating a map function of a subset of terms of appearance in the event and time phase formulas of atoms occurring in the set of event log,
A step in which the viewpoint column set conversion means for converting the SeqBDD representing a set of equivalent aspect columns based SeqBDD representing a set of event log retrieved from the storage device to the mapping function in accordance with the control of the search control means,
Retrieval means under the control of the search control means, extracting a viewpoint columns satisfy the temporal logic expressions when the SeqBDD representing a set of viewpoint column is the input,
A search control means for converting the extracted viewpoint sequence into an event log by an inverse function of a map function;
The search control means includes a step of determining whether the converted event log is included in SeqBDD representing a set of event logs extracted from the storage device, and outputting only the included event log to the output device. Search method for event logs.
検索制御手段の制御に応じて観点列集合変換手段が、
イベントログの集合を表すSeqBDDの中間ノードのラベルをマップ関数によりイベントから対応する観点に置き換える第1のステップと、
ラベルを観点に変換したSeqBDDにおける頂点ノードである基準ノードがシンクノードか判定する第2のステップと、
シンクノードでない場合に基準ノードから0エッジのみで到達可能な中間ノードである比較ノードにラベルが等しいノードがあるか判定する第3のステップと、
基準ノードとラベルが等しい比較ノードが存在しない場合に、基準ノードの0子ノード及び1子ノードをそれぞれ基準ノードとして第2のステップ以降を再帰的に繰り返す第4のステップと、
基準ノードとラベルが等しい比較ノードが存在する場合に、当該比較ノードへの0エッジを0シンクノードに張り替える第5のステップと、
基準ノードを頂点とするSeqBDDと比較ノードを頂点とするSeqBDDとの和集合を表すSeqBDDを求める第6のステップと、
求めた和集合のSeqBDDの頂点ノードに対して基準ノードへのエッジを張り替える第7のステップと、
求めた和集合のSeqBDDの頂点ノードの0子ノード及び1子ノードをそれぞれ基準ノードとして第2のステップ以降を再帰的に繰り返す第8のステップと、を実行する
ことを特徴とする請求項1に記載のイベントログの検索方法。 In the step of converting SeqBDD representing a set of event logs retrieved from the storage device into SeqBDD representing a set of equivalent viewpoint columns based on a map function,
According to the control of the search control means, the viewpoint sequence set conversion means
A first step of replacing a label of an intermediate node of SeqBDD representing a set of event logs from an event to a corresponding viewpoint by a map function;
A second step of determining whether a reference node which is a vertex node in SeqBDD converted from a label as a viewpoint is a sink node;
A third step of determining whether there is a node with the same label among the comparison nodes, which are intermediate nodes that can be reached with only 0 edge from the reference node when they are not sink nodes;
A fourth step that recursively repeats the second and subsequent steps using a 0-node and a 1-child node of the reference node as reference nodes, respectively, when there is no comparison node having the same label as the reference node;
A fifth step of replacing the 0 edge to the comparison node with a 0 sink node when there is a comparison node having the same label as the reference node;
A sixth step of obtaining a SeqBDD representing a union of SeqBDD having a reference node as a vertex and a SeqBDD having a comparison node as a vertex;
A seventh step of replacing the edge to the reference node with respect to the vertex node of the SeqBDD of the obtained union;
The eighth step of recursively repeating the second step and subsequent steps is performed with the 0 child node and 1 child node of the vertex node of the SeqBDD of the obtained union as reference nodes, respectively. How to search the described event log.
さらに、イベントログ追加手段を用いて、
検索制御手段が、入力装置から検索対象となるイベントログが入力されると、記憶装置からイベントログの集合を表すSeqBDDを取り出すステップと、
検索制御手段の制御に応じてイベントログ追加手段が、前記入力されたイベントログのみを要素とする集合を表すSeqBDDを作成するステップと、
検索制御手段の制御に応じてイベントログ追加手段が、前記作成した入力イベントログのみを要素とする集合を表すSeqBDDと記憶装置から取り出したイベントログの集合を表すSeqBDDとの和集合を表すSeqBDDを求めるステップと、
検索制御手段が、前記求めさせた和集合を表すSeqBDDを記憶装置に記憶するステップと、を具備する
ことを特徴とする請求項1または2に記載のイベントログの検索方法。 A method for updating a storage device in the event log search method according to claim 1, comprising:
Furthermore , using event log addition means,
When an event log to be searched is input from the input device, the search control means retrieves SeqBDD representing a set of event logs from the storage device;
A step of event log addition means according to the control of the search control means, to create a SeqBDD representing a set of only the element event log said inputted,
Event Log addition means according to the control of the search control means, the SeqBDD representing the union of the SeqBDD representing a set of event log retrieved from SeqBDD a memory device representing a set of only the element input event logs that the created Seeking steps,
Search control means, the search method of the event log according to Claim 1 or 2, characterized by comprising the steps of storing the SeqBDD representing the union which is the determined in the storage device.
入力装置と、
SeqBDD形式で表されたイベントログの集合を記憶する記憶装置と、
出力装置と、
イベントログの集合に出現するイベントと時相論理式の原子に出現する観点の部分集合とのマップ関数を作成するマップ関数生成手段と、
イベントログの集合を表すSeqBDDをマップ関数mに基づいて等価な観点列の集合を表すSeqBDDに変換する観点列集合変換手段と、
観点列の集合を表すSeqBDDから時相論理式を満たす観点列を抽出する検索手段と、
入力装置から特定のイベント発生順序を表す条件を記述した時相論理式が入力されると、記憶装置からイベントログの集合を表すSeqBDDを取り出し、
マップ関数生成手段を制御して、イベントログの集合に出現するイベントと時相論理式の原子に出現する観点の部分集合とのマップ関数を作成させ、
観点列集合変換手段を制御して、記憶装置から取り出したイベントログの集合を表すSeqBDDを前記マップ関数に基づいて等価な観点列の集合を表すSeqBDDに変換させ、
検索手段を制御して、観点列の集合を表すSeqBDDから前記入力された時相論理式を満たす観点列を抽出させ、
前記抽出させた観点列をマップ関数の逆関数によりイベントログに変換し、
前記変換したイベントログが記憶装置から取り出したイベントログの集合を表すSeqBDDに含まれているか判定し、含まれているイベントログのみ出力装置に出力する検索制御手段と、を少なくとも具備する
ことを特徴とするイベントログの検索装置。 An apparatus for searching an event log including a specific event occurrence order from a set of event logs,
An input device;
A storage device for storing a set of event logs represented in SeqBDD format;
An output device;
A map function generating means for creating a map function between an event appearing in a set of event logs and a subset of viewpoints appearing in atoms of a temporal logic formula;
Viewpoint column set conversion means for converting SeqBDD representing a set of event logs into SeqBDD representing a set of equivalent viewpoint columns based on the map function m;
A search means for extracting a viewpoint column satisfying a temporal logic formula from SeqBDD representing a set of viewpoint columns;
When a temporal logic expression describing a condition representing a specific event occurrence order is input from the input device, SeqBDD representing a set of event logs is extracted from the storage device,
And it controls the mapping function generating means, to create a map function of a subset of terms of appearance in the event and time phase formulas of atoms occurring in the set of event log,
And it controls the viewpoint column set conversion means, to convert the SeqBDD representing a set of event log retrieved from the storage device SeqBDD representing a set of equivalent aspect columns based on the mapping function,
And it controls the retrieval means, from SeqBDD representing a set of viewpoint column to extract the viewpoint columns satisfy the temporal logic expressions when said input,
Converting the event log by inverse function of the mapping function aspects row in which the extracted,
Search control means for determining whether or not the converted event log is included in a SeqBDD representing a set of event logs extracted from the storage device, and outputting only the included event log to the output device. Event log search device.
入力されたイベントログのみを要素とする集合を表すSeqBDDを作成し、これと記憶装置に記憶されているイベントログの集合を表すSeqBDDとの和集合を表すSeqBDDを求めるイベントログ追加手段を備え、
検索制御手段は、さらに、
入力装置から検索対象となるイベントログが入力されると、記憶装置からイベントログの集合を表すSeqBDDを取り出し、
イベントログ追加手段を制御して、前記入力されたイベントログのみを要素とする集合を表すSeqBDDを作成させ、
イベントログ追加手段を制御して、前記作成した入力イベントログのみを要素とする集合を表すSeqBDDと記憶装置から取り出したイベントログの集合を表すSeqBDDとの和集合を表すSeqBDDを求めさせ、
前記求めさせた和集合を表すSeqBDDを記憶装置に記憶する
ことを特徴とする請求項4に記載のイベントログの検索装置。 In addition ,
SeqBDD representing a set having only the input event log as an element is created, and an event log adding means for obtaining SeqBDD representing a union of this and a SeqBDD representing a set of event logs stored in the storage device is provided,
The search control means further includes:
When an event log to be searched is input from the input device, SeqBDD representing a set of event logs is extracted from the storage device,
Controlling the event log additional means, to create a SeqBDD representing a set of said input event logs only element,
Controlling the event log additional means to determine the SeqBDD representing the union of the SeqBDD representing a set of event log by extracting only the input event logs that the created from SeqBDD a storage device that represents the set of the elements,
Search device event log according to claim 4, characterized in that storing SeqBDD representing the union which is the determined in the storage device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012031315A JP5618381B2 (en) | 2012-02-16 | 2012-02-16 | Event log search method, apparatus and program thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012031315A JP5618381B2 (en) | 2012-02-16 | 2012-02-16 | Event log search method, apparatus and program thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013168045A JP2013168045A (en) | 2013-08-29 |
JP5618381B2 true JP5618381B2 (en) | 2014-11-05 |
Family
ID=49178394
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012031315A Expired - Fee Related JP5618381B2 (en) | 2012-02-16 | 2012-02-16 | Event log search method, apparatus and program thereof |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5618381B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6622123B2 (en) * | 2016-03-16 | 2019-12-18 | 東芝デジタルソリューションズ株式会社 | Inspection device, inspection method, and program |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7188091B2 (en) * | 2001-03-21 | 2007-03-06 | Resolutionebs, Inc. | Rule processing system |
JP4047053B2 (en) * | 2002-04-16 | 2008-02-13 | 富士通株式会社 | Retrieval apparatus and method using sequence pattern including repetition |
US7321895B2 (en) * | 2005-01-14 | 2008-01-22 | International Business Machines Corporation | Timeline condition support for an abstract database |
WO2010097945A1 (en) * | 2009-02-27 | 2010-09-02 | 三菱電機株式会社 | Information processing apparatus, information processing method, and program |
-
2012
- 2012-02-16 JP JP2012031315A patent/JP5618381B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2013168045A (en) | 2013-08-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102565659B1 (en) | Method and apparatus for generating information | |
CN102483698B (en) | The client tier checking of dynamic WEB application | |
JP2013536484A5 (en) | ||
US11481554B2 (en) | Systems and methods for training and evaluating machine learning models using generalized vocabulary tokens for document processing | |
JP2022037955A (en) | System for selecting learning model | |
JP2017146888A (en) | Design support device and method and program | |
US20120076416A1 (en) | Determining correlations between slow stream and fast stream information | |
JP5973935B2 (en) | Browsing behavior prediction device, browsing behavior prediction method, and program | |
JP5618381B2 (en) | Event log search method, apparatus and program thereof | |
Dutta et al. | Structural analysis and regular expressions based noise elimination from web pages for web content mining | |
US11030206B2 (en) | Display method and display apparatus | |
US8510693B2 (en) | Changing abstraction level of portion of circuit design during verification | |
US9690834B2 (en) | Representation, comparison, and troubleshooting of native data between environments | |
JP5210970B2 (en) | Common query graph pattern generation method, common query graph pattern generation device, and common query graph pattern generation program | |
WO2015162889A1 (en) | Design support device, method, and program recording medium | |
CN111125445A (en) | Community theme generation method and device, electronic equipment and storage medium | |
US20160070815A1 (en) | System and method for xml subdocument selection | |
JPWO2011016281A1 (en) | Information processing apparatus and program for Bayesian network structure learning | |
JP5447054B2 (en) | DATA GENERATION METHOD, DATA GENERATION DEVICE, AND DATA GENERATION PROGRAM | |
JP7188461B2 (en) | SECURITY INFORMATION ANALYZER, SYSTEM, METHOD AND PROGRAM | |
JP6867319B2 (en) | Inter-vocabulary relationship inferring device and inter-vocabulary relationship inferring method | |
WO2017175375A1 (en) | Data cleansing system, method, and program | |
JP2021184147A (en) | Data conversion program, data conversion device, and data conversion method | |
Tan et al. | A new method for business process retrieval using breadth-first traversal | |
JP5358981B2 (en) | Information processing apparatus, information processing apparatus control method, and information processing apparatus control program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140115 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20140207 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20140306 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140530 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140703 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140820 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20140910 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140911 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5618381 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |