(57)【要約】      （修正有）【課題】異常を引き起こすコマンドを誤って実行することを防止する。【解決手段】情報処理方法は、コマンドが実行されたシステムにおいて異常が発生したことを検知した場合に、システムにおいて実行され且つシステムの状態に影響を及ぼすコマンドの情報のうち、異常の発生前所定時間内に実行されたコマンドを抽出し、第１のコマンドが入力された場合、第１のコマンドと一致するコマンドが抽出されているか判定し、第１のコマンドと一致するコマンドが抽出されている場合に、異常が発生する可能性があることを示す表示データを出力する処理を含む。【選択図】図１
2014010761.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、
コマンドが実行されたシステムにおいて異常が発生したことを検知した場合に、前記システムにおいて実行され且つ前記システムの状態に影響を及ぼすコマンドのうち、前記異常の発生前所定時間内に実行されたコマンドを抽出し、
第１のコマンドが入力された場合、前記第１のコマンドと一致するコマンドが抽出されているか判定し、
前記第１のコマンドと一致するコマンドが抽出されている場合に、異常が発生する可能性があることを示す表示データを出力する
処理を実行させることを特徴とするプログラム。
【請求項２】
前記表示データを出力する処理において、
前記第１のコマンドと一致するコマンドが実行された作業のうち、異常が発生した作業の識別情報を抽出し、
前記第１のコマンド及び当該第１のコマンドの実行前所定時間内に実行されたコマンドを含む第１のコマンド群が、抽出された前記異常が発生した作業の識別情報によって特定される第２のコマンド群と一致するか判定し、
前記第１のコマンド群と前記第２のコマンド群とが一致する場合に、異常が発生する可能性があることを示す表示データを出力する
ことを特徴とする請求項１記載のプログラム。
【請求項３】
前記表示データを出力する処理において、
前記第１のコマンドと一致するコマンドが実行された作業のうち、異常が発生していない作業の識別情報を抽出し、
前記第１のコマンド及び当該第１のコマンドの実行前所定時間内に実行されたコマンドを含む第１のコマンド群が、抽出された前記異常が発生していない作業の識別情報によって特定される第３のコマンド群と一致するか判定し、
前記第１のコマンド群と前記第３のコマンド群とが一致しない場合に、異常が発生する可能性があることを示す表示データを出力する
ことを特徴とする請求項１記載のプログラム。
【請求項４】
前記第１のコマンドと一致するコマンドが抽出されていない場合に、前記第１のコマンドが、前記システムに影響を及ぼさないコマンドであるか判定し、
前記システムに影響を及ぼさないコマンドである場合に、前記第１のコマンドが実行される前における前記システムの状態を示す第１の情報を取得し、
前記第１のコマンドが前記システムにおいて実行された場合、当該第１のコマンドの実行後における前記システムの状態を示す第２の情報を取得し、
前記システムの状態が変化した場合に、前記第１のコマンドが、前記システムに影響を及ぼすコマンドであると判定する
処理をさらに実行させるための請求項１記載のプログラム。
【請求項５】
コマンドが実行されたシステムにおいて異常が発生したことを検知した場合に、前記システムにおいて実行され且つ前記システムの状態に影響を及ぼすコマンドの情報のうち、前記異常の発生前所定時間内に実行されたコマンドを抽出し、
第１のコマンドが入力された場合、前記第１のコマンドと一致するコマンドが抽出されているか判定し、
前記第１のコマンドと一致するコマンドが抽出されている場合に、異常が発生する可能性があることを示す表示データを出力する
処理をコンピュータが実行する情報処理方法。
【請求項６】
コマンドが実行されたシステムにおいて異常が発生したことを検知した場合に、前記システムにおいて実行され且つ前記システムの状態に影響を及ぼすコマンドの情報のうち、前記異常の発生前所定時間内に実行されたコマンドを抽出する抽出部と、
第１のコマンドが入力された場合、前記第１のコマンドと一致するコマンドが抽出されているか判定する判定部と、
前記第１のコマンドと一致するコマンドが抽出されている場合に、異常が発生する可能性があることを示す表示データを出力する出力部と、
を有する情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、システムを管理する技術に関する。
【背景技術】
【０００２】
大規模で複雑なシステムでは、システムの管理者の負担が増している。システムの管理者は、システムの管理を行うために種々のコマンドを入力するが、そのシステムのことを熟知していないと、入力するコマンドがそのシステムに悪影響を及ぼすことに気付かないことがある。そして、入力されたコマンドが適切でないと、システムに異常が発生し、システムの復旧作業等を行わなければならなくなる。
【０００３】
システムにおいて発生したイベントが、予め人手で登録した定義に合致するか否かを判断することにより、障害を検知する技術が存在する。しかし、この技術では、予め登録されていないイベントが発生したような場合には、障害を検知することができない。そのため、作業者は障害発生の可能性が有ることを認識できず、障害の原因となる作業を誤って行ってしまうという問題が有る。また、人手で登録を行うため、システムの管理者の負担が大きいという問題がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】国際公開第２００４／０６１６８１号
【発明の概要】
【発明が解決しようとする課題】
【０００５】
１つの側面では、本発明の目的は、異常を引き起こすコマンドを誤って実行することを防止するための技術を提供することである。
【課題を解決するための手段】
【０００６】
一態様の情報処理方法は、コマンドが実行されたシステムにおいて異常が発生したことを検知した場合に、システムにおいて実行され且つシステムの状態に影響を及ぼすコマンドの情報のうち、異常の発生前所定時間内に実行されたコマンドを抽出し、第１のコマンドが入力された場合、第１のコマンドと一致するコマンドが抽出されているか判定し、第１のコマンドと一致するコマンドが抽出されている場合に、異常が発生する可能性があることを示す表示データを出力する処理を含む。
【発明の効果】
【０００７】
一態様によれば、異常を引き起こすコマンドを誤って実行することを防止できるようになる。
【図面の簡単な説明】
【０００８】
【図１】図１は、本実施の形態のシステム概要を示す図である。
【図２】図２は、実行履歴格納部に格納されているデータの一例を示す図である。
【図３】図３は、パターン格納部に格納されているデータの一例を示す図である。
【図４】図４は、参照系コマンド格納部に格納されているデータの一例を示す図である。
【図５】図５は、メインの処理フローを示す図である。
【図６】図６は、判定処理の処理フローを示す図である。
【図７】図７は、メインの処理フローを示す図である。
【図８】図８は、実行処理の処理フローを示す図である。
【図９】図９は、追加処理の処理フローを示す図である。
【図１０】図１０は、コンピュータの機能ブロック図である。
【発明を実施するための形態】
【０００９】
図１に、本実施の形態に係るシステムの概要を示す。例えばＬＡＮ（Local Area Network）であるネットワーク７には、本実施の形態の主要な処理を実施する運用管理サーバ１と、業務サーバ３と、クライアント端末５とが接続されている。
【００１０】
ユーザは、クライアント端末５の入力装置（例えばキーボード）を介してコマンドを入力する。入力されたコマンドは業務サーバ３において実行するためのコマンドであるが、本実施の形態においては、クライアント端末３は、まず運用管理サーバ１にコマンドを送信する。運用管理サーバ１はコマンドを受信し、以下で説明する処理を実施し、コマンドを業務サーバ３に実行させる場合には、コマンドを業務サーバ３に送信する。
【００１１】
運用管理サーバ１は、実行履歴格納部１０１と、パターン格納部１０３と、参照系コマンド格納部１０５と、受信部１０７と、解析部１０９と、登録部１１１とを含む。
【００１２】
受信部１０７は、異常発生通知を業務サーバ３から受信すると、異常発生通知を解析部１０９に出力する。解析部１０９は、異常発生通知を受信部１０７から受け取ると、パターン格納部１０３にコマンドを格納する処理等を実施する。また、解析部１０９は、クライアント端末５からコマンドを受信した場合に、実行履歴格納部１０１に格納されているデータ、パターン格納部１０３に格納されているデータ及び参照系コマンド格納部１０５に格納されているデータを用いて処理を行い、処理結果を実行履歴格納部１０１及びパターン格納部１０３に格納する。登録部１１１は、後で説明する参照系コマンドをクライアント端末５から受信すると、参照系コマンド格納部１０５に登録する。
【００１３】
業務サーバ３は、検出部３１と、実行部３３とを含む。検出部３１は、コマンドの実行により異常が発生したことを検出すると、異常発生通知を運用管理サーバ１に送信する。また、検出部３１は、コマンドの実行前及び実行後におけるシステムの状態に関する情報（例えば、プロセスの生死に関する情報等）を運用管理サーバ１に送信する。実行部３３は、運用管理サーバ１からコマンドを受信すると、当該コマンドを実行する。
【００１４】
図２に、実行履歴格納部１０１に格納されているデータの一例を示す。図２の例では、作業ＩＤと、作業結果と、コマンドＩＤと、コマンド本体と、パラメタと、コマンドの実行日時と、実行先ホストの情報とが格納されている。実行履歴格納部１０１には、参照系コマンドではない（すなわち、更新系のコマンドである）と判断されたコマンドの実行履歴のみが登録されており、参照系コマンドの実行履歴は格納されていない。
【００１５】
なお、参照系コマンドとは、システムの状態に影響を及ぼさないコマンドであり、例えばＵＮＩＸ（登録商標）における「ｌｓ」及び「ｃｄ」等である。また、更新系コマンドとは、システムの状態に影響を及ぼすコマンドであり、例えばＵＮＩＸ（登録商標）における「ｓｔｏｐ」、「ｒｍ」及び「ｃｐ」等である。
【００１６】
このように、更新系コマンドの実行履歴のみを実行履歴格納部１０１に登録するのは、以下のような理由による。すなわち、同じ作業をする場合であっても、コマンドの入力パターンはいくつも存在するので、異常発生する可能性があるか否かを判断する際には、作業の核となる更新系コマンドだけを利用し、ノイズとなる参照系コマンドを排除するためである。例えば、プロセスＡを停止するという作業を行う場合、「ｃｄ／ｏｐｔ／Ａ／」、「ｌｓ  −ｌ」及び「ｓｔｏｐＡ  −ａ  ｘｙｚ」というようにコマンドを入力する場合もあるし、「／ｏｐｔ／Ａ／ｓｔｏｐＡ  −ａ  ｘｙｚ」とコマンドを入力する場合もあるし、「ｃｄ／ｏｐｔ／Ａ」及び「ｓｔｏｐＡ  −ａｂｃ  ｘｙｚ」というようにコマンドを入力する場合もある。このような場合には、作業の核となる更新系コマンドである「ｓｔｏｐＡ」に係るコマンドが、実行履歴格納部１０１に登録されるようにする。
【００１７】
また、上で述べた例のように、パラメタが多少異なっていても、実質的に同じ作業を行うような場合が多々ある。従って、パラメタまで完全に一致した場合に異常発生の可能性があることを通知するようにすると、パラメタが多少異なるだけであり異常発生の可能性があるコマンドを取りこぼしてしまうおそれがある。そこで、パラメタについては、以下で説明するように類似度を考慮して一致しているか否かの判断を行うようにする。
【００１８】
図３に、パターン格納部１０３に格納されているデータの一例を示す。図３の例では、コマンド本体と、パラメタと、そのコマンドの実行を含む作業のうち成功した作業の作業ＩＤと、そのコマンドの実行を含む作業のうち失敗した作業の作業ＩＤとが格納されている。パターン格納部１０３には、異常発生前所定時間（例えば１０分）内に実行されたコマンドが格納される。成功した作業の作業ＩＤの列及び失敗した作業の作業ＩＤの列には、複数の作業ＩＤが格納される場合もある。
【００１９】
図４に、参照系コマンド格納部１０５に格納されているデータの一例を示す。図４の例では、参照系コマンドのコマンド本体及びパラメタが格納されている。
【００２０】
次に、図５乃至図９を用いて、図１に示したシステムの動作について説明する。
【００２１】
まず、クライアント端末５は、ユーザからコマンドの入力を受け付けると、運用管理サーバ１に送信する。運用管理サーバ１における解析部１０９は、ユーザにより入力されたコマンド（以下、入力コマンドと呼ぶ）をクライアント端末５から受信すると（図５：ステップＳ１）、メインメモリ等の記憶装置に格納する。
【００２２】
そして、解析部１０９は、判定処理を実施する（ステップＳ３）。判定処理については、図６を用いて説明する。
【００２３】
まず、解析部１０９は、入力コマンドからコマンド本体及びパラメタを抽出する（図６：ステップＳ３１）。
【００２４】
解析部１０９は、ステップＳ３１において抽出されたコマンド本体がパターン格納部１０３に格納されているか判断する（ステップＳ３３）。コマンド本体がパターン格納部１０３に格納されていないと判断された場合（ステップＳ３３：Ｎｏルート）、解析部１０９は、入力コマンドと一致するコマンドがパターン格納部１０３に格納されていないと判定する（ステップＳ４１）。
【００２５】
一方、コマンド本体がパターン格納部１０３に格納されていると判断された場合（ステップＳ３３：Ｙｅｓルート）、解析部１０９は、パターン格納部１０３において当該コマンド本体に対応付けて格納されているパラメタと、ステップＳ３１において抽出したパラメタとの一致率（すなわち類似度）を算出する（ステップＳ３５）。類似度は、例えば、２つの字句の間の類似度を算出するための一般的な手法を用いる。このような手法はよく知られているので、ここでは詳細な説明は省略する。
【００２６】
パラメタの一致率が所定値（例えば５０％）である場合（ステップＳ３７：Ｙｅｓルート）、解析部１０９は、入力コマンドと一致するコマンドがパターン格納部１０３に有ると判定する（ステップＳ３９）。一方、パラメタの一致率が所定値以下である場合（ステップＳ３７：Ｎｏルート）、ステップＳ４１の処理に移行する。そして元の処理に戻る。
【００２７】
以上のような処理を実施すれば、パラメタが多少異なっていても実質的に同一であるとみなせるようなコマンドを取りこぼすことが無くなる。
【００２８】
図５の説明に戻り、解析部１０９は、入力コマンドと一致するコマンドがパターン格納部１０３に有るか判断する（ステップＳ５）。ステップＳ４１の処理を経た場合、すなわち入力コマンドと一致するコマンドがパターン格納部１０３に無いと判断された場合（ステップＳ５：Ｎｏルート）、処理は端子Ａを介して図７のステップＳ２３に移行する。
【００２９】
一方、ステップＳ３９の処理を経た場合、すなわち入力コマンドと一致するコマンドがパターン格納部１０３に有ると判断された場合（ステップＳ５：Ｙｅｓルート）、解析部１０９は、入力コマンドと一致するコマンドに対応付けられている、成功した作業の作業ＩＤ及び失敗した作業の作業ＩＤをパターン格納部１０３から抽出する（ステップＳ７）。
【００３０】
解析部１０９は、ステップＳ７において抽出した、失敗した作業の作業ＩＤに対応付けられているコマンド群を実行履歴格納部１０１から抽出する（ステップＳ９）。処理は端子Ｂを介して図７のＳ１１に移行する。
【００３１】
図７の説明に移行し、解析部１０９は、ステップＳ９において抽出したコマンド群が、今回のコマンド群と一致するか判断する（ステップＳ１１）。今回のコマンド群は、入力コマンド及び当該入力コマンドの実行前所定時間内に実行したコマンドを含む。後者は、実行履歴格納部１０１から抽出する。
【００３２】
今回のコマンド群と一致する場合（ステップＳ１１：Ｙｅｓルート）、解析部１０９は、入力コマンドを実行すると異常が発生する可能性があることを示す第１の異常メッセージをクライアント端末５に送信する（ステップＳ１３）。そしてステップＳ２１の処理に移行する。
【００３３】
一方、今回のコマンド群と一致しない場合（ステップＳ１１：Ｎｏルート）、解析部１０９は、ステップＳ７において抽出した、成功した作業の作業ＩＤに対応付けられているコマンド群を実行履歴格納部１０１から抽出する（ステップＳ１５）。
【００３４】
解析部１０９は、ステップＳ１５において抽出したコマンド群が、今回のコマンド群と一致するか判断する（ステップＳ１７）。
【００３５】
今回のコマンド群と一致しない場合（ステップＳ１７：Ｎｏルート）、解析部１０９は、入力コマンドを実行すると異常が発生する可能性があることを示す第２の異常メッセージをクライアント端末５に送信する（ステップＳ１９）。過去に成功した作業のコマンド群と一致していないので、今回の作業が失敗する可能性があるからである。
【００３６】
ステップＳ１３又はＳ１９の処理の後、解析部１０９は、コマンド実行指示をクライアント端末５から受信したか判断する（ステップＳ２１）。コマンド実行指示は、第１又は第２の異常メッセージを受信したクライアント端末５のユーザが、クライアント端末５に入力コマンドの実行を指示した場合に、クライアント端末５が運用管理サーバ１に送信する。
【００３７】
コマンド実行指示を受信していない場合（ステップＳ２１：Ｎｏルート）、入力コマンドを実行しないので、元の処理に戻る。
【００３８】
一方、コマンド実行指示を受信した場合（ステップＳ２１：Ｙｅｓルート）又は今回のコマンド群と一致する場合（ステップＳ１７：Ｙｅｓルート）、解析部１０９は、実行処理を実施する（ステップＳ２３）。実行処理については、図８を用いて説明する。
【００３９】
まず、解析部１０９は、入力コマンドと一致するコマンドが参照系コマンド格納部１０５に格納されているか判断する。すなわち、入力コマンドは参照系コマンドであるか判断する（図８：ステップＳ５１）。
【００４０】
入力コマンドが参照系コマンドである場合（ステップＳ５１：Ｙｅｓルート）、解析部１０９は、入力コマンドを含むコマンド実行指示を業務サーバ３に送信する。これに応じ、業務サーバ３における実行部３３は、入力コマンドを実行する（ステップＳ５３）。
【００４１】
一方、入力コマンドが参照系コマンドではない場合（ステップＳ５１：Ｎｏルート）、システムの状態に影響を及ぼす可能性があるので、解析部１０９は、ベースラインを取得済みであるか判断する（ステップＳ５５）。ベースラインとは、入力コマンドの実行前におけるシステムの状態を示す情報のことである。
【００４２】
ベースラインを取得済みある場合（ステップＳ５５：Ｙｅｓルート）、ベースラインを取得しなくてもよいので、ステップＳ５９の処理に移行する。一方、ベースラインを取得済みではない場合（ステップＳ５５：Ｎｏルート）、解析部１０９は、業務サーバ３にベースラインの取得要求を送信する。これに応じ、業務サーバ３における検出部３１は、ベースラインを運用管理サーバ１に送信する。これにより、解析部１０９は、ベースラインを取得する（ステップＳ５７）。
【００４３】
そして、解析部１０９は、入力コマンドを含むコマンド実行指示を業務サーバ３に送信する。これに応じ、業務サーバ３における実行部３３は、入力コマンドを実行する（ステップＳ５９）。
【００４４】
解析部１０９は、入力コマンドの実行後のシステムの状態を示す情報を業務サーバ３から取得する（ステップＳ６１）。
【００４５】
解析部１０９は、ベースライン及びステップＳ６１において取得した情報を用いて、入力コマンドの実行前と実行後との差分を求めることにより、システムの状態が変化したか判断する（ステップＳ６３）。
【００４６】
システムの状態が変化していない場合（ステップＳ６３：Ｎｏルート）、入力コマンドは参照系コマンドであるので、入力コマンドを参照系コマンド格納部１０５に格納する（ステップＳ６５）。
【００４７】
一方、システムの状態が変化した場合（ステップＳ６３：Ｙｅｓルート）、入力コマンドは更新系コマンドであるので、解析部１０９は、入力コマンドを含む実行履歴を実行履歴格納部１０１に格納する（ステップＳ６７）。ステップＳ６７においては、コマンド本体、パラメタ、日時及び実行先ホストを格納する。また、ステップＳ６７の処理時点では、作業結果は「成功」としておく。
【００４８】
解析部１０９は、入力コマンドが、入力コマンドの直前に実行したコマンドと同じ作業に属するか判断する（ステップＳ６９）。ステップＳ６９においては、例えば、直前に実行したコマンドの実行時から所定時間（例えば１０分）が経過したか否かによって判断する。
【００４９】
直前に実行したコマンドと同じ作業に属する場合（ステップＳ６９：Ｙｅｓルート）、解析部１０９は、直前に実行したコマンドと同じ作業ＩＤを入力コマンドに付与する（ステップＳ７１）。ステップＳ７１においては、入力コマンドについて、作業ＩＤ及びコマンドＩＤを実行履歴格納部１０１に格納する。そして元の処理に戻る。
【００５０】
一方、直前に実行したコマンドと同じ作業に属さない場合（ステップＳ６９：Ｎｏルート）、解析部１０９は、直前に実行したコマンドと異なる作業ＩＤを入力コマンドに付与する（ステップＳ７３）。ステップＳ７３においては、入力コマンドについて、作業ＩＤ及びコマンドＩＤを実行履歴格納部１０１に格納する。そして元の処理に戻る。
【００５１】
以上のような処理を実施すれば、コマンドの実行時に参照系コマンドと更新系コマンドとのいずれであるかを決定し、同じコマンドが再び実行されたときに利用できるように登録しておくことができるようになる。
【００５２】
図７の説明に戻り、解析部１０９は、入力コマンドを実行した業務サーバ３から異常発生通知を受信したか判断する（ステップＳ２５）。異常発生通知を受信していない場合（ステップＳ２５：Ｎｏルート）、パターンの追加を行わなくてもよいので、処理を終了する。
【００５３】
一方、異常発生通知を受信した場合（ステップＳ２５：Ｙｅｓルート）、解析部１０９は、追加処理を実施する（ステップＳ２７）。追加処理については、図９を用いて説明する。なお、異常発生通知には、異常が発生した日時及び実行したコマンドの情報等が含まれる。
【００５４】
まず、解析部１０９は、実行履歴格納部１０１における日時の欄を参照することにより、異常発生前（例えば異常発生前５分以内）にコマンドを実行したか判断する（図９：ステップＳ８１）。
【００５５】
異常発前にコマンドを実行していない場合（ステップＳ８１：Ｎｏルート）、異常発生とコマンドの実行との因果関係が無い可能性があるので、元の処理に戻る。
【００５６】
一方、異常発生前にコマンドを実行した場合（ステップＳ８１：Ｙｅｓルート）、解析部１０９は、異常発生前所定時間（例えば１０分）内に実行したコマンドを実行履歴格納部１０１から抽出し、パターン格納部１０３に登録する（ステップＳ８３）。ステップＳ８３においては、作業失敗の欄に、登録したコマンドの作業ＩＤを格納する。また、ステップＳ８３において、実行履歴格納部１０１において、異常発生前所定時間内に実行したコマンドについての作業結果を「失敗」に変更する。
【００５７】
解析部１０９は、異常発生前の最後に実行したコマンドと同じコマンドを含む実行履歴を実行履歴格納部１０１から抽出する（ステップＳ８５）。
【００５８】
解析部１０９は、異常発生前の最後に実行したコマンドと同じコマンドについての作業結果が「成功」であるか判断する（ステップＳ８７）。
【００５９】
「成功」ではない場合（ステップＳ８７：Ｎｏルート）、元の処理に戻る。一方、「成功」である場合（ステップＳ８７：Ｙｅｓルート）、解析部１０９は、当該コマンドの作業ＩＤをパターン格納部１０３における作業成功の欄に登録する（ステップＳ８９）。なお、ステップＳ８５において複数件の実行履歴が抽出された場合には、それぞれの実行履歴についてステップＳ８７及びＳ８９の処理を実施する。そして処理を終了する。
【００６０】
図７の説明に戻り、追加処理の後、処理を終了する。
【００６１】
以上のような処理を実施すれば、異常発生の原因になり得るコマンドの実行前には、ユーザに注意を促すことができるので、システムに異常が発生することを防止できるようになる。また、成功した作業のコマンド群と一致しない場合においても、ユーザに異常メッセージが通知されるので、異常発生の原因になるコマンドの取りこぼしが少なくなる。
【００６２】
以上本発明の一実施の形態を説明したが、本発明はこれに限定されるものではない。例えば、上で説明した運用管理サーバ１、業務サーバ３及びクライアント端末５の機能ブロック構成は必ずしも実際のプログラムモジュール構成に対応するものではない。
【００６３】
また、上で説明した各テーブルの構成は一例であって、必ずしも上記のような構成でなければならないわけではない。さらに、処理フローにおいても、処理結果が変わらなければ処理の順番を入れ替えることも可能である。さらに、並列に実行させるようにしても良い。
【００６４】
ステップＳ８５においては、異常発生前の最後に実行したコマンドのみ処理を行うようにしているが、ステップＳ８３において登録されたコマンドの全てについて処理を行うようにしてもよい。
【００６５】
なお、上で述べた運用管理サーバ１、業務サーバ３及びクライアント端末５は、コンピュータ装置であって、図１０に示すように、メモリ２５０１とＣＰＵ（Central Processing Unit）２５０３とハードディスク・ドライブ（ＨＤＤ：Hard Disk Drive）２５０５と表示装置２５０９に接続される表示制御部２５０７とリムーバブル・ディスク２５１１用のドライブ装置２５１３と入力装置２５１５とネットワークに接続するための通信制御部２５１７とがバス２５１９で接続されている。オペレーティング・システム（ＯＳ：Operating System）及び本実施例における処理を実施するためのアプリケーション・プログラムは、ＨＤＤ２５０５に格納されており、ＣＰＵ２５０３により実行される際にはＨＤＤ２５０５からメモリ２５０１に読み出される。ＣＰＵ２５０３は、アプリケーション・プログラムの処理内容に応じて表示制御部２５０７、通信制御部２５１７、ドライブ装置２５１３を制御して、所定の動作を行わせる。また、処理途中のデータについては、主としてメモリ２５０１に格納されるが、ＨＤＤ２５０５に格納されるようにしてもよい。本発明の実施例では、上で述べた処理を実施するためのアプリケーション・プログラムはコンピュータ読み取り可能なリムーバブル・ディスク２５１１に格納されて頒布され、ドライブ装置２５１３からＨＤＤ２５０５にインストールされる。インターネットなどのネットワーク及び通信制御部２５１７を経由して、ＨＤＤ２５０５にインストールされる場合もある。このようなコンピュータ装置は、上で述べたＣＰＵ２５０３、メモリ２５０１などのハードウエアとＯＳ及びアプリケーション・プログラムなどのプログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
【００６６】
以上述べた本発明の実施の形態をまとめると、以下のようになる。
【００６７】
本実施の形態に係る情報処理方法は、（Ａ）コマンドが実行されたシステムにおいて異常が発生したことを検知した場合に、システムにおいて実行されたコマンドのうちシステムの状態に影響を及ぼすコマンドの情報を格納する第１データ格納部から、異常の発生前所定時間内に実行されたコマンドを抽出し、第２データ格納部に格納し、（Ｂ）ユーザにより第１のコマンドが入力された場合、第２データ格納部に、第１のコマンドと一致するコマンドが格納されているか判断し、（Ｃ）第１のコマンドと一致するコマンドが格納されていると判断された場合に、異常が発生する可能性があることを示す表示データを出力する処理を含む。
【００６８】
このようにすれば、異常発生の原因になり得るコマンドが漏れなく自動的に登録されるので、そのようなコマンドを誤って実行してしまうことを防止できるようになる。
【００６９】
また、上で述べた第１データ格納部には、システムに対して行われた作業の各々について、当該作業において実行したコマンドのうちシステムの状態に影響を及ぼすコマンドの情報が格納システムに対して行われた作業の各々について当該作業において実行したコマンドの情報が格納されるようにしてもよい。そして、異常の発生前所定時間内に実行されたコマンドを抽出する処理において、（ａ１）異常の発生前所定時間内に実行されたコマンドと当該コマンドが実行された作業の識別情報とを抽出し、当該コマンドと当該作業の識別情報とを対応付けて第２データ格納部に格納し、表示データを出力する処理において、（ｃ１）第１のコマンドと一致するコマンドに対応付けて格納されている作業の識別情報を第２データ格納部から抽出し、（ｃ２）第１のコマンド及び当該第１のコマンドの実行前所定時間内に実行されたコマンドを含む第１のコマンド群が、抽出された作業の識別情報によって特定される第２のコマンド群と一致するか判断し、（ｃ３）第１のコマンドと一致するコマンドが格納されていると判断され且つ第１のコマンド群と第２のコマンド群とが一致すると判断された場合に、異常が発生する可能性があることを示す表示データを出力するようにしてもよい。このようにすれば、ユーザは、異常が発生する可能性があることを認識したうえで、第１のコマンドを実行するか否かを決定することができるようになる。
【００７０】
また、上で述べた第１データ格納部には、システムに対して行われた作業の各々について、当該作業において実行したコマンドのうちシステムの状態に影響を及ぼすコマンドの情報と当該作業によって異常が発生したか否かを示す情報とが格納されるようにしてもよい。そして、異常の発生前所定時間内に実行されたコマンドを抽出する処理において、（ａ２）第１データ格納部から、異常の発生直前に実行したコマンドと同じコマンドが実行された作業のうち異常が発生していない作業の識別情報を抽出し、異常の発生直前に実行したコマンドに対応付けて第２データ格納部に格納し、表示データを出力する処理において、（ｃ４）第１のコマンドと一致するコマンドに対応付けて格納されている、異常が発生していない作業の識別情報を第２データ格納部から抽出し、（ｃ５）第１のコマンド及び当該第１のコマンドの実行前所定時間内に実行されたコマンドを含む第１のコマンド群が、抽出された異常が発生していない作業の識別情報によって特定される第３のコマンド群と一致するか判断し、（ｃ６）第１のコマンドと一致するコマンドが格納されていると判断され且つ第１のコマンド群と第３のコマンド群とが一致しないと判断された場合に、異常が発生する可能性があることを示す表示データを出力するようにしてもよい。正常に行われた作業に係るコマンド群と一致しない場合にも、異常が発生する可能性がある。従って、上で述べたようにすれば、異常が発生する可能性があるにもかかわらず第１のコマンドが実行されてしまうことを抑制できるようになる。
【００７１】
また、本情報処理方法が、（Ｄ）第１のコマンドと一致するコマンドが格納されていないと判断された場合に、システムに影響を及ぼさないコマンドを格納する第３データ格納部に、第１のコマンドが格納されているか判断し、（Ｅ）第１のコマンドが格納されていないと判断された場合に、第１のコマンドが実行される前におけるシステムの状態を示す第１の情報を取得し、（Ｆ）第１のコマンドがシステムにおいて実行された場合、当該第１のコマンドの実行後におけるシステムの状態を示す第２の情報を取得し、（Ｇ）システムの状態が変化した場合に、第１のコマンドの情報を、第１データ格納部に格納する処理をさらに含むようにしてもよい。コマンドには、システムの状態に影響を及ぼすコマンドとシステムの状態に影響を及ぼさないコマンドとがあり、異常発生の原因になるのは前者のコマンドに限られる。そこで、上で述べたようにすれば、異常発生の原因になり得るコマンドを適切に特定できるようになる。
【００７２】
また、第１のコマンドと一致するコマンドが格納されているか判断する処理において、（ｂ１）第１のコマンドのコマンド本体と一致するコマンド本体を有し且つ第１のコマンドのパラメタとの類似度が所定値以上であるパラメタを有するコマンドが第２データ格納部に格納されているか判断するようにしてもよい。このようにすれば、判断の精度を向上させることができるようになる。
【００７３】
なお、上記方法による処理をコンピュータに行わせるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブルディスク、ＣＤ−ＲＯＭ、光磁気ディスク、半導体メモリ、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納される。尚、中間的な処理結果はメインメモリ等の記憶装置に一時保管される。
【００７４】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
【００７５】
（付記１）
コンピュータに、
コマンドが実行されたシステムにおいて異常が発生したことを検知した場合に、前記システムにおいて実行され且つ前記システムの状態に影響を及ぼすコマンドのうち、前記異常の発生前所定時間内に実行されたコマンドを抽出し、
第１のコマンドが入力された場合、前記第１のコマンドと一致するコマンドが抽出されているか判定し、
前記第１のコマンドと一致するコマンドが抽出されている場合に、異常が発生する可能性があることを示す表示データを出力する
処理を実行させることを特徴とするプログラム。
【００７６】
（付記２）
前記表示データを出力する処理において、
前記第１のコマンドと一致するコマンドが実行された作業のうち、異常が発生した作業の識別情報を抽出し、
前記第１のコマンド及び当該第１のコマンドの実行前所定時間内に実行されたコマンドを含む第１のコマンド群が、抽出された前記異常が発生した作業の識別情報によって特定される第２のコマンド群と一致するか判定し、
前記第１のコマンド群と前記第２のコマンド群とが一致する場合に、異常が発生する可能性があることを示す表示データを出力する
ことを特徴とする付記１記載のプログラム。
【００７７】
（付記３）
前記表示データを出力する処理において、
前記第１のコマンドと一致するコマンドが実行された作業のうち、異常が発生していない作業の識別情報を抽出し、
前記第１のコマンド及び当該第１のコマンドの実行前所定時間内に実行されたコマンドを含む第１のコマンド群が、抽出された前記異常が発生していない作業の識別情報によって特定される第３のコマンド群と一致するか判定し、
前記第１のコマンド群と前記第３のコマンド群とが一致しない場合に、異常が発生する可能性があることを示す表示データを出力する
ことを特徴とする付記１記載のプログラム。
【００７８】
（付記４）
前記第１のコマンドと一致するコマンドが抽出されていない場合に、前記第１のコマンドが、前記システムに影響を及ぼさないコマンドであるか判定し、
前記システムに影響を及ぼさないコマンドである場合に、前記第１のコマンドが実行される前における前記システムの状態を示す第１の情報を取得し、
前記第１のコマンドが前記システムにおいて実行された場合、当該第１のコマンドの実行後における前記システムの状態を示す第２の情報を取得し、
前記システムの状態が変化した場合に、前記第１のコマンドが、前記システムに影響を及ぼすコマンドであると判定する
処理をさらに実行させるための付記１記載のプログラム。
【００７９】
（付記５）
前記第１のコマンドと一致するコマンドが抽出されているか判定する処理において、
前記第１のコマンドのコマンド本体と一致するコマンド本体を有し且つ前記第１のコマンドのパラメタとの類似度が所定値以上であるパラメタを有するコマンドが抽出されているか判定する
付記１記載のプログラム。
【００８０】
（付記６）
コマンドが実行されたシステムにおいて異常が発生したことを検知した場合に、前記システムにおいて実行され且つ前記システムの状態に影響を及ぼすコマンドの情報のうち、前記異常の発生前所定時間内に実行されたコマンドを抽出し、
第１のコマンドが入力された場合、前記第１のコマンドと一致するコマンドが抽出されているか判定し、
前記第１のコマンドと一致するコマンドが抽出されている場合に、異常が発生する可能性があることを示す表示データを出力する
処理をコンピュータが実行する情報処理方法。
【００８１】
（付記７）
コマンドが実行されたシステムにおいて異常が発生したことを検知した場合に、前記システムにおいて実行され且つ前記システムの状態に影響を及ぼすコマンドの情報のうち、前記異常の発生前所定時間内に実行されたコマンドを抽出する抽出部と、
第１のコマンドが入力された場合、前記第１のコマンドと一致するコマンドが抽出されているか判定する判定部と、
前記第１のコマンドと一致するコマンドが抽出されている場合に、異常が発生する可能性があることを示す表示データを出力する出力部と、
を有する情報処理装置。
【符号の説明】
【００８２】
１  運用管理サーバ    １０１  実行履歴格納部
１０３  パターン格納部    １０５  参照系コマンド格納部
１０７  受信部    １０９  解析部
１１１  登録部
３  業務サーバ    ３１  検出部３１
３２  実行部３２
５  クライアント端末
７  ネットワーク
【図１】
2014010761.tif 000003
【図２】
2014010761.tif 000004
【図３】
2014010761.tif 000005
【図４】
2014010761.tif 000006
【図５】
2014010761.tif 000007
【図６】
2014010761.tif 000008
【図７】
2014010761.tif 000009
【図８】
2014010761.tif 000010
【図９】
2014010761.tif 000011
【図１０】
2014010761.tif 000012