JP2019501448A - 異種混成ログストリームにおける自動化された異常検出サービス - Google Patents

異種混成ログストリームにおける自動化された異常検出サービス Download PDF

Info

Publication number
JP2019501448A
JP2019501448A JP2018526078A JP2018526078A JP2019501448A JP 2019501448 A JP2019501448 A JP 2019501448A JP 2018526078 A JP2018526078 A JP 2018526078A JP 2018526078 A JP2018526078 A JP 2018526078A JP 2019501448 A JP2019501448 A JP 2019501448A
Authority
JP
Japan
Prior art keywords
log
model
generating
pattern
learning
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.)
Granted
Application number
JP2018526078A
Other languages
English (en)
Other versions
JP6538980B2 (ja
Inventor
ジアンウ ジュ、
ジアンウ ジュ、
ホイ ジャン、
ホイ ジャン、
ニプン アロラ、
ニプン アロラ、
ビプロブ デブナス、
ビプロブ デブナス、
グオフェイ ジアン、
グオフェイ ジアン、
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Laboratories America Inc
Original Assignee
NEC Laboratories America Inc
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 NEC Laboratories America Inc filed Critical NEC Laboratories America Inc
Publication of JP2019501448A publication Critical patent/JP2019501448A/ja
Application granted granted Critical
Publication of JP6538980B2 publication Critical patent/JP6538980B2/ja
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/3604Software analysis for verifying properties of programs
    • G06F11/3612Software analysis for verifying properties of programs by runtime analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • 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
    • G06F11/3636Software debugging by tracing the execution of the program

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 Hardware Design (AREA)
  • Software Systems (AREA)
  • Debugging And Monitoring (AREA)

Abstract

任意の/未知のシステムまたはアプリケーションから異種混成ログを受信することと、機械学習を使用して異種混成ログソースから正規表現パターンを生成することと、正規表現パターンからログパターンを抽出することと、異なる条件に基づく訓練ログからモデルとプロファイルとを生成することと、経時的に生成されたすべてのモデルを記憶するグローバルモデルデータベースを更新することと、プロダクションシステムを稼働させる1つまたは複数のアプリケーション、センサ、または機器からの生のログメッセージをトークン化することと、入来するトークン化されたストリームを異常検出のためのデータオブジェクトに変換することと、様々な異常ディテクタにログメッセージを転送することと、プロダクションシステムを稼働させる1つまたは複数のアプリケーション、センサ、または機器からの異常警報を生成することとにより、1つまたは複数のアプリケーション、センサ、または機器からのログデータを取り扱うシステムおよび方法が開示される。

Description

本出願は仮特許出願第62256750号に基づく優先権を主張し、同出願の内容は参照により組み込まれる。
本発明は、アプリケーション、センサ、または機器のためのログストリーム処理に関する。
ごく最近の自動化されたソフトウェアは、アプリケーションにおけるエラーの原因またはトランザクションの進行を開発者が理解し、認識できるように、人間が判読できるログを生成する。これは通常、実生活において発生し得る想定されるシナリオをデバッグするのを補助するための、アプリケーションの開発者自身による標準的な実務である。ごく最近のシステムにはログが存在するとはいえ、接続されたコンポーネントおよびデバイスの規模が、根本的な原因を発見することを非常に難しい探索問題とさせている。根本的な原因を手作業で見つけ出す現在の実務は、困難をともない、システムについてのオペレータの理解に依存し、数時間分の人時を消費し得る。
プロダクションバグを発見するためのSplunk、Loggly、およびELKなどの従来のシステムは、手作業による点検を必要とする。Splunkは、従来のログ入力のための検索エンジンである。これらのシステムは、プロダクションシステムから収集されたログ中のすべてのワードをインデックス処理して、Googleに類似した検索能力を提供する。これは多くの場合、オペレータがキーワードを検索し、様々なソースにわたる原因を手作業で相関させることにより、根本的な原因を簡単に発見し得るので、単純であるが非常に強力である。LogglyおよびELKはさらに一歩進んでおり、ユーザにより与えられるか、または、一般的なアプリケーションのために一般的に利用可能な正規表現の記憶場所から取得された正規表現に基づいて、ログのトークン化を提供する。トークン化されたログは、次に、インデックス処理されて、検索をサポートするデータベースに記憶される。これらの両方により、ユーザにリアルタイムの警報と可視化とがもたらされる。
任意の/未知のシステムまたはアプリケーションから異種混成ログを受信することと、機械学習を使用して異種混成ログソースから正規表現パターンを生成し、正規表現パターンからログパターンを抽出することと、異なる条件に基づく訓練ログからモデルとプロファイルとを生成し、経時的に生成されたすべてのモデルを記憶するグローバルモデルデータベースを更新することと、プロダクションシステムを稼働させる1つまたは複数のアプリケーション、センサ、または機器からの生のログメッセージをトークン化することと、入来するトークン化されたストリームを異常検出のためのデータオブジェクトに変換し、様々な異常ディテクタへのログメッセージを転送することと、プロダクションシステムを稼働させる1つまたは複数のアプリケーション、センサ、または機器からの異常警報を生成することとにより、1つまたは複数のアプリケーション、センサ、または機器からのログデータを取り扱うためのシステムおよび方法が開示される。
本システムの利点は、以下のうちの1つまたは複数を含み得る。本システムは、最近のデバイスにより生成された異種混成ログソースにおける異常を自動的に検出する。本システムは、センサ、コンピュータソフトウェア、またはモノのインターネットにより生成されたログを処理し得る。本システムは、人間によるいかなる入力も、以前の代表的かつ標準的で一般的なパターンも必要としない。本システムは、完全に自動化され、教師なし機械学習アルゴリズムに依存して、システムにおけるあらゆる異常についてユーザに警報を出す。警報を監視およびトリガーすることは、大規模プロダクションソフトウェアにおける問題を迅速に把握するための、本質的な「ファーストアタック」メカニズムである。さらに、兆候の位置と、兆候の想定される原因とをできる限り迅速に特定することが重要である。本システムは、データ分析とモデルとを組み込み得、高度な機械学習技術を使用して警報、警報の想定される原因をプッシュし得るプラットフォームを提供する。本システムは、構造についての予備知識なしで、任意の未修正ログに対して動作し得る。
本開示は、以下の図面を参照して好適な実施形態の詳細を以下の記述に示す。
NGLAの例示的なワークフロー工程を示す図である。 例示的なパターン抽出の動作をより詳細に示す図である。 モデル抽出工程の例示的な図を示す図である。 例示的なNGLAグローバルモデルデータベースを示す図である。 例示的なデータ変換およびトークン化されたログストリームの異常検出を示す図である。 例示的なユーザインターフェースのスナップショットを示す図である。 NGLAシステムを稼働させるハードウェアの一例を示すブロック図である。
NGLAと呼ばれる例示的なログ管理、処理、および分析プラットフォームについて詳述する。NGLAは、高度なログ分析のためのワークフローを提供する。本技術の1つの商業的な態様は、ユーザからのどのような入力も一切ともなわず、または、対象となるシステムのいかなる知識も使用しない、ユーザに対するリアルタイムの警報である。NGLAからのリアルタイムの警報は、バグの存在をオペレータが迅速に発見することを可能にし、さらに高度な分析がバグの原因の半自動化された理解を可能にすることにより、根本的な原因を発見しやすくする。全体として、このことにより、より速いバグ修正、よりロバストなソフトウェアが可能になり、ログを読む際、および、エラーの原因を見つけ出す際に現在費やされる数時間分の人時にかかるコストを減らす。
図1は、NGLAのための例示的なワークフロー工程を示す。本工程は、ログ処理ワークフローを互いと共に示すサービスレベルコンポーネントと、異種混成ログを扱うための、およびユーザのための有意義な警報を生成するための具体的なシステムとを提示する。
ログ分析プラットフォームは、異常検出モジュールおよびモデルを組み込むための、サービスに注目したアーキテクチャを提供する。NGLAは、訓練ログプロファイルをモデル化して(102)、異常検出(203)のために必要とされるモデルを要求するようにクエリされ得るグローバルモデルデータベース(103)に、モデル化された訓練ログプロファイルを記憶するための包括的な手法を提供する。試験フェーズにおいて、正規表現(201)を要求するクエリをして、入来するログストリームをトークン化する。分析コンポーネント(203)は、入来するストリームのためのデータ変換を提供する。これらの変換の利点は、それらが、異なる異常検出アルゴリズムのために互換性を備えて使用され得ることである。異常検出アルゴリズムは、データ変換を簡単にサブスクライブし得る。動作(204)は、異常の協調分析を可能にする例示的なUIを示す。
異種混成ログ収集は、100において実施される。この動作は、任意の/未知のシステムまたはアプリケーションから異種混成ログを取得する。ログメッセージは、タイムスタンプとテキストコンテンツとからなる。データは、「通常」事例とみなされる訓練ログと、試験ログとに分けられる。
まず、ログ−パターン抽出101が実施される。このステップは、教師なし機械学習を使用して異種混成ログソースから正規表現パターンを自動的に生成する。ログパターン抽出は、教師なし学習を使用して入来するログのための正規表現を生成する。ログパターンは、ワイルドカードパターンをともなう変数フィールドを含み、各フィールドはキー名称を含んでいる。キー名称は、よく知られたパターン、および、包括的な名称をもつ未知のフィールドに属し得る。例えば、
a.名前付きフィールド:タイムスタンプ、ログID、IPアドレス
b.未知:パターン1ストリング1、パターン1ナンバー1など
モデル生成102は、異なる条件に基づく訓練ログからモデルとプロファイルとを生成する。モデル生成は、構文および意味解析に基づいて訓練プロファイルを形成する工程である。101において生成された正規表現は、我々のモデルのうちの1つとみなされ得る。生成されたモデルのすべてが、グローバルモデルデータベースに記憶され(ステップ103)、生成されたモデルは、関連モデルを発見するために、期間に基づいて後でクエリされ得る。
グローバルモデルデータベース103iは、経時的に生成されたすべてのモデルを保持するグローバルモデルデータベースである。
ログトークン化201は、プロダクションシステムを稼働させる、ユーザに対面するアプリケーション/センサまたは他の機器から入来する生のログメッセージをトークン化するためのサービスを提供する。このステップにおいて、グローバルモデルデータベースにログパターンを要求するクエリをして、入来するログストリームをキー・値ペアにトークン化する。正規表現のマッチングは、メッセージ中の変数項目のための値を異なるキーに割り当てることを可能にする。これらのキーは、メッセージのフィールドとして使用され得、メッセージの非変数部分は、静的とみなされる。NGLAにおける分析は、フィールド値の意味理解、またはパターン間の関係から導かれ得る。
ログ管理202層は、記憶装置を管理し、次のステップにおいて様々な異常ディテクタにログメッセージを転送することを管理する。このステップは、ログの転送、および各メッセージのID管理などにともなうトークン化されたストリームのストリーム伝送を管理する。このステップはここでは、本明細書の範囲外である。
異常検出203コンポーネントは、異常検出アルゴリズムのためのサービスを提供する。入来するトークン化されたストリームは、異常検出のために簡単に使用され得るデータオブジェクトに変換される。異常な違反は、意味上の/構文上の、または統計上のものであり得る。NGLAにおける分析は、この分析コンポーネントにより駆動される。
異常可視化204層は、NGLAのプレゼンテーション層であり、ユーザへの警報を可視化する。
図2は、動作101において行われる例示的なパターン抽出の動作をより詳細に示す。この例において、図2におけるサンプルログに示されるサンプルログは、正規表現に変換される。例示的なキー変数は、次のとおりである。
tsl−>ログのタイムスタンプ
P3F1−>パターン3フィールド1
P3NS1−>パターン3英数字フィールド1
この正規表現は、次に、関連する訓練期間とともにグローバルモデルデータベースに記憶され得る。正規表現は、ステップ201においてログをトークン化するために使用され得る。
図3は、モデル抽出工程(102)の例示的な図を示す。NGLAフレームワークは、グローバルモデルデータベースに一緒に収集される様々なプロファイル/モデルを抽出するためのプラットフォームを含んでいる。これらのモデルは、関連する異常を発見してユーザに警報を出すために、異常検出サービスコンポーネントにより後で使用され得る。上述のワークフローは、入力として第1のステップ(101)におけるログトークン化を使用する。したがって、すべての訓練ログは、(101)において説明されるように、キー・値ペアへと分解される。
図3は、生成され得る3つの想定されるモデルを示す。これら3つは単に、生成され得る想定されるモデルの例として機能するが、本アーキテクチャはそれらの3つのモデルに限定されず、さらに別のこのようなモデルに対するサービスコンポーネントとして機能することが意図される。
a.コンテンツプロファイルモデル:このモデルは、ログのカテゴリのパターン/正規表現における各キーに対する様々な値の頻度プロファイルを形成する。
b.シーケンス順序モデル:このモデルは、様々なパターン間のシーケンシャルな順序関係を抽出する。例えば、観測されたトランザクションは、パター1として規定され得、パター1の後にパターン2が続き、最大時間差が10秒であり、このようなトランザクションは最大3つが同時に発生し得る。
c.ボリュームモデル:このモデルは、各パターンのログの数の頻度分布を保持する。頻度分布は、次に、特定のパターンの普通でないスパイクを検出するために使用され、ユーザに対する警報としてそれらのスパイクを報告する。
図4は、例示的なNGLAグローバルモデルデータベースを示す。グローバルモデルデータベースは、NGLAの重要なコンポーネントである。実際の現実の用途では、学習は継続的な工程である。変化する作業負荷、新しい構成、設定、または、さらにはソフトウェアに適用されるパッチが原因となり、システムの挙動が経時的に変化および進化する。これは、本質的には、学習されたモデルがさらに、頻繁に更新されなければならないことを意味する。
分散学習および漸次的学習はモデルに依存し、各モデルに対して独立して開発される。グローバルモデルデータベースは、データベースにその訓練されたプロファイルを保持し得る学習サービスを可能にするために、これらの技法の両方を支援および補完するインターフェースを提供する。
この課題に基づけば、NGLAワークフローのコンポーネントは以下のとおりとなる。
モデル選択1031は、モデルを選択する、新しいモデルを形成する、モデルを削除するなどの単純なクエリをサポートするグローバルモデルデータベースコンポーネントである。モデル選択は、例えばタイムスタンプ、ソース、モデルカテゴリなどのクエリに基づき得る。さらに、モデルカテゴリをグループ化するための、および異なる時間範囲にわたってモデルを収集するための、連結、グループ化、収集などの複雑なクエリが存在し得る。
モデルコンソリデーション1032は、漸次的学習工程または分散学習工程をサポートするためにモデル更新を扱うコンポーネントである。モデル自体の更新は、学習アルゴリズムとモデルプロファイルとに依存する。例えば我々のボリュームモデルは、最小/最大を使用すること、および、より新しいモデルからの最小/最大とマージすることにより簡単に更新され得る。
モデルコンソリデーションのステップは、次のとおりである。
a.データベースにモデルをクエリする:データベースに関連モデルをクエリする。
b.新しいモデルを形成する:現在の訓練データからの新しいモデルを使用してモデルを更新する。これにより、より新しい訓練ログを使用してモデルを改善する反復工程を可能にする。代替的に、モデルの更新は、非常に大きな訓練ログに対する分散学習も可能にする。
c.データベースにモデルを保存する:新しいモデルは、更新される必要があるか、または、モデルデータベースに独立した行として追加される必要がある。
モデルデータベース1033は、階層スキーマを含んでいるモデルデータベースを使用し、各モデルは次のように保持される:
<タイムスタンプ、時間範囲、カテゴリ、ソース、モデル>
1.タイムスタンプ−モデルが生成された時刻
2.時間範囲−モデルが形成された訓練ログの時間範囲
3.カテゴリ−モデルのカテゴリ
4.モデル−モデルは、BLOBエントリーとして、または独立したテーブルとして保存され得る。
サービスAPI1034は、以下のサービスAPIをサポートする:
a.分散学習:大きな訓練ログセッションは、場合によっては、学習工程を高速化するために分散学習を必要とすることがある。これは、グローバルモデルデータベースに対する更新をロック/ロック解除し得る、および既存のモデルに対する更新クエリを可能にし得る新規なモデルコンソリデーション工程を必要とする。
b.漸次的学習:分散学習と同様にモデルは、翌日から、より新しい訓練データにより反復して更新されることが必要とされてよい。
c.モデルをクエリする:モデルをクエリすることが要件とされる試験時において、これは時間範囲、ソースなどに依存し得る。
d.モデルデータベース:記憶データベースにおけるモデル管理のスキーマ。
図5は、例示的なデータ変換と、トークン化されたログストリームの異常検出とを示す。この例において、3つのデータ変換ストリームと、それらに対応する異常検出アルゴリズムとが、例として示される。これらは、説明のための例としてのみ機能し、アーキテクチャ自体は拡張性がある。分析エンジンの工程は、パブリッシュ−サブスクライブアーキテクチャと同様の2つの重要なフェーズに分割され得る:
a.データ変換:このフェーズにおいて、入来するデータストリームを一般的な異常検出タスクに有用なデータオブジェクトに変換する。図4において、いくつかの一般的なデータ変換について説明した。適用される必要のある異常検出に応じて、関連するデータ変換オブジェクトが選択され得る。これは、機能的に同様な変換の冗長な計算を大幅に削減し、全体的な複雑さと、異常検出のためにNGLAにより費やされる時間とをさらに短縮する。変換されたデータオブジェクトは、パブリッシュ/サブスクライブシステムにプッシュされ、パブリッシュ/サブスクライブシステムが次に、異常検出からサブスクライブされ得る。
b.異常検出:異常検出フェーズは、変換されたデータ−ストリームをサブスクライブする。次に、入来する変換されたログストリームがシステムにおける異常を示すか否かを確認するために、違反/異常確認アルゴリズムを適用する。
図6は、例示的なユーザインターフェースのスナップショットを示す。NGLAは、異常の横並びの表示を可能にする可視化インターフェースを含んでいる。スナップショットは、リアルタイムの警報のタイムスタンプ(図6のラベル1)、異常カテゴリ、および異常の理由とともに、様々な異なるカテゴリ(図6のラベル5)が並べて示され得ることを示す。上方のリアルタイムのタイムチャートは、異常なログにおけるスパイク(図6のラベル2)、および総数、ならびに異常なカテゴリの各々の異なる数(図6のラベル4)を示す。
単純な記憶および検索の代わりに、システムは、高度な分析および機械学習技術を使用する。NGLAは、正規表現パターンをユーザに要求する代わりに、正規表現パターンを学習するための教師なし学習をしやすくする。NGLAは、以下のことを伴う:
1.高度なログ分析のための全体的なワークフロー:本発明は、入力ログがどのように変換され得るか、および、様々な分析が様々な訓練および試験段階を経てどのように適用され得るかについてのワークフローを提供する。
2.拡縮可能な、および適応可能な高度なログ分析のためのプラットフォーム。NGLAプラットフォームは、メカニズムが新しい分析を簡単に組み込むことを可能にする
3.ユーザが訓練されたモデルを保存、保持、クエリ、および更新することを可能にするグローバルモデルデータベース。
4.ログオブジェクト変換のためのパブリッシュ−サブスクライブワークフロー
5.並んだ視覚ユーザインターフェース
類似の数字が同一または類似の要素を表す図を参照するが、まずは図7を参照すると、本原理の実施形態に従った、本原理が適用されてよい例示的な処理システム100を説明するブロック図が示される。処理システム100は、システムバス102を介して他のコンポーネントに動作可能に結合されている少なくとも1つのプロセッサ(CPU)104を含んでいる。キャッシュ106、読み取り専用メモリ(ROM)108、ランダムアクセスメモリ(RAM)110、入力/出力(I/O)アダプタ120、サウンドアダプタ130、ネットワークアダプタ140、ユーザインターフェースアダプタ150、およびディスプレイアダプタ160が、システムバス102に動作可能に結合されている。
第1の記憶デバイス122と第2の記憶デバイス124とが、I/Oアダプタ120によりシステムバス102に動作可能に結合されている。記憶デバイス122および124は、ディスク記憶デバイス(例えば、磁気または光ディスク記憶デバイス)、ソリッドステート磁気デバイスなどのうちの任意のものであり得る。記憶デバイス122および124は、同じ種類の記憶デバイスまたは異なる種類の記憶デバイスであり得る。
スピーカー132は、サウンドアダプタ130によりシステムバス102に動作可能に結合されている。送受信器142は、ネットワークアダプタ140によりシステムバス102に動作可能に結合されている。ディスプレイデバイス162は、ディスプレイアダプタ160によりシステムバス102に動作可能に結合されている。第1のユーザ入力デバイス152と第2のユーザ入力デバイス154と第3のユーザ入力デバイス156とが、ユーザインターフェースアダプタ150によりシステムバス102に動作可能に結合されている。ユーザ入力デバイス152、154、および156は、キーボード、マウス、キーパッド、画像取り込みデバイス、動き検出デバイス、マイクロホン、上述のデバイスのうちの少なくとも2つの機能を組み込むデバイスなどのうちの任意のものであり得る。もちろん、本原理の趣旨を維持しながら、他の種類の入力デバイスも使用され得る。ユーザ入力デバイス152、154、および156は、同じ種類のユーザ入力デバイスまたは異なる種類のユーザ入力デバイスであり得る。ユーザ入力デバイス152、154、および156は、システム100に、およびシステム100から情報を入力および出力するために使用される。
もちろん、処理システム100は、当業者により容易に考えられるような他の要素(図示せず)をさらに含んでもよく、また、特定の要素を除外してもよい。例えば、当業者により容易に理解されるように、処理システム100の特定の実装例に応じて、様々な他の入力デバイスおよび/または出力デバイスが処理システム100に含まれ得る。例えば、様々な種類の無線および/または有線入力および/または出力デバイスが使用され得る。さらに、当業者により容易に理解されるように、追加的なプロセッサ、制御装置、メモリなども様々な構成で使用され得る。処理システム100のこれらのおよび他の変形例が、本明細書において提供される本原理の教示を受けた当業者により容易に考えられる。
本明細書において説明される実施形態は、全体がハードウェアであってもよく、または、ハードウェア要素と、ファームウェア、常駐ソフトウェア、マイクロコードなどを含んでいるがこれらに限定はされないソフトウェア要素との両方を含んでもよいことが理解される。
実施形態は、コンピュータまたは任意の命令実行システムによる使用のための、または、コンピュータまたは任意の命令実行システムに関連した使用のためのプログラムコードを提供するコンピュータ可用またはコンピュータ可読媒体からアクセス可能なコンピュータプログラム製品を含んでもよい。コンピュータ可用またはコンピュータ可読媒体は、命令実行システム、装置、またはデバイスによる使用のための、または命令実行システム、装置、またはデバイスに関連した使用のためのプログラムを記憶、通信、伝搬、または伝送する任意の装置を含んでもよい。媒体は、磁気、光学、電子、電磁、赤外線、もしくは半導体システム(または、装置もしくはデバイス)または伝搬媒体であり得る。媒体は、例えば、半導体またはソリッドステートメモリ、磁気テープ、取り外し可能なコンピュータディスケット、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、剛性磁気ディスクおよび光ディスクなどのコンピュータ可読記憶媒体を含んでもよい。
プログラムコードを記憶および/または実行するのに適したデータ処理システムは、システムバスを介してメモリ素子に直接的または間接的に結合されている少なくとも1つのプロセッサ、例えばハードウェアプロセッサを含んでもよい。メモリ素子は、プログラムコードの実際の実行中に使用されるローカルメモリ、バルク記憶装置、および、実行中にバルク記憶装置からコードが入手される回数を減らすために少なくともいくつかのプログラムコードの一時的な記憶装置を提供するキャッシュメモリを含み得る。入力/出力またはI/Oデバイス(限定はされないがキーボード、ディスプレイ、ポインティングデバイスなどを含んでいる)は、システムに直接、または介在するI/O制御装置を介して結合されていてもよい。
前述の事項は、すべての点において説明のためのものであり例示的であるが限定するものではないと理解され、本明細書において開示される本発明の範囲は、発明を実施するための形態により特定されるのではなく、むしろ、特許法により認められる最大限の広さにしたがって解釈されるように、特許請求の範囲により特定される。本明細書において示される、および説明される実施形態が本発明の原理の例示にすぎないことと、当業者が本発明の範囲と趣旨とから逸脱することなく様々な変更を実施してもよいこととが理解される。当業者は、本発明の範囲と趣旨とから逸脱することなく様々な他の特徴の組み合わせを実施し得る。

Claims (20)

  1. 1つまたは複数のアプリケーション、センサ、または機器からのログデータを取り扱う方法であって、
    任意の/未知のシステムまたはアプリケーションから異種混成ログを受信することと、
    機械学習を使用して異種混成ログソースから正規表現パターンを生成し、前記正規表現パターンからログパターンを抽出することと、
    異なる条件に基づく訓練ログからモデルとプロファイルとを生成し、経時的に生成されたすべてのモデルを記憶するグローバルモデルデータベースを更新することと、
    プロダクションシステムを稼働させる1つまたは複数のアプリケーション、センサ、または機器からの生のログメッセージをトークン化することと、
    入来するトークン化されたストリームを異常検出のためのデータオブジェクトに変換し、様々な異常ディテクタにログメッセージを転送することと、
    プロダクションシステムを稼働させる前記1つまたは複数のアプリケーション、センサ、または機器からの異常警報を生成することと、
    を有する、方法。
  2. 各ログメッセージが、タイムスタンプおよびテキストコンテンツを含んでいる、請求項1に記載の方法。
  3. データを訓練ログと試験ログとに分割することを有する、請求項1に記載の方法。
  4. 異常な違反の各々が、意味上の、構文上の、または統計上の違反を含んでいる、請求項1に記載の方法。
  5. ユーザに対する視覚的な警報を生成することを有する、請求項1に記載の方法。
  6. 前記ログパターン抽出が、教師なし学習を使用して、入来するログのための正規表現を生成する、請求項1に記載の方法。
  7. 前記ログパターンは、ワイルドカードパターンを使用した変数フィールドを含んでおり、各フィールドが、既知のパターンに、および包括的な名称をもつ未知のフィールドに属するキー名称をもつ、請求項1に記載の方法。
  8. 前記モデルを生成することが、構文および意味解析に基づいて訓練プロファイルを形成することを含む、請求項1に記載の方法。
  9. ログのカテゴリのパターンまたは正規表現における各キーに対する様々な値の頻度プロファイルを形成するために、コンテンツプロファイルモデルを生成することを有する、請求項1に記載の方法。
  10. パターン間のシーケンシャルな順序関係を抽出するシーケンス順序モデルを生成することを有する、請求項1に記載の方法。
  11. 各パターンのログの頻度分布を保持するボリュームモデルを生成し、特定のパターンの普通でないスパイクを検出し、警報として前記スパイクを報告すること、を有する、請求項1に記載の方法。
  12. 前記モデルに応じて分散学習と漸次的学習とを実施すること、を有する、請求項1に記載の方法。
  13. 前記グローバルモデルデータベースが、訓練されたプロファイルをデータベースに保持し得る学習サービスを支援するための、および前記訓練されたプロファイルを前記データベースに保持し得る前記学習サービスを可能にするためのインターフェースを提供する、請求項12に記載の方法。
  14. タイムスタンプ、ソース、モデルカテゴリに基づいて、または、連結、グループ化、モデルカテゴリをグループ化するための収集、および異なる時間範囲にわたってモデルを収集することを含んでいる複雑なクエリに基づいて、モデルを選択することを有する、請求項1に記載の方法。
  15. 漸次的学習工程または分散学習工程をサポートするためにモデル更新を実施することを有し、前記モデルの更新が、学習アルゴリズムおよびモデルプロファイルに依存する、請求項1に記載の方法。
  16. 階層スキーマを含んでいるモデルデータベースを形成することを有し、各モデルが、<タイムスタンプ、時間範囲、カテゴリ、ソース、モデル>を含んでいる、請求項1に記載の方法。
  17. 入来するデータストリームを一般的な異常検出タスクのためのデータオブジェクトに変換することを有する、請求項1に記載の方法。
  18. 変換されたデータオブジェクトをパブリッシュ/サブスクライブモジュールにプッシュし、異常検出のための前記モジュールをサブスクライブすること、を有する、請求項17に記載の方法。
  19. 入来する変換されたログストリームが前記システムにおける異常を示すか否かを確認するために違反または異常確認を適用することを有する、請求項18に記載の方法。
  20. プロセッサと、
    前記プロセッサにデータを提供するモノのインターネット(IoT)センサと、
    コンピュータ可読コードであって、
    任意の/未知のシステムまたはアプリケーションから異種混成ログを受信することと、
    機械学習を使用して異種混成ログソースから正規表現パターンを生成し、前記正規表現パターンからログパターンを抽出することと、
    異なる条件に基づく訓練ログからモデルとプロファイルとを生成し、経時的に生成されたすべてのモデルを記憶するグローバルモデルデータベースを更新することと、
    プロダクションシステムを稼働させる1つまたは複数のアプリケーション、センサ、または機器からの生のログメッセージをトークン化することと、
    入来するトークン化されたストリームを異常検出のためのデータオブジェクトに変換し、様々な異常ディテクタにログメッセージを転送することと、
    プロダクションシステムを稼働させる1つまたは複数のアプリケーション、センサ、または機器からの異常警報を生成することと、
    を行うように、前記プロセッサにより実行されるコンピュータ可読コードと、
    を備えている、システム。
JP2018526078A 2015-11-18 2016-11-17 異種混成ログストリームにおける自動化された異常検出サービス Active JP6538980B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201562256750P 2015-11-18 2015-11-18
US62/256,750 2015-11-18
US15/352,546 2016-11-15
US15/352,546 US9928155B2 (en) 2015-11-18 2016-11-15 Automated anomaly detection service on heterogeneous log streams
PCT/US2016/062397 WO2017087591A1 (en) 2015-11-18 2016-11-17 An automated anomaly detection service on heterogeneous log streams

Publications (2)

Publication Number Publication Date
JP2019501448A true JP2019501448A (ja) 2019-01-17
JP6538980B2 JP6538980B2 (ja) 2019-07-03

Family

ID=58690655

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018526078A Active JP6538980B2 (ja) 2015-11-18 2016-11-17 異種混成ログストリームにおける自動化された異常検出サービス

Country Status (4)

Country Link
US (1) US9928155B2 (ja)
JP (1) JP6538980B2 (ja)
DE (1) DE112016005292T5 (ja)
WO (1) WO2017087591A1 (ja)

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10664501B2 (en) * 2016-10-11 2020-05-26 International Business Machines Corporation Deriving and interpreting users collective data asset use across analytic software systems
US10333805B2 (en) * 2017-04-21 2019-06-25 Nec Corporation Ultra-fast pattern generation algorithm for the heterogeneous logs
US10740212B2 (en) * 2017-06-01 2020-08-11 Nec Corporation Content-level anomaly detector for systems with limited memory
US10909115B2 (en) * 2017-12-04 2021-02-02 Nec Corporation System event search based on heterogeneous logs
US11010233B1 (en) 2018-01-18 2021-05-18 Pure Storage, Inc Hardware-based system monitoring
US10970395B1 (en) 2018-01-18 2021-04-06 Pure Storage, Inc Security threat monitoring for a storage system
CN108897674A (zh) * 2018-07-12 2018-11-27 郑州云海信息技术有限公司 一种日志分析方法与装置
US11017076B2 (en) * 2018-08-08 2021-05-25 Microsoft Technology Licensing, Llc Enhancing security using anomaly detection
US11218498B2 (en) * 2018-09-05 2022-01-04 Oracle International Corporation Context-aware feature embedding and anomaly detection of sequential log data using deep recurrent neural networks
CN109635993A (zh) * 2018-10-23 2019-04-16 平安科技(深圳)有限公司 基于预测模型的操作行为监控方法及装置
CN109614381A (zh) * 2018-12-07 2019-04-12 北京科东电力控制系统有限责任公司 电力调度日志分类方法、装置及设备
CN111367750B (zh) * 2018-12-26 2023-06-20 阿里巴巴集团控股有限公司 一种异常处理方法、装置及其设备
US11520981B2 (en) * 2019-03-07 2022-12-06 Nec Corporation Complex system anomaly detection based on discrete event sequences
EP3713189A1 (de) * 2019-03-22 2020-09-23 Siemens Aktiengesellschaft Intrusionserkennung bei computersystemen
US11061800B2 (en) * 2019-05-31 2021-07-13 Microsoft Technology Licensing, Llc Object model based issue triage
US11303653B2 (en) * 2019-08-12 2022-04-12 Bank Of America Corporation Network threat detection and information security using machine learning
WO2021062739A1 (zh) * 2019-09-30 2021-04-08 华为技术有限公司 一种分布式系统中消息的同步方法及装置
EP4062307A4 (en) 2019-11-18 2022-11-30 Telefonaktiebolaget LM Ericsson (publ) ANOMALY DETECTION FROM LOG MESSAGES
CN111221702B (zh) * 2019-11-18 2024-02-27 上海维谛信息科技有限公司 基于日志分析的异常处理方法、系统、终端及介质
US11657155B2 (en) 2019-11-22 2023-05-23 Pure Storage, Inc Snapshot delta metric based determination of a possible ransomware attack against data maintained by a storage system
US11500788B2 (en) 2019-11-22 2022-11-15 Pure Storage, Inc. Logical address based authorization of operations with respect to a storage system
US11941116B2 (en) 2019-11-22 2024-03-26 Pure Storage, Inc. Ransomware-based data protection parameter modification
US11651075B2 (en) 2019-11-22 2023-05-16 Pure Storage, Inc. Extensible attack monitoring by a storage system
US11687418B2 (en) 2019-11-22 2023-06-27 Pure Storage, Inc. Automatic generation of recovery plans specific to individual storage elements
US11520907B1 (en) 2019-11-22 2022-12-06 Pure Storage, Inc. Storage system snapshot retention based on encrypted data
US11675898B2 (en) 2019-11-22 2023-06-13 Pure Storage, Inc. Recovery dataset management for security threat monitoring
US11341236B2 (en) 2019-11-22 2022-05-24 Pure Storage, Inc. Traffic-based detection of a security threat to a storage system
US11615185B2 (en) 2019-11-22 2023-03-28 Pure Storage, Inc. Multi-layer security threat detection for a storage system
US11720692B2 (en) 2019-11-22 2023-08-08 Pure Storage, Inc. Hardware token based management of recovery datasets for a storage system
US11755751B2 (en) 2019-11-22 2023-09-12 Pure Storage, Inc. Modify access restrictions in response to a possible attack against data stored by a storage system
US11645162B2 (en) 2019-11-22 2023-05-09 Pure Storage, Inc. Recovery point determination for data restoration in a storage system
US11720714B2 (en) 2019-11-22 2023-08-08 Pure Storage, Inc. Inter-I/O relationship based detection of a security threat to a storage system
US11625481B2 (en) 2019-11-22 2023-04-11 Pure Storage, Inc. Selective throttling of operations potentially related to a security threat to a storage system
CN111581045B (zh) * 2020-03-18 2024-05-28 平安科技(深圳)有限公司 数据库异常监测方法、装置、计算机装置及存储介质
US11321164B2 (en) 2020-06-29 2022-05-03 International Business Machines Corporation Anomaly recognition in information technology environments
US11528200B2 (en) 2020-09-15 2022-12-13 Cisco Technology, Inc. Proactive insights for IoT using machine learning
CN113778818A (zh) * 2020-09-25 2021-12-10 北京沃东天骏信息技术有限公司 优化系统的方法、装置、设备和计算机可读介质
US11561848B2 (en) * 2021-06-14 2023-01-24 Hewlett Packard Enterprise Development Lp Policy-based logging using workload profiles
CN114205216B (zh) * 2021-12-07 2024-02-06 中国工商银行股份有限公司 微服务故障的根因定位方法、装置、电子设备和介质
CN114553482B (zh) * 2022-01-18 2023-06-27 南京邮电大学 基于异构日志的异常检测网络生成方法及异常检测方法
DE102022131127A1 (de) 2022-11-24 2024-05-29 German Edge Cloud GmbH & Co. KG Verfahren und System für selbstheilende Anwendungen mittels automatischer Analyse von Log-Quellen
CN116596292B (zh) * 2023-07-17 2023-09-12 知微行易(上海)智能科技有限公司 产生动态ocap异常行动计划的方法
CN116915512B (zh) * 2023-09-14 2023-12-01 国网江苏省电力有限公司常州供电分公司 电网中通信流量的检测方法、检测装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014196129A1 (ja) * 2013-06-03 2014-12-11 日本電気株式会社 障害分析装置、障害分析方法、および、記録媒体
WO2015045262A1 (ja) * 2013-09-24 2015-04-02 日本電気株式会社 ログ分析システム、障害原因分析システム、ログ分析方法、および、プログラムを記憶する記録媒体
JP2015097047A (ja) * 2013-11-15 2015-05-21 富士通株式会社 判定装置、判定プログラム、及び判定方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070289013A1 (en) * 2006-06-08 2007-12-13 Keng Leng Albert Lim Method and system for anomaly detection using a collective set of unsupervised machine-learning algorithms
US7818418B2 (en) * 2007-03-20 2010-10-19 Computer Associates Think, Inc. Automatic root cause analysis of performance problems using auto-baselining on aggregated performance metrics
JP4872945B2 (ja) * 2008-02-25 2012-02-08 日本電気株式会社 運用管理装置、運用管理システム、情報処理方法、及び運用管理プログラム
US20120137367A1 (en) * 2009-11-06 2012-05-31 Cataphora, Inc. Continuous anomaly detection based on behavior modeling and heterogeneous information analysis
US8438270B2 (en) * 2010-01-26 2013-05-07 Tenable Network Security, Inc. System and method for correlating network identities and addresses
US8549650B2 (en) * 2010-05-06 2013-10-01 Tenable Network Security, Inc. System and method for three-dimensional visualization of vulnerability and asset data
US8683591B2 (en) * 2010-11-18 2014-03-25 Nant Holdings Ip, Llc Vector-based anomaly detection
US9710360B2 (en) * 2013-06-27 2017-07-18 Nxp Usa, Inc. Optimizing error parsing in an integrated development environment
US10114148B2 (en) * 2013-10-02 2018-10-30 Nec Corporation Heterogeneous log analysis

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014196129A1 (ja) * 2013-06-03 2014-12-11 日本電気株式会社 障害分析装置、障害分析方法、および、記録媒体
WO2015045262A1 (ja) * 2013-09-24 2015-04-02 日本電気株式会社 ログ分析システム、障害原因分析システム、ログ分析方法、および、プログラムを記憶する記録媒体
JP2015097047A (ja) * 2013-11-15 2015-05-21 富士通株式会社 判定装置、判定プログラム、及び判定方法

Also Published As

Publication number Publication date
US9928155B2 (en) 2018-03-27
JP6538980B2 (ja) 2019-07-03
US20170139806A1 (en) 2017-05-18
WO2017087591A1 (en) 2017-05-26
DE112016005292T5 (de) 2018-09-20

Similar Documents

Publication Publication Date Title
JP6538980B2 (ja) 異種混成ログストリームにおける自動化された異常検出サービス
US11562304B2 (en) Preventative diagnosis prediction and solution determination of future event using internet of things and artificial intelligence
US11120033B2 (en) Computer log retrieval based on multivariate log time series
US11252168B2 (en) System and user context in enterprise threat detection
US10679135B2 (en) Periodicity analysis on heterogeneous logs
JP6875179B2 (ja) システム分析装置、及びシステム分析方法
US10929218B2 (en) Joint semantic and format similarity for large scale log retrieval
US20200174870A1 (en) Automated information technology system failure recommendation and mitigation
JP5756386B2 (ja) 動的なウェブ・アプリケーションの問題を修正するメタデータの生成・管理の支援方法、装置、およびプログラム
US20160034525A1 (en) Generation of a search query to approximate replication of a cluster of events
US20140082013A1 (en) Query templates for queries in data stream management systems
JP2018045403A (ja) 異常検知システム及び異常検知方法
US10175954B2 (en) Method of processing big data, including arranging icons in a workflow GUI by a user, checking process availability and syntax, converting the workflow into execution code, monitoring the workflow, and displaying associated information
CN111813960B (zh) 基于知识图谱的数据安全审计模型装置、方法及终端设备
US20170201606A1 (en) Automatically adjusting timestamps from remote systems based on time zone differences
KR102067032B1 (ko) 하이브리드 빅데이터 시스템 기반 데이터 처리 방법 및 시스템
US11055631B2 (en) Automated meta parameter search for invariant based anomaly detectors in log analytics
Makanju et al. Investigating event log analysis with minimum apriori information
US20220405281A1 (en) Versatile query logic on data flux reverse analyzer
US20150370873A1 (en) Data aggregation and reporting environment for data center infrastructure management
US20230004835A1 (en) Machine-learning-based techniques for determining response team predictions for incident alerts in a complex platform
CN107004036A (zh) 用以搜索包含大量条目的日志的方法和系统
US20150066947A1 (en) Indexing apparatus and method for search of security monitoring data
WO2016021184A1 (ja) 情報処理システムおよびプロジェクトリスク検知方法
Stephan et al. A scientific data provenance harvester for distributed applications

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190404

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190416

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190508

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: 20190528

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190606

R150 Certificate of patent or registration of utility model

Ref document number: 6538980

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350