ホームページ システムチュートリアル Linux Elasticsearchの基本フレンドLogstashについて詳しく解説

Elasticsearchの基本フレンドLogstashについて詳しく解説

Jul 18, 2024 am 06:56 AM
linux Linuxチュートリアル レッドハット Linuxシステム Linuxコマンド Linux 認定 レッドハットリナックス Linuxビデオ

Elasticsearchの基本フレンドLogstashについて詳しく解説

Logstash は、データ送信、フォーマット処理、フォーマットされた出力を実現できる強力なデータ処理ツールであり、ログ処理によく使用される強力なプラグイン機能を備えています。

1. 原則

入力

データはファイル、ストレージ、データベースから抽出できます。入力には 2 つのオプションがあります。1 つはフィルタリングとプルーニングのためにデータを渡すことです。もう 1 つは Output

に直接与えられます

フィルター

データを動的に変換および解析する機能。データ情報はカスタマイズされた方法でフィルタリングおよびプルーニングできます

出力

多数の出力オプションを提供することで、必要な場所にデータを送信でき、多数のダウンストリームのユースケースを柔軟に実現できます。

Elasticsearchの基本フレンドLogstashについて詳しく解説

2. インストールと使用
1.インストール
リーリー
2.Logstash設定ファイル
リーリー
3.Logstash の JVM 設定ファイル

Logstash は Java に基づいて開発されたプログラムであり、JVM で実行する必要があります。jvm.options を設定することで JVM に設定できます。たとえば、メモリの最大値と最小値、ガベージ クリーニングのメカニズムなどです。ここでは、最もよく使用されるもののうち 2 つだけを紹介します。

JVM のメモリ割り当ては大きすぎても小さすぎてもいけません。大きすぎるとオペレーティング システムの速度が低下します。始めるには小さすぎます。

リーリー
4. 最も単純なログ収集構成

テスト用に httpd をインストールし、Apache の accless.log ログ ファイルを収集するように Logstash を構成します

リーリー リーリー
5. 設定ファイルをテストします

Logstash は組み込みコマンドですが、環境変数には含まれていないため、このコマンドを使用するには絶対パスのみを使用できます。

リーリー
6. logstash を開始します

現在のセッションで logstash を実行した後、このセッションを一時的にセッション 1 として閉じず、新しいウィンドウをセッション 2 として開きます。 リーリー

開始後、セッション2でcurlコマンドを使用してテストします

リーリー

その後、前のセッション 1 に戻ると出力情報が表示されます

リーリー

この時点で、最も単純な Logstash 構成が完了しました。ここでは、収集された直接出力がフィルタリングやプルーニングなしで収集されます。

3. Elasticsearch と Logstash

上面的配置时Logsatsh从日志文件中抽取数据,然后输出至屏幕。那么在生产中往往是将抽取的数据过滤后输出到Elasticsearch中。下面讲解Elasticsearch结合Logstash

Logstash抽取httpd的access.log文件,然后经过过滤(结构化)之后输出给Elasticsearch Cluster,在使用Head插件就可以看到抽取到的数据。(Elasticsearch Cluster与Head插件搭建请查看前两篇文章)

Elasticsearchの基本フレンドLogstashについて詳しく解説

配置Logstash

    vim /etc/logstash/conf.d/test.conf
    input {
    file {
        path => ['/var/log/httpd/access_log']
        start_position => "beginning"
    }
    }
    filter {
    grok {
        match => {
            "message" => "%{COMBINEDAPACHELOG}"
        }

        remove_field => "message"   
    }
    }
    output {
    elasticsearch {
        hosts => ["http://172.18.68.11:9200","http://172.18.68.12:9200","http://172.18.68.13:9200"]
        index => "logstash-%{+YYYY.MM.dd}"
        action => "index"
        document_type => "apache_logs"
    }
    }

启动Logstash

     /usr/share/logstash/bin/logstash -t -f /etc/logstash/conf.d/test.conf       # 测试配置文件
    Configuration OK
     /usr/share/logstash/bin/logstash  -f /etc/logstash/conf.d/test.conf         # 启动Logstash

测试

每个执行10次172.18.68.14,位Logstash的地址

    curl 127.0.0.1
    curl 172.18.68.14

验证数据

使用浏览器访问172.18.68.11:9100(Elastisearch 安装Head地址,前面文章有讲)

选择今天的日期,就能看到一天内访问的所有数据。

Elasticsearchの基本フレンドLogstashについて詳しく解説

四、监控其他

监控Nginx日志

仅仅列了filter配置块,input与output参考上一个配置

    filter {
        grok {
                match => {
                        "message" => "%{HTTPD_COMBINEDLOG} \"%{DATA:realclient}\""
                }
                remove_field => "message"
        }
        date {
                match => ["timestamp","dd/MMM/YYYY:H:m:s Z"]
                remove_field => "timestamp"
        }
    }

监控Tomcat

仅仅列了filter配置块,input与output参考上一个配置

    filter {
        grok {
                match => {
                        "message" => "%{HTTPD_COMMONLOG}"
                }
                remove_field => "message"
        }
        date {
                match => ["timestamp","dd/MMM/YYYY:H:m:s Z"]
                remove_field => "timestamp"
        }
    } 
五、Filebeat

现在已经搭建成在节点安装Logstash并发送到Elasticsearch中去,但是Logstash是基于Java开发需要运行在JVM中,所以是一个重量级采集工具,仅仅对于一个日志采集节点来说使用Logstash太过重量级,那么就可以使用一个轻量级日志收集工具Filebeat来收集日志信息,Filebeat同一交给Logstash进行过滤后再Elasticsearch。这些在接下来的文章在进行讲解,先放一张架构图吧。

Elasticsearchの基本フレンドLogstashについて詳しく解説

以上がElasticsearchの基本フレンドLogstashについて詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

VSCODEオフラインテクノロジー交換活動に参加した経験 VSCODEオフラインテクノロジー交換活動に参加した経験 May 29, 2025 pm 10:00 PM

私はVSCodeオフラインテクノロジー交換活動に参加した経験があります。私の主な利益には、プラグイン開発の共有、実用的なデモンストレーション、他の開発者とのコミュニケーションが含まれます。 1.プラグイン開発の共有:VSCODEのプラグインAPIを使用して、自動フォーマットや静的分析プラグインなどの開発効率を改善する方法を学びました。 2。実践的なデモンストレーション:リモート開発にVSCodeを使用する方法を学び、その柔軟性とスケーラビリティを実現しました。 3。開発者との通信:起動時にロードされたプラグインの数を減らしたり、プラグインロード順序を管理するなど、VSCODEスタートアップ速度を最適化するスキルを取得しました。要するに、このイベントは私に大きな恩恵をもたらし、VSCODEに興味がある人に参加することを強くお勧めします。

Linuxのユーザーリソースを制限する方法は? ulimitを構成する方法は? Linuxのユーザーリソースを制限する方法は? ulimitを構成する方法は? May 29, 2025 pm 11:09 PM

Linuxシステムは、リソースの過度の使用を防ぐために、ULIMITコマンドを介してユーザーリソースを制限します。 1.ulimitは、ファイル記述子(-n)、メモリサイズ(-v)、スレッドカウント(-u)などの数を制限できるビルトインシェルコマンドであり、ソフト制限(現在の有効値)とハードリミット(最大上限)に分割されます。 2。Ulimit-N2048などの一時的な変更には、Ulimitコマンドを直接使用しますが、現在のセッションでのみ有効です。 3.永続的な効果を得るには、/etc/security/limits.confを変更し、PAM構成ファイルを変更し、SessionRequiredPam_limits.soを追加する必要があります。 4. SystemDサービスは、ユニットファイルにLIMを設定する必要があります

LinuxのInformixとMySQLの比較 LinuxのInformixとMySQLの比較 May 29, 2025 pm 11:21 PM

InformixとMySQLはどちらも人気のあるリレーショナルデータベース管理システムです。どちらもLinux環境でうまく機能し、広く使用されています。以下は、Linuxプラットフォーム上の2つの比較と分析です。Informixのインストールと構成:LinuxにInformixを展開するには、対応するインストールファイルをダウンロードし、公式ドキュメントに従ってインストールと構成プロセスを完了する必要があります。 MySQL:MySQLのインストールプロセスは比較的簡単で、システムパッケージ管理ツール(APTやYumなど)を介して簡単にインストールできます。また、参照用のネットワークには多数のチュートリアルとコミュニティサポートがあります。パフォーマンスInformix:Informixには優れたパフォーマンスがあります

Debianの下にFileBeatとElasticSearchを統合する方法 Debianの下にFileBeatとElasticSearchを統合する方法 May 28, 2025 pm 05:09 PM

Debianオペレーティングシステムでは、FileBeatとElasticSearchの統合により、ログデータの収集、送信、およびストレージを簡素化できます。以下は特定の実装手順です。ステップ1:Elasticsearchを展開する最初のタスクは、DebianシステムにElasticsearchのインストールを完了することです。 Elastic Softwareパッケージの対応するバージョンをElastic公式Webサイトからダウンロードし、公式ガイダンスに従ってインストールプロセスを完了することができます。 elasticsearchwgethttps://artifacts.elastic.co/downloads/elasticseをダウンロードしてインストールします

vscodeプラグインの更新後のエディタークラッシュの理由とソリューション vscodeプラグインの更新後のエディタークラッシュの理由とソリューション May 29, 2025 pm 10:03 PM

VSCODEプラグインが更新された後にエディターがクラッシュする理由は、VSCODEまたは他のプラグインの既存のバージョンを備えたプラグインに互換性のある問題があるためです。ソリューションには以下が含まれます。1。プラグインを無効にして、問題を1つずつトラブルシューティングします。 2。問題プラグインを以前のバージョンにダウングレードします。 3.代替プラグインを見つけます。 4. VSCODEとプラグインを更新し、十分なテストを実施します。 5.データの損失を防ぐために、自動バックアップ機能を設定します。

DebianにDockerの自動展開を実装する方法 DebianにDockerの自動展開を実装する方法 May 28, 2025 pm 04:33 PM

DebianシステムにDockerの自動展開を実装することは、さまざまな方法で実行できます。詳細な手順ガイドは次のとおりです。最初にdockerをインストールして、Debianシステムが最新のままであることを確認してください:sudoaptupdatesudoaptupgrade-y次に、必要なソフトウェアパッケージをインストールして、httpsを介してリポジトリへの適切なアクセスをサポートします:sudoaptinstallapt-transport-transport-httpsca-cartifatecurlsoft-cortecursoft-properties-common-common-compg inphy com

MySQLを中国のインターフェイスに調整する方法は? MySQLの中国語環境を簡単に設定できます MySQLを中国のインターフェイスに調整する方法は? MySQLの中国語環境を簡単に設定できます Jun 04, 2025 pm 06:36 PM

MySQLを中国のインターフェイスにチューニングするために、MySQLWorkBenchまたはコマンドラインツールを使用して実装できます。 1)mysqlworkbenchで、「設定」を開き、「外観」タブを選択し、「言語」ドロップダウンメニューで「中国語(簡素化)」を選択して再起動します。 2)コマンドラインツールを使用する場合、LinuxまたはMacOSで「exportlang = zh_cn.utf-8」を使用するなど、オペレーティングシステムのロケール変数を設定し、MySQLクライアントを実行します。

Debian Notepadを他の編集者と比較する方法 Debian Notepadを他の編集者と比較する方法 May 29, 2025 pm 10:42 PM

Debian Text Editorは、主に毎日の単純なテキスト編集作業に使用される基本的なテキスト編集ツールです。他の主流の編集者と比較して、パフォーマンスとユーザーエクスペリエンスに特定の制限があります。 Debian Text Editorsと比較した他のいくつかの編集者の利点と機能は次のとおりです。メモ帳の読み込み速度速度:Notepadは、わずか8秒で1GBサイズのSQLファイルなどの大きなファイルをすばやくロードできます。コード着色機能:約80のプログラミング言語でコード着色をサポートしているため、コーディング効率の向上に役立ちます。バッチ操作機能:列編集モードがあります。これは、財務検証や操作、メンテナンスログなどのバッチ処理タスクを実行するのに便利です。拡張プラグインブランチ

See all articles