ホームページ  >  記事  >  Java  >  Spring Boot は ELK と統合してログ分析と監視を実装します

Spring Boot は ELK と統合してログ分析と監視を実装します

WBOY
WBOYオリジナル
2023-06-22 14:33:101514ブラウズ

インターネット技術やビッグデータ技術の継続的な発展に伴い、アプリケーションシステムはますます複雑になり、同時にログ管理も重要なテーマとなっています。従来のログ ファイルの手動表示では、システム管理者のニーズを満たすことができなくなりました。システム ログをより適切に管理するための効率的なソリューションは、ELK テクノロジ スタックを使用することです。

ELK テクノロジー スタックは、Elasticsearch、Logstash、Kibana を含むオープン ソース ソフトウェアのセットです。 Elasticsearch は、大規模なデータ セットをほぼリアルタイムで保存、検索、分析できる分散型 RESTful オープン ソース検索エンジンです。Logstash は、複数のソースからデータを収集して分析できるオープン ソースのサーバー側データ処理パイプラインです。 . 変換と転送; Kibana は、Elasticsearch インデックス内のデータをインタラクティブに表示し、検索、分析、インタラクティブな操作を実行できるオープンソースのデータ視覚化プラットフォームです。

この記事では、アプリケーション システムのログ管理の問題に向けて、Spring Boot と ELK の統合を通じてログ分析と監視を実装する方法を紹介します。

1. Spring Boot ログ コレクション

Spring Boot は、ますます多くの開発者によって使用されている高速開発フレームワークです。 Spring Boot の実装では、ログの出力がデバッグおよびエラーのトラブルシューティング ツールとしてよく使用されます。 Spring Boot はデフォルトで logback をロギング フレームワークとして統合しており、構成ファイルを通じて均一に管理できます。

サンプル コード:

@Slf4j
@RestController
public class HelloController {

    @RequestMapping("/hello")
    public String hello() {
        log.info("hello world");
        return "Hello world";
    }
}

上記のサンプル コードでは、@Slf4j アノテーションを付けてログ オブジェクトを定義し、メソッド内でログを出力します。実際の開発プロセスでは、Spring Boot 構成ファイルでログ レベル、出力場所、ファイル名、その他の情報を定義できます。

2. ELK の統合

Spring Boot のログ収集を理解した後、次に ELK 統合を実装する方法を検討します。

  1. Elasticsearch のインストールと構成

Elasticsearch は ELK テクノロジー スタックのコア コンポーネントであり、次のステップに進む前にインストールして構成する必要があります。

公式 Web サイトのダウンロード アドレス: https://www.elastic.co/cn/downloads/elasticsearch

インストールが完了したら、http: //localhost:9200 動作ステータス。

  1. Logstash のインストールと構成

Logstash はログの収集、集約、送信に使用されるコンポーネントであり、Elasticsearch と併用する必要があります。 Logstash も最初にインストールして構成する必要があります。

公式 Web サイトのダウンロード アドレス: https://www.elastic.co/cn/downloads/logstash

Logstash で入力、フィルター、出力を構成します。入力は Spring Boot ログから取得されます。情報、フィルターはデータ処理に使用され、出力はElasticsearchに出力されます。

サンプル構成ファイル:

input {
  tcp {
    port => 9500
    codec => "json_lines"
  }
}

filter {
  if [type] == "springboot" {
    mutate {
      add_field => {
        "ip" => "%{host}"
      }
    }
  }
}

output {
  elasticsearch {
    hosts => ["http://localhost:9200"]
    index => "springboot-%{+YYYY.MM.dd}"
    document_id => "%{fingerprint}"
  }
}

構成ファイルでは、ポート 9500 でログ情報をリッスンし、springboot から入力されたログを処理し、それらを springboot- という名前のファイルに出力するように Logstash を指定します。 yyyy .mm.dd 形式のインデックス内。

  1. Kibana のインストールと構成

Kibana は、Elasticsearch でデータを表示するために使用されるオープンソースのデータ視覚化プラットフォームです。最初に Kibana をインストールして構成する必要もあります。

公式 Web サイトのダウンロード アドレス: https://www.elastic.co/cn/downloads/kibana

Kibana では、データ視覚化チャートの作成、検索、フィルター、ダッシュボードの使用などができます。 . 収集された Spring Boot アプリケーション ログを分析および監視するメソッド。

3. ログ分析と監視

ELK テクノロジー スタックのサポートにより、Spring Boot アプリケーションのログ分析と監視を迅速かつ効率的に実装できます。 Kibana のダッシュボードを通じて、アプリケーション システムの健全性や異常をリアルタイムに表示し、データ視覚化チャートを使用してシステムの実行状況をより直感的に理解できます。

同時に、Kibana のデータに基づいてより詳細な分析や調査を行うこともでき、大規模なクラスターや多次元のログ データをより効率的に処理および分析できます。これは、従来の手動によるログ ファイルの表示とは比べものになりません。

結論

この記事では、Spring Boot と ELK の統合によるログ分析と監視の実装方法について詳しく紹介します。そのうち、Spring Boot はログ情報の収集、Logstash はデータ処理と送信、 Elasticsearch はデータの保存と検索を実行し、Kibana はデータの視覚化と対話型操作を提供します。

エンタープライズ アプリケーション開発者およびシステム管理者にとって、アプリケーション ログは非常に重要な監視および分析のオブジェクトです。 ELK テクノロジー スタックは、効率的で柔軟かつスケーラブルなソリューションを提供し、アプリケーション システムのログ管理をよりシンプル、より効率的、より視覚的にします。

以上がSpring Boot は ELK と統合してログ分析と監視を実装しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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