五分钟带你玩转Elasticsearch(九)生产环境ELK监控spring boot方案

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
简介: 五分钟带你玩转Elasticsearch(九)生产环境ELK监控spring boot方案


elasticsearch,kibana,logstash搭建见上文

1.配置spring boot项目

pom文件

        <!-- logback 推送日志文件到logstash -->
        <dependency>
            <groupId>net.logstash.logback</groupId>
            <artifactId>logstash-logback-encoder</artifactId>
            <version>6.5</version>
        </dependency>

logstash.xml文件

<!--logstash配置-->
    <appender name="LOGSTASH" class="net.logstash.logback.appender.LogstashTcpSocketAppender">
        <destination>192.168.xx.xx:5000</destination>
        <!-- 日志输出编码 -->
        <encoder charset="UTF-8" class="net.logstash.logback.encoder.LoggingEventCompositeJsonEncoder">
            <providers>
                <timestamp>
                    <timeZone>UTC</timeZone>
                </timestamp>
                <pattern>
                    <pattern>
                        {
                        "logLevel": "%level",
                        "serviceName": "${springAppName:-}",
                        "pid": "${PID:-}",
                        "thread": "%thread",
                        "class": "%logger{40}",
                        "rest": "%message"
                        }
                    </pattern>
                </pattern>
            </providers>
        </encoder>
        <!--<encoder charset="UTF-8" class="net.logstash.logback.encoder.LogstashEncoder"/>-->
    </appender>

新增以上代码

注意:

192.168.xx.xx:5000   中ip为logstash服务器的ip,端口号是向logstash发送请求的端口(需要与下文logstash监控配置相同),随便指定,且端口不能被占用,并开启防火墙

    <root level="info">
        <appender-ref ref="CONSOLE" />
        <appender-ref ref="INFO_FILE" />
        <appender-ref ref="LOGSTASH"/>
    </root>

注意:

<appender-ref ref="LOGSTASH"/> 一定要配置 否则无法输出。

注:指定指定logstash.xml需要配置 不多说

image.png

2.配置logstash

在/logstash/bin中新建log_to_es.conf 新增配置

input{
        tcp {
          mode => "server"
        host => "0.0.0.0"
                port => 5000  监控spring boot发来的请求 与spring boot中端口号相同 且不能有其他端口占用
                codec => json_lines
        }
}
output{
        elasticsearch{
                hosts=>["192.168.xx.xx:9200"] es地址 
                index => "index-%{+YYYY.MM.dd}"   索引名称
                }
        stdout{codec => rubydebug}
}

修改/logstash/config下的logstash.yml  如果

http.host: "192.168.49.14"

3.查看结果

访问kibana 按照图中点击 查看索引是否多出来监控索引即可判断是否成功

image.png

相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
相关文章
|
1月前
|
存储 搜索推荐 Java
|
2月前
|
存储 监控 搜索推荐
在生产环境中部署Elasticsearch:最佳实践和故障排除技巧——安装篇(一)
在生产环境中部署Elasticsearch:最佳实践和故障排除技巧——安装篇(一)
|
2月前
|
Java
【极问系列】springBoot集成elasticsearch出现Unable to parse response body for Response
【极问系列】springBoot集成elasticsearch出现Unable to parse response body for Response
|
28天前
|
Prometheus 监控 Cloud Native
Spring Boot 应用可视化监控
Spring Boot 应用可视化监控
17 0
|
28天前
|
Java 测试技术 Maven
SpringBoot集成Elasticsearch
SpringBoot集成Elasticsearch
24 0
|
1月前
|
消息中间件 Java 关系型数据库
【二十】springboot整合ElasticSearch实战(万字篇)
【二十】springboot整合ElasticSearch实战(万字篇)
212 47
|
1月前
|
监控 druid Java
Spring Boot3整合Druid(监控功能)
Spring Boot3整合Druid(监控功能)
57 1
|
2月前
|
监控 Java
HeartBeat监控springboot服务状态
HeartBeat监控springboot服务状态
|
2月前
|
存储 监控 关系型数据库
ELK架构监控MySQL慢日志
ELK架构监控MySQL慢日志
|
2月前
|
Java Windows
【极光系列】springBoot集成elasticsearch
【极光系列】springBoot集成elasticsearch