Logstash-はじめに
Logstashは、ログまたはイベントを収集、処理、および生成するためのフィルター/パイプパターンに基づくツールです。さまざまなソースからのログとイベントを一元化してリアルタイムで分析するのに役立ちます。
Logstashは、JVMで実行されるJRubyプログラミング言語で記述されているため、さまざまなプラットフォームでLogstashを実行できます。ほぼすべてのタイプのソースから、ログ、パケット、イベント、トランザクション、タイムスタンプデータなどのさまざまなタイプのデータを収集します。データソースには、ソーシャルデータ、Eコマース、ニュース記事、CRM、ゲームデータ、Webトレンド、財務データ、モノのインターネット、モバイルデバイスなどがあります。
Logstashの一般的な機能
Logstashの一般的な機能は次のとおりです-
Logstashは、さまざまなソースからデータを収集し、複数の宛先に送信できます。
Logstashは、Apacheログ、Windowsイベントログ、Data over Network Protocols、標準入力からのデータなど、あらゆる種類のログデータを処理できます。
Logstashは、httpリクエストとレスポンスデータも処理できます。
Logstashにはさまざまなフィルターが用意されており、ユーザーはデータを解析および変換することで、データの意味をさらに見つけることができます。
Logstashは、モノのインターネットでセンサーデータを処理するためにも使用できます。
Logstashはオープンソースであり、Apacheライセンスバージョン2.0で利用できます。
Logstashの重要な概念
Logstashの重要な概念は次のとおりです-
イベントオブジェクト
これはLogstashのメインオブジェクトであり、Logstashパイプラインのデータフローをカプセル化します。Logstashはこのオブジェクトを使用して、入力データを格納し、フィルター段階で作成されたフィールドを追加します。
Logstashは、イベントを操作するためのイベントAPIを開発者に提供します。このチュートリアルでは、このイベントは、ログデータイベント、ログイベント、ログデータ、入力ログデータ、出力ログデータなどのさまざまな名前で参照されます。
パイプライン
これは、入力から出力までのLogstashのデータフローステージで構成されます。入力データはパイプラインに入力され、イベントの形式で処理されます。次に、ユーザーまたはエンドシステムの望ましい形式で出力先に送信します。
入力
これはLogstashパイプラインの最初の段階であり、Logstash内のデータを取得してさらに処理するために使用されます。Logstashは、さまざまなプラットフォームからデータを取得するためのさまざまなプラグインを提供しています。最も一般的に使用されるプラグインには、ファイル、Syslog、Redis、Beatsがあります。
フィルタ
これは、イベントの実際の処理が行われるLogstashの中間段階です。開発者は、Logstashによって事前定義された正規表現パターンを使用して、イベントのフィールドと受け入れられた入力イベントの基準を区別するためのシーケンスを作成できます。
Logstashは、開発者がイベントを解析して望ましい構造に変換するのに役立つさまざまなプラグインを提供します。最も一般的に使用されるフィルタープラグインには、Grok、Mutate、Drop、Clone、Geoipなどがあります。
出力
これはLogstashパイプラインの最後の段階であり、出力イベントを宛先システムに必要な構造にフォーマットできます。最後に、プラグインを使用して、処理が完了した後、出力イベントを宛先に送信します。最も一般的に使用されるプラグインには、Elasticsearch、File、Graphite、Statsdなどがあります。
Logstashの利点
以下のポイントは、Logstashのさまざまな利点を説明しています。
Logstashは、入力イベントのさまざまなフィールドを識別および解析するための正規表現パターンシーケンスを提供します。
Logstashは、ログデータを抽出するためのさまざまなWebサーバーとデータソースをサポートしています。
Logstashは、ログデータを解析してユーザーが希望する形式に変換するための複数のプラグインを提供します。
Logstashは一元化されているため、さまざまなサーバーからのデータの処理と収集が簡単になります。
Logstashは、ログイベントの宛先ソースとして、多くのデータベース、ネットワークプロトコル、およびその他のサービスをサポートしています。
LogstashはHTTPプロトコルを使用します。これにより、ユーザーはロックステップでLogstashをアップグレードしなくてもElasticsearchのバージョンをアップグレードできます。
Logstashのデメリット
以下のポイントは、Logstashのさまざまな欠点を説明しています。
Logstashはhttpを使用しますが、これはログデータの処理に悪影響を及ぼします。
Logstashの操作は、入力ログデータの十分な理解と分析が必要なため、少し複雑になる場合があります。
フィルタプラグインは一般的ではないため、解析のエラーを回避するために、ユーザーはパターンの正しいシーケンスを見つける必要がある場合があります。
次の章では、ELKスタックとは何か、そしてそれがLogstashにどのように役立つかを理解します。