SpringBoot統合ELK詳細チュートリアル

斜めの風と霧雨が突然家のように感じます

最新のものは本当に無料です。今回は自分で整理して次のステップに進んでいただきありがとうございます。

ELKは古いトピックですが、組み立てたばかりなので、どのように使いやすいと言っても、写真と手順があります

ELKの紹介

ELKはElasticsearch + Logstash + Kibanaの略語です

  1. Elasticsearch:これは、全文検索、構造化検索、および分析に使用できる分散型の検索および分析エンジンであり、3つを組み合わせることができます。ElasticsearchはLuceneに基づいており、現在最も広く使用されているオープンソース検索エンジンの1つです。
  2. Logstash:簡単に言えば、リアルタイムのデータ送信機能を備えたパイプラインです。パイプラインの入力端から出力端にデータ情報を送信する役割を果たします。同時に、このパイプラインを使用すると、次のことができます。 Logstashは、ニーズに応じて中央にフィルターを配置し、さまざまなアプリケーションシナリオに対応する多くの強力なフィルターを提供します。
  3. Kibana:Elasticsearchで使用するように設計されたオープンソースの分析および視覚化プラットフォームです。kibanaを使用すると、Elasticsearchインデックスに保存されているデータを検索、表示、操作できます。さまざまなアイコン、テーブル、マップなどを使用して、kibanaで高度なデータ分析と視覚化を簡単に表示できます。

ELKによって実装されるログ収集のコアは、logstashを介した入力、内部ソート、出力を介したElasticsearchへの出力を通じて、アプリケーションシステムのログを収集することです。実際には、インデックスが確立され、kibanaがESインデックスを実行するための視覚化プラットフォーム。プラットフォームに出力し、グラフの形式で表示します。

以下は、詳細な統合のためのSpringBootに基づいています

JDK8

Elasticsear+Kibana搭建

Elasticsearch

インストールパッケージをダウンロードして解凍します

cdelasticsearch-7.2.0

開始:bin / elasticsearch

正常な訪問を開始しますhttp:// localhost:9200 /結果は次のとおりです
ここに画像の説明を挿入

Kibana

インストールパッケージをダウンロードして解凍し、ディレクトリに入ります

構成ファイルを編集します:vim config / kibana.yml

#端口
server.port: 5601
#服务Ip
server.host: "127.0.0.1"
#服务名
server.name: "kibana"
#ES地址
elasticsearch.hosts: ["http://127.0.0.1:9200"]

wq!保存して終了

​ 启动Kibana:kibana-7.2.0-linux-x86_64/bin/kibana

起動に成功した後にアクセス:http:// localhost:5601 /

プロジェクトで印刷ログを使用した後、kibanaで確認できます。次のように、インデックスを設定する必要があります

管理-インデックスモード-logstashで設定されたインデックス名を見つけます。次のステップで、設定が成功すると、大きなボードに表示されます。
ここに画像の説明を挿入
ここに画像の説明を挿入

このとき、KibanaとElasticsearchがセットアップされます

logstash

ダウンロード、解凍、CSDNダウンロードに直接アクセスして見つけました。困っている友達はそれを見つけることができます。本当に面倒な場合は、私を見つけることができます。

configディレクトリにlogstash-test.confファイルを作成し、次のように構成を追加します

input{
        tcp {
                mode => "server"
                host => "0.0.0.0" #我这里是本地
                port => 9061 #开放这个端口进行采集
                codec => json_lines # 编解码器 有的版本需要肚子安装
        }
}
output{
        elasticsearch{ #es地址
                hosts=>["127.0.0.1:9200"]
                # 在es里产生的index的名称
                index => "laoxiang-logstash"
                }
        stdout{codec => rubydebug}
}

保存して終了します

起動コマンドはbinディレクトリにあります:./ logstash-f…/ config / logstash-test.conf

結果を図に示します。
ここに画像の説明を挿入
これにより、logstashがesに接続され、kibanaが視覚化されていることがわかります。

SpringBoot統合logstash

Mavenを紹介します

<dependency>
  <groupId>net.logstash.logback</groupId>
  <artifactId>logstash-logback-encoder</artifactId>
  <version>6.6</version>
</dependency>

logbackxmlを構成します

<appender name="LOGSTASH" class="net.logstash.logback.appender.LogstashTcpSocketAppender">
		<destination>127.0.0.1:9061</destination>
		<encoder charset="UTF-8" class="net.logstash.logback.encoder.LogstashEncoder"/>
	</appender>

次に、ルートレベルで設定します

<appender-ref ref="LOGSTASH"/>

起動後にAPIテストを作成する

		@GetMapping("/t2")
    public Object t2(){
        UserDto userDto = new UserDto();
        userDto.setAge(RandomUtil.randomInt());
        userDto.setName(RandomUtil.randomString(5));
        log.info(JSON.toJSONString(userDto));
        return userDto;
    }

logstashのコンソール出力は次のとおりです
ここに画像の説明を挿入

それからキバナに行って見てくださいね?

ここに画像の説明を挿入
さて、閉じて、ありがとう

前世紀の誰かのように、私は覚えています

参照:[https://www.cnblogs.com/wuzhenzhao/p/12911579.html](

おすすめ

転載: blog.csdn.net/Goligory/article/details/114264514