(57)【要約】【課題】  置換のための負担を無くすか低減することができる、ログデータ処理方法、ログデータ処理プログラム、及びログデータ処理装置を提供することを目的とする。【解決手段】  ログデータ中に含まれる情報を置換するログデータ処理方法は、ログデータの書式を定義した第１定義データから特定した第１情報を取得する取得工程と、取得した第１情報を用いて第２定義データを編集する編集工程と、前記第２定義データの第１情報に合致した、ログデータ中に含まれる第１情報を第１情報とは別の情報に置換する置換工程と、を情報処理装置を用いて実行する。【選択図】  図１
2016162366.tif 000002
【特許請求の範囲】
【請求項１】
ログデータ中に含まれる情報を置換するログデータ処理方法であって、
ログデータの書式を定義した第１定義データから特定した第１情報を取得する取得工程と、
取得した第１情報を用いて第２定義データを編集する編集工程と、
前記第２定義データの第１情報に合致した、ログデータ中に含まれる第１情報を第１情報とは別の情報に置換する置換工程と、
を情報処理装置を用いて実行することを特徴とするログデータ処理方法。
【請求項２】
前記取得工程において、互いに異なる複数の前記第１情報を取得し、
前記編集工程において、前記第２定義データの中で複数ある第１情報毎に対応する第３情報を生成し、取得した第１情報と前記第３情報とを用いて第２定義データを編集し、
前記置換工程において、前記第２定義データの第１情報に合致した、ログデータ中に含まれる第１情報を、前記第２定義データから特定した第３情報に置換する、
ことを特徴とする、請求項１に記載のログデータ処理方法。
【請求項３】
前記第３情報が前記第１情報と１対１で対応する情報であることを特徴とする、請求項２に記載のログデータ処理方法。
【請求項４】
前記編集工程において、前記第１情報毎に対応する番号を付与した第３情報を生成することを特徴とする、請求項３に記載のログデータ処理方法。
【請求項５】
前記第３情報が前記第１情報より可読性が向上した情報であることを特徴とする、請求項２乃至４の何れかの１項に記載のログデータ処理方法。
【請求項６】
前記編集工程において、第１情報を複数の要素に分解し、要素毎に変換した情報を合成した第３情報を生成することを特徴とする、請求項５に記載のログデータ処理方法。
【請求項７】
前記置換工程において、ログデータ中に含まれる機密情報を、機密情報でない情報に置換することを特徴とする、請求項１乃至６の何れかの１項に記載のログデータ処理方法。
【請求項８】
前記第１定義データと前記第２定義データとが同一のファイルまたは同一のテーブルであることを特徴とする、請求項１乃至７の何れかの１項に記載のログデータ処理方法。
【請求項９】
前記編集工程において、取得した第１情報を追加して第２定義データを編集することを特徴とする、請求項１乃至８の何れかの１項に記載のログデータ処理方法。
【請求項１０】
請求項１乃至９の何れかの１項に記載のログデータ処理方法を情報処理装置に実行させるプログラム。
【請求項１１】
ログデータ中に含まれる情報を置換するログデータ処理装置であって、
ログデータの書式を定義した第１定義データから特定した第１情報を取得する取得部と、
取得した第１情報を用いて第２定義データを編集する編集部と、
前記第２定義データの第１情報に合致した、ログデータ中に含まれる第１情報を第２情報に置換する置換部と、
を有することを特徴とするログデータ処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ログデータ処理方法、ログデータ処理プログラム、及びログデータ処理装置に関する。
【背景技術】
【０００２】
半導体製造装置等の生産装置においては、生産装置を制御するプログラムが、生産装置を構成する様々な機器の動作や制御に関する履歴等を記録した情報（以下、ログ情報とする。）を収集して、複数のログ情報をまとめたデータ（以下、ログデータとする。）を、情報処理装置内に保存している。
【０００３】
ログデータ中の一部の情報を別の情報に置換する方法として、あらかじめ、ログ情報の書式（以下、ログ書式とする。）や置換されるべき情報が把握できているログ情報に対して、置換のための条件（ルール）により置換されるべき情報を決定する等の方法がある（特許文献１）。
【０００４】
特許文献１で提案されている処理方法では、ログデータから読み込んだログ情報（メッセージ）をクラスタ分けし、ログ情報の可変部を特定し、予め設定された置換のための条件（ルール）を使用して機密情報（機密属性）を特定する。当該条件（ルール）により機密情報が特定できない場合、クラスタ分けしたログ情報における機密情報の位置関係から、機密情報を特定することができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１３−１３７７４０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
生産装置の制御プログラムの更新に伴い、ログ書式や置換されるべき情報の追加や変更がありうるが、その際、ルールにより機密情報が特定できないログ情報が追加され、１回だけ出現する場合がある。しかし、特許文献１の方法では、ルールにより機密情報が特定できないログ情報の出現回数が１回で、他に類似するログ情報がない場合には、当該ログ情報のクラスタ分けができず、機密情報を識別できないときがある。そのため、ユーザーが、機密情報を識別するためにルールを追加する必要があり、置換のための負担が生じてしまう。
【０００７】
そこで、本発明は、置換のための負担を無くすか低減することができる、ログデータ処理方法、ログデータ処理プログラム、及びログデータ処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決する本発明の一側面としてのログデータ処理方法は、ログデータ中に含まれる情報を置換するログデータ処理方法であって、ログデータの書式を定義した第１定義データから特定した第１情報を取得する取得工程と、取得した第１情報を用いて第２定義データを編集する編集工程と、前記第２定義データの第１情報に合致した、ログデータ中に含まれる第１情報を第１情報とは別の情報に置換する置換工程と、を情報処理装置を用いて実行することを特徴とする。
【発明の効果】
【０００９】
置換のための負担を無くすか低減することができる、ログデータ処理方法、ログデータ処理プログラム、及びログデータ処理装置を提供することができる。
【図面の簡単な説明】
【００１０】
【図１】情報処理装置のハードウェア構成を示すブロック図
【図２】ＣＰＵの構成を示すブロック図
【図３】実施例１に係るＣＰＵの処理を示すフローチャート
【図４】実施例１に係る第１定義データを例示する図
【図５】実施例１に係る変換対象ログデータを例示する図
【図６】実施例１に係る第２定義データを例示する図
【図７】実施例１に係る変換結果ログデータを例示する図
【図８】実施例１の方法を適用しない場合の定義データを例示する図
【図９】実施例１の方法を適用しない場合の変換結果ログデータを例示する図
【図１０】実施例２に係るＣＰＵの処理を示すフローチャート
【図１１】実施例２に係る第２定義データを例示する図
【図１２】実施例２に係る変換結果ログデータを例示する図
【図１３】実施例３に係る変換対象ログデータを例示する図
【図１４】実施例３に係るＣＰＵの処理を示すフローチャート
【図１５】実施例３に係る第３情報生成ルールを例示する図
【図１６】実施例３に係る第２定義データを例示する図
【図１７】実施例３に係る変換結果ログデータを例示する図
【発明を実施するための形態】
【００１１】
以下、本発明を実施するための最良の形態について図面を用いて説明する。
【実施例１】
【００１２】
図１〜７に基づいて、ログデータ中の情報を別の情報に置換して、変換したログデータを出力する実施例１について説明する。対象とするログデータは、半導体製造装置等の生産装置において発生するデータまたはそれを処理したデータとすることができる。具体的には、生産装置を構成する機械や電子機器や電気機器の動作や制御に関する履歴、生産装置と外部システムとの通信履歴、オペレーターの操作履歴やユーザー認証履歴など、生産装置に関するログ情報を含むデータとすることができる。
【００１３】
例えば、そのような生産装置では、生産品を区別するための情報や生産に使用する治具や部材を区別するための情報、生産品の加工内容に関する情報などがあらかじめ用意され、生産処理の開始前にこれらの情報が入力される。これらの情報が入力されたら、入力操作の履歴がログデータに記録されるが、この時、入力された情報が併せて記録される場合がある。入力された情報は、生産装置の使用者にとっては、第三者に知られることを制限するべき機密情報となり得る。このように、ログデータには機密情報が含まれることがある。そして、ログデータを外部に持ち出す必要が生じた場合、機密情報が出力された箇所は機密情報でない情報に置換する対応が必要となる。
【００１４】
図１は、ログデータ処理方法を実行することができる情報処理装置のハードウェア構成を示すブロック図である。本方法は、コンピュータの処理部（ＣＰＵやＭＰＵ等）がプログラムを読み出して実行する。本情報処理装置の機能を実現するソフトウェアやプログラムはネットワーク又は各種記憶媒体を介して１つ又は複数のコンピュータよりなる情報処理装置に供給される。その情報処理装置の処理部が、記録媒体または記憶媒体に記録または記憶されたプログラムを読み出すことにより、プログラムが実行される。離れた位置にある複数のコンピュータが有線又は無線通信で互いにデータを送受信することにより、プログラムの各種処理を行っても良い。なお、情報処理装置は、生産装置に接続されたサーバーや生産装置内にあってもよい。
【００１５】
図１の例では、ＣＰＵ１０１は、ログデータ処理に関する各種データ処理のための演算を行い、バス１０８に接続された各構成要素を制御する処理装置である。ＲＯＭ１０２は、データ読出し専用のメモリであり、基本制御プログラムが格納されている。ＲＡＭ１０３は、データ読み書き用のメモリであり、ＣＰＵ１０１の各種演算処理やデータの一時記憶用に用いられる。外部記憶装置１０４は、後述の変換対象ログデータ２０４、後述の第１定義データ２０５、後述の第２定義データ２０６、後述の変換結果ログデータ２０７の記憶用に用いられる。また、情報処理装置のオペレーティングシステム（ＯＳ）のシステムプログラム、及びプログラムやデータ処理中の一時記憶領域としても用いられる。外部記憶装置１０４は、ＲＡＭ１０３に比べてデータの入出力は遅いが、大容量のデータを保存することが可能である。外部記憶装置１０４は、記憶するデータを長期間にわたり参照できるように、永続的なデータとして保存できる不揮発性記憶装置であることが望ましい。外部記憶装置１０４は、主に磁気記憶装置（ＨＤＤ）で構成されるが、ＣＤ、ＤＶＤ、メモリカードといった外部メディアを装填してデータの読み込みや書き込みを行う装置であっても良い。
【００１６】
入力装置１０５は、情報処理装置に文字やデータを入力するための装置であり、各種のキーボードやマウスなどが該当する。表示装置１０６は、情報処理装置の処理結果を表示するための装置であり、ＣＲＴまたは液晶モニターなどが該当する。通信装置１０７は、ＬＡＮに接続してＴＣＰ／ＩＰ等の通信プロトコルによるデータ通信を行い、他の情報処理装置と相互に通信を行う場合に使用される。通信装置１０７が、変換対象ログデータ２０４、第１定義データ２０５、第２定義データ２０６、変換結果ログデータ２０７を、データ通信により別の情報処理装置から取得して、別の情報処理装置に保存するようにしても良い。
【００１７】
図２は、ＣＰＵ１０１の構成を示すブロック図である。ＣＰＵ１０１は、取得部２０１、編集部２０２、置換部２０３から構成される。取得部２０１は、外部記憶装置１０４から取得した変換対象ログデータ２０４と、第１定義データ２０５とを用いて、置換されるべき情報である第１情報を取得する。編集部２０２は、取得部２０１から第１情報を取得し、取得した第１情報を第２定義データ２０６に追加する編集をして、外部記憶装置１０４に保存する。置換部２０３は、外部記憶装置１０４から取得した変換対象ログデータ２０４と、第２定義データ２０６とを用いて変換結果ログデータ２０７を生成して、外部記憶装置１０４に保存する。
【００１８】
図３は、実施例１に係るＣＰＵ１０１の処理を示したフローチャートである。ＣＰＵ１０１において、ログデータ処理を開始する。取得部２０１は、変換対象ログデータ２０４を取得する（３０１）。取得部２０１は、第１定義データ２０５に基づいてログデータ中に含まれる第１情報を取得する（３０２）。編集部２０２は、第２定義データ２０６に取得した第１情報を追加する編集する（３０３）。置換部２０３は、変換対象ログデータ２０４、第２定義データ２０６を取得して、第２定義データ２０６に基づいて、変換対象ログデータ２０４に含まれる第１情報を、第１情報とは別の情報である第２情報に置換する（３０４）。置換部２０３は、置換したデータとして変換結果ログデータ２０７を出力する（３０５）。ＣＰＵ１０１において、ログデータ処理を終了する。上記の一連の処理は、変換対象ログデータ２０４の全体をまとめて、図３に示すフローで３０１〜３０５の各処理を一括で行う処理である。その他に、変換対象ログデータ２０４の一部（例えば、１行ずつ）を取得していき、取得した範囲で３０１〜３０３、３０１〜３０４、または３０１〜３０５を繰り返して行う処理としても良い。
【００１９】
図１における取得部２０１は、前述の通り、第１定義データ２０５に基づいてログデータ中に含まれる第１情報を取得する。第１情報がログに出力される場面は、前述の「生産処理の開始前に情報を入力した時」のように場面を特定できるものがある。出力される場面が判っているログ情報に関しては、ログデータに出力する際のログ書式をあらかじめ把握でき、ログデータ中の第１情報の取得位置は、このログ書式を手掛かりとして判定できる。
【００２０】
図４は、置換のための条件（ルール）としての、ログデータ中の第１情報の位置を判定するためのログ書式を定義した第１定義データ２０５の一例である。図４の第１定義データ２０５は、ログ書式として、パターン情報４０１（４０１−Ａ〜４０１−Ｃ）と、位置情報４０２（４０２−Ａ〜４０２−Ｃ）と、範囲情報４０３（４０３−Ａ〜４０３−Ｃ）とを含む。パターン情報４０１は、第１情報の出力位置を判定するための情報である。位置情報４０２は、パターン情報４０１に合致した文字列の位置と第１情報の位置との関係を表す。範囲情報４０３は、第１情報として取得する範囲を規定する。
【００２１】
図４の例では、これらの情報をパターン情報４０１、位置情報４０２、範囲情報４０３の順番に、カンマ区切りで列挙しており、１行に１件、合計３件の定義を登録している。３件とも、テキスト形式のログ情報に対してパターン情報４０１、位置情報４０２を固定文字列、範囲情報４０３を正規表現または固定文字列と正規表現の組合せで登録している。第１定義データ２０５は、テキスト形式だけでなく、バイナリ形式、その他の形式で保存しても良い。また、ファイルシステム上のファイル形式で保存しても良いし、データベースに保存しても良い。また、内容については可逆の暗号化をしても良い。
【００２２】
パターン情報４０１は、ある文字列やデータセットとして決まったパターンを伴って第１情報が出力されることが、ログ書式としてあらかじめ判っているログ情報に基づいて定義する。テキスト形式のログ情報に対しては、固定文字列、正規表現、またはそれらの組合せであっても良い。バイナリ形式、その他の形式のログ情報に対しては、特定の並び順の一連のデータセットであってもよい。
【００２３】
位置情報４０２は、パターン情報４０１で特定されるパターンと第１情報の取得開始位置との位置関係を表現するルールをあらかじめ決めておき、それに基づく情報を定義する。図４の例では、テキスト形式のログ情報に対して、位置情報４０２を登録している。パターン情報４０１に合致した文字列の最終文字の次の文字から位置情報４０２の文字数だけ行末方向に移動した位置から第１情報を取得する。１，２件目は「０」、３件目は「５」と登録している。
【００２４】
範囲情報４０３は、第１情報として取得する範囲の規定方法をあらかじめ決めておき、それに基づく情報を定義する。規定方法は、例えばテキスト形式のログ情報に対しては、取得する文字数を規定しても良く、あるいは文字列のパターンとして合致する正規表現で規定しても良い。図４の例では、範囲情報４０３−Ａ〜４０３−Ｃのように、第１情報の文字列が合致する正規表現を規定して登録している。範囲情報４０３−Ａは、１文字以上の任意の文字列を表現する。範囲情報４０３−Ｂは、１文字以上の任意の文字列と「．ｊｏｂ」という固定文字列を合成した文字列を表現する。範囲情報４０３−Ｃは、１文字以上の任意の文字列と「．ｍｓｋ」という固定文字列を合成した文字列を表現する。
【００２５】
図５は、変換対象ログデータ２０４の一例である。変換対象ログデータ２０４は、テキスト形式だけでなく、バイナリ形式、その他の形式で保存しても良い。また、ファイルシステム上のファイル形式で保存しても良いし、データベースに保存しても良い。また、内容については可逆の暗号化をしても良い。
【００２６】
図５の例では、１件のログ情報毎に、タイムスタンプが付与され、改行されたテキスト形式のログデータである。なお、本実施例では、タイムスタンプを「ＹＹＹＹ−ＭＭ−ＤＤ  ＨＨ：ＭＭ：ＳＳ．ＳＳＳ」という文字列で簡略化して表記している。特に、置換されるべき第１情報が出力されている行を抜粋した例である。図４の第１定義データ２０５に基づき、図５の変換対象ログデータ２０４から第１情報を取得して、第２定義データ２０６を編集し、変換結果ログデータ２０７を出力する例を説明する。
【００２７】
取得部２０１は、図５の変換対象ログデータ２０４を取得して、図４の第１定義データ２０５に定義されたパターン情報４０１の文字列に合致する箇所が含まれるかどうかを判定する。判定方法は、ログ情報とパターン情報４０１とをログ情報の先頭から１文字ずつ比較していく方法でも良いし、ラビンカープ法、ボイヤームーア法、その他の文字列検索アルゴリズムを用いた方法でも良い。
【００２８】
図５の例では、まずログデータの４行目に、図４の第１定義データ２０５の１件目に登録されたパターン情報４０１−Ａが含まれていることが判定される。パターン情報の合致が判定された場合、取得部２０１は、パターン情報４０１に合致した文字列５０１の最終文字の次の文字から位置情報４０２−Ａの文字数だけ行末方向に移動した位置を第１情報の取得位置とする。そして、その位置から範囲情報４０３−Ａに合致する文字列５０４を、第１情報として取得する。同様に、第１定義データ２０５の２件目に登録されたパターン情報４０１−Ｂ、位置情報４０２−Ｂ、範囲情報４０３−Ｂを手掛かりとして、図５の８行目と２１行目から、第１情報として文字列５０５および文字列５０６が取得される。なお、図５の１２、１３、及び１７行目に合致するログ書式は、図４の第１定義データ２０５には定義されておらず、それぞれ出現回数が１回のログ情報である。また、図４の第１定義データ２０５の３件目に関しては、図５の例では取得される第１情報はない。なお、本実施例では、文字列５０４〜５０６は、内容の性質上、簡略化した表記としている。
【００２９】
続いて編集部２０２は、第１情報として取得した文字列５０４〜５０６を第２定義データ２０６に追加する編集をする。図６は、第１情報をテキスト形式で保存した第２定義データ２０６の一例である。この例では、パターン情報４０１の文字列を大かっこ（［］）内に追加し、それに続く行で、変換対象ログデータ２０４から取得した第１情報を１件につき１行ずつ追加している。
【００３０】
編集部２０２は、第２定義データ２０６に既に存在する第１情報を重複して追加しない。そのために、追加時に第２定義データ２０６の第１情報の確認をして、存在していない第１情報のみを追加する編集をしても良いし、変換対象ログデータ２０４に含まれる第１情報をすべて追加した後、重複している第１情報を削除する編集をしても良い。また、追加する第１情報を含む第１情報が存在している場合、存在する第１情報を分割する編集をしても良いし、存在している第１情報を含む第１情報を追加する場合、追加する第１情報を分割して追加する編集をしても良い。さらに、第２定義データ２０６のサイズが増大した場合、不要な第１情報を判断して、削除する編集をしても良い。不要な第１情報を判断するためには、例えば、一定期間に変換対象ログデータ２０４に出現していない第１情報を不要であると判断する、または一定期間より以前に第２定義データ２０６に追加した第１情報を不要であると判断するなどの方法が考えられる。
【００３１】
第２定義データ２０６は、テキスト形式だけでなく、バイナリ形式、その他の形式で保存しても良い。また、ファイルシステム上のファイル形式で保存しても良いし、データベースに保存しても良い。また、内容については可逆の暗号化をしても良い。また、第１定義データ２０５と第２定義データ２０６は、ファイル形式で保存する場合は同一のファイル、データベースに保存する場合は同一のテーブルとしても良い。
【００３２】
置換部２０３は、第２定義データ２０６と変換対象ログデータ２０４を取得する。第２定義データ２０６に存在する第１情報を変換対象ログデータ２０４中で検索して、第２定義データ２０６に存在する第１情報に合致した文字列を第２情報に置換する。変換対象ログデータ２０４の第１情報の合致判定方法は、ログ情報と第１情報とを文字列としてログ情報の先頭から１文字ずつ比較していく方法でも良いし、ラビンカープ法、ボイヤームーア法、その他の文字列検索アルゴリズムを用いた方法でも良い。
【００３３】
変換対象ログデータ２０４で第１情報に合致した箇所は、すべて第２情報に置換する。第２情報は、置換部２０３であらかじめ定義した所定の固定文字列としても良い。また、第２情報を、第１定義データ２０５、第２定義データ２０６、または専用の定義データ（不図示）の中で任意の固定文字列として定義して、置換部２０３が取得するようにしても良い。図６は、第２定義データ２０６に第２情報を定義している例であるが、前述の通り、第２情報は第２定義データ２０６の必須のものではない。図６の例では、パターン情報（大かっこ内）に続いて、それぞれに対応した第２情報６０１〜６０３を、カンマのあとに追加している。置換部２０３は第２定義データ２０６の取得時に第２情報６０１〜６０３も同時に取得することで、第１情報に対する第２情報を決定できる。
【００３４】
置換部２０３は、変換対象ログデータ２０４に含まれる第１情報を第２情報に置換した変換結果ログデータ２０７を出力する。図７は、変換結果ログデータ２０７を変換対象ログデータ２０４と同じ形式で出力した例である。変換結果ログデータ２０７は、テキスト形式だけでなく、バイナリ形式、その他の形式で保存しても良い。また、元の変換対象ログデータ２０４と同じ形式であって良いし、異なる形式であっても良い。また、ファイルシステム上のファイル形式で保存しても良いし、データベースに保存しても良い。また、内容については可逆の暗号化をしても良い。
【００３５】
文字列７０１は図６の第２情報６０１により置換され、文字列７０２〜７０６は図６の第２情報６０２により置換されている。このように、図５の１２、１３、及び１７行目のような、第１定義データ２０５にログ書式の定義が存在しないログデータ中の第１情報も、第１定義データ２０５にログ書式をあらかじめ定義せずに、第２定義データ２０６に追加した第１情報から置換できる。また、置換部２０３は、置換した第１情報のログ書式が第１定義データ２０５に定義されていない場合には、当該ログ書式を第１定義データ２０５に追加するようにしても良い。これにより、次に生産装置の制御プログラムの更新があった場合に、第１定義データ２０５にログ書式を追加することなく、他のログ情報から取得した第１情報から特定できる第１情報が出力されているときには置換できる。
【００３６】
（比較例）
次に、比較のために図８、９に基づいて、実施例１の方法を適用しない場合について説明する。図８は、実施例１の方法を適用しない場合における定義データの一例である。図４の第１定義データ２０５の例と同様に、パターン情報８０１（８０１−Ａ〜８０１−Ｃ）、位置情報８０２（８０２−Ａ〜８０２−Ｃ）、範囲情報８０３（８０３−Ａ〜８０３−Ｃ）とを含む。さらに、第２情報８０４（８０４−Ａ〜８０４−Ｃ）も含む。図８の例では、これらの情報をパターン情報８０１、位置情報８０２、範囲情報８０３、第２情報８０４の順番に、カンマ区切りで列挙しており、１行に１件、合計３件の定義を登録している。図８の定義データに登録されたパターン情報８０１に合致した文字列の最終文字の次の文字から位置情報８０２の文字数だけ行末方向に移動した位置から、範囲情報８０３に合致する文字列を、定義データに登録された第２情報８０４に置換する。実施例１の方法を適用しない場合では、置換対象の第１情報が出力されるログ書式のすべてのパターン情報に対して定義する必要がある。
【００３７】
図９は、生産装置の制御プログラムが更新され、ログ書式が新たに追加された場合に、図８の定義データの編集を行う前に実施例１の方法を適用しない場合で、図５の変換対象ログデータ２０４の変換を行った変換結果ログデータ２０７の一例である。１２、１３、及び１７行目が新たに追加されたログ書式であり、それぞれ出現回数が１回のログ情報である。この行中に出力されている文字列９０３〜９０５は、同じ情報が出力されている８行目と同様、第１情報として、第２情報に置換されるべきである。しかし、定義データにログ書式を追加する編集がされていないため、文字列９０３〜９０５は置換されない。このように、実施例１の方法を適用しない場合では、生産装置の制御プログラムの更新に伴い、ログ書式が新たに追加されたり、変更されたりした場合は、同期して定義データを編集する作業が必要となる。ログ書式の種類の増加とともに定義データの定義数は増加するため、置換されるべき情報が把握できていないログ情報も増加してしまう。
【００３８】
一方、実施例１に係るログデータ処理方法によれば、第１定義データ２０５に定義されていないログ書式であっても、第２定義データ２０６に追加した第１情報と同じ第１情報であれば、第１定義データ２０５にログ書式を追加することなく置換できる。
【００３９】
したがって、実施例１に係るログデータ処理方法によれば、置換のための負担を無くすか低減することができる。また、置換されるべき情報が把握できていないログ情報の出現回数が複数回に限らず１回の場合でも、他のログ情報から取得した第１情報から特定できる第１情報が出力されているときには置換できる。また、第１情報が機密情報であり、第２情報が機密情報でない場合には、機密情報が外部に漏えいすることを防止できる。
【実施例２】
【００４０】
次に、図１０〜１２に基づいて、第２定義データ２０６の中で、互いに異なる複数の第１情報毎に対応する第３情報として、番号を付与して第３情報を生成する実施例２について説明する。ここで言及しない事項は、実施例１に従い得る。第１情報を、第１情報とは別の情報である第３情報に置換するにあたり、変換対象ログデータ２０４中で同一の第１情報を含むログ情報群が、同じグループであると区別できる場合がある。その場合、変換結果ログデータ２０７においても、同一の第１情報を同一の第３情報に置換することにより、対応するグループのログ情報群として区別できることが望ましい場合がある。例えば、第１情報が生産ロットを区別するロットＩＤの場合、変換結果ログデータ２０７において、同一のロットＩＤを置換したログ情報群が、同じグループとして区別できることが望ましい。
【００４１】
図１０は、実施例２に係るＣＰＵ１０１の処理を示したフローチャートである。図２との違いは、第３情報を生成して、第２定義データ２０６を編集する工程（１００３）と、変換対象ログデータ２０４に含まれる第１情報を第３情報に置換する工程（１００４）である。編集部２０２は、第１情報に対応する第３情報を、第２定義データ２０６に第１情報を追加する前に生成して、第１情報と共に第２定義データ２０６に追加する編集をする（１００３）。なお、これから追加しようとする第１情報が第２定義データ２０６に既に存在していれば、その第１情報に対応する第３情報を生成、追加しない。置換部２０３は、変換対象ログデータ２０４、第２定義データ２０６を取得して、第２定義データ２０６に基づいて、変換対象ログデータ２０４に含まれる第１情報を第３情報に置換する（１００４）。よって、置換後の複数の第３情報でも同一の情報を１つのグループとして区別できるようになる。第３情報の生成は、第１情報と第３情報が１対１に対応するように、編集部２０２であらかじめ所定の生成ルールを設けておく。例えば、編集部２０２が、第１情報と第３情報が１対１に対応するように番号の文字列を生成しても良いし、任意の接頭／接尾文字列と番号を合成して、第１情報と第３情報が１対１に対応するように文字列を生成しても良い。また、第１定義データ２０５等の定義データで、任意の書式を定義して、書式に従って第３情報を生成しても良い。
【００４２】
図１１は、第２定義データ２０６の一例である。この例では、第１情報とともに第１情報に対応する第３情報を生成して、第２定義データ２０６に追加している。具体的には、第１情報と第１情報に対応する第３情報１１０１〜１１０３を、カンマ区切りで列挙している。置換部２０３は第２定義データ２０６の取得時に、この第３情報１１０１〜１１０３も同時に取得することで、第１情報毎に第３情報を決定できる。
【００４３】
図１２は、図１１の第２定義データ２０６に基づき、図５の変換対象ログデータ２０４に対して置換処理を行った変換結果ログデータ２０７の一例である。このように、第１情報に１対１で対応する第３情報を使用することで、変換前のログデータ同様に、第３情報１２０１、１２０２〜１２０５、及び１２０６を、それぞれ別々のグループのログ情報群として区別できるように置換できる。
【００４４】
したがって、実施例２に係るログデータ処理方法によれば、置換のための負担を無くすか低減することができる。また、置換されるべき情報が把握できていないログ情報の出現回数が複数回に限らず１回の場合でも、他のログ情報から取得した第１情報から特定できる第１情報が出力されているときには置換できる。また、第１情報が機密情報の場合であり、第３情報が機密情報でない場合には、機密情報が外部に漏えいすることを防止できる。また、同一の第１情報によりグループとして区別できていたログ情報群がある場合、変換結果ログデータ２０７においても、同一の第３情報により対応するグループのログ情報群として区別できる。
【実施例３】
【００４５】
次に、図１３〜１７に基づいて、第２定義データ２０６の中で複数ある第１情報毎に対応する第３情報として、第１情報を複数の要素に分解し、要素毎に変換した情報を合成して第３情報を生成する実施例３について説明する。ここで言及しない事項は、実施例１、実施例２に従い得る。第１情報を第１情報とは別の情報である第３情報に置換することは、ログデータを人間にとって読み易い形態、つまり可読性を向上させる形態に変換する目的にも適用できる。
【００４６】
図１３は、変換対象ログデータ２０４の一例であり、１件のログ情報毎に、タイムスタンプが付与され、改行されたテキスト形式のログデータで、特に、置換されるべき第１情報が出力されている行を抜粋した例である。この例では、パターン情報と合致する文字列１３０１〜１３０３と、置換されるべき第１情報１３０４〜１３０６が出力されている。なお、図１３の１０、及び１９行目に合致するログ書式は、第１定義データ２０５には定義されておらず、出現回数が１回のログ情報である。
【００４７】
置換されるべき第１情報１３０４〜１３０６は、生産装置の処理ユニットを区別するユニットＩＤで、その情報は人間にとっては一目で区別しづらい文字と数字の羅列となっている。第１情報を第３情報に置換するにあたり、第１情報について「情報が同一のものは同じものである」ことを意味する場合は、置換後の情報でも同じものであることを区別できるようにし、人間にとって読み易い情報に置換することが望ましい。例えば、同じ処理ユニットのユニットＩＤは同じ第３情報に置換し、ユニットＩＤを表す「Ｕ００１０１０００１」という文字列を、「Ｓｔａｔｉｏｎ０１−Ｒ−Ｃ０１」という文字列に置換することが望ましい。
【００４８】
図１４は、実施例３に係るＣＰＵ１０１の処理を示したフローチャートである。図２、図１０との違いは、第１定義情報を要素毎に変換して第３情報を生成して、第２定義データ２０６を編集する工程（１４０３）である。編集部２０２は、第１情報に対応する第３情報を、第２定義データ２０６に第１情報を追加する前に生成して、第１情報と共に第２定義データ２０６に追加する編集をする（１４０３）。
【００４９】
図１５は、第１情報からそれに対応する第３情報を生成するルールの一例である。この例では、第１情報の文字列を、先頭の１文字「Ｕ」に続く３文字（１５０１）、それに続く２文字（１５０２）、それに続く４文字（１５０３）に分解して、それぞれ分解した情報に応じた置換後の情報の対応テーブルをあらかじめルールとして決めている。対応テーブルに定義する置換後の情報は、人間にとって一目で区別しやすい文字列にしておき、要素毎の対応テーブルで唯一となるように定義しておく。したがって、前述のルールに従って生成された第３情報は、人間にとって読み易いものになり、第１情報と第３情報が１対１に対応するようになる。なお、前述の対応テーブルのデータは、編集部２０２であらかじめ定義した所定のデータとしても良い。また、当該データを、第１定義データ２０５、第２定義データ２０６、または専用の定義データ（不図示）の中で任意のデータとして定義して、編集部２０２が取得するようにしても良い。
【００５０】
図１６は、第２定義データ２０６の一例である。編集部２０２は、図１５のルールに従い第１情報から第３情報を生成する。この例では、第１情報を追加する際に、それに対応する第３情報１６０１〜１６０３を、第１情報、カンマの後に追加している。第３情報は、図１５の対応テーブルで変換した情報を「−」で繋いで１つの文字列として生成している。編集部２０２は第１情報を追加する際にこのようにして第３情報を生成し、第２定義データ２０６を編集する。置換部２０３は、第２定義データ２０６の取得時にこの第３情報も同時に取得することで、第１情報毎に第３情報を決定できる。
【００５１】
図１７は、図１６の第２定義データ２０６に基づき、図１３の変換対象ログデータ２０４に対して置換処理を行った変換結果ログデータ２０７の一例である。このように、第１情報に対応する第３情報を使用することで、第３情報１７０１〜１７０７のように人間にとって一目で区別しやすい文字列に、かつ実施例２と同様に第１情報が同一のグループのログ情報群を区別できるように変換できる。
【００５２】
したがって、実施例３に係るログデータ処理方法によれば、置換のための負担を無くすか低減することができる。また、置換されるべき情報が把握できていないログ情報の出現回数が複数回に限らず１回の場合でも、他のログ情報から取得した第１情報から特定できる第１情報が出力されているときには置換できる。また、第１情報が機密情報の場合であり、第３情報が機密情報でない場合には、機密情報が外部に漏えいすることを防止できる。また、同一の第１情報によりグループとして区別できていたログ情報群がある場合、変換結果ログデータ２０７においても、同一の第３情報により対応するグループのログ情報群として区別できる。また、ログデータの可読性を向上した形態に変換できる。
【００５３】
実施例１〜実施例３に係るログ処理方法は、単独で実施するだけでなく、実施例１と実施例２、実施例１と実施例３、実施例２と実施例３、又は実施例１〜実施例３の全ての組合せで実施することができる。
【図１】
2016162366.tif 000003
【図２】
2016162366.tif 000004
【図３】
2016162366.tif 000005
【図４】
2016162366.tif 000006
【図５】
2016162366.tif 000007
【図６】
2016162366.tif 000008
【図７】
2016162366.tif 000009
【図８】
2016162366.tif 000010
【図９】
2016162366.tif 000011
【図１０】
2016162366.tif 000012
【図１１】
2016162366.tif 000013
【図１２】
2016162366.tif 000014
【図１３】
2016162366.tif 000015
【図１４】
2016162366.tif 000016
【図１５】
2016162366.tif 000017
【図１６】
2016162366.tif 000018
【図１７】
2016162366.tif 000019