私有部署ELK,搭建自己的日志中心(四)-- kibana展示es的数据

一、说在前面的话

前一篇已把elk的安装连带讲完,本文重在讲述如何在kibana展示es数据。

二、数据的展示

展示es数据库的客户端工具有很多,比如es head插件,但是一说到要查询日志,还是非kibana莫属了。

1、kibana.yml

bash 复制代码
# 服务端口
server.port: 5601
# 服务IP
server.host: "0.0.0.0"
# ES的内网Ip:192.168.8.29
elasticsearch.hosts: ["http://192.168.8.29:9200"]
# 汉化
i18n.locale: "zh-CN"

2、添加索引

索引模式,新增索引模式。


添加索引模式完成,可以看到其时间筛选字段名称是logdate,另外右上角可以将之删除。

时间字段是必选的,建议你使用日志打印的时间,因为采集时间并不和打印时间相等。

但是,如果你没能对日志内容进行解析成功,换句话说,在filebeat或者logstash未能得到logdate,那么你将查询不到任何日志。(因为Kibana查询的时候,时间是必填的查询条件)

此时,你就得选择采集时间@timestamp作为索引的时间字段。效果见下:

要想在Kibana展示es数据并不难,保证时间字段必须有值。

三、数据存储

1、elasticsearch.yml

日志中心在内部使用,关闭认证,方便使用。

bash 复制代码
# 集群名称
cluster.name: elasticsearch-cluster
network.host: 0.0.0.0
# 支持跨域访问
http.cors.enabled: true
http.cors.allow-origin: "*"
# 安全认证
xpack.security.enabled: false

2、定期清理数据

kibana的索引管理--》索引生命周期策略:

  • 创建策略

    数据治理的策略分为四种:

  • 热阶段

  • 温阶段

  • 冷阶段

  • 删除阶段

热阶段,此阶段为必需。默认即可。

温阶段:您仍在查询自己的索引,但其为只读。您可以将分片分配给效率较低的硬件。为了获取更快的搜索,您可以减少分片数目并强制合并段。
冷阶段:您查询自己索引的频率较低,因此您可以在效率较低的硬件上分配分片。因为您的查询较为缓慢,所以您可以减少副本分片数目。

因为日志中心搭建的es是单节点模式,所以,不开启温和冷阶段。

删除阶段

设置需要保存的天数,15天前的索引将被自动删除,从而控制其数据量。

另外,你可以根据需求创建快照,可以恢复删除的数据。(我这里也没有创建,因为研发环境下的日志数据其重要性较低)

3、其他事项

  • 单节点
bash 复制代码
    environment:
      - "discovery.type=single-node"
  • jvm配置
bash 复制代码
    environment:
      - "ES_JAVA_OPTS=-Xms1500m -Xmx1500m"

四、kibana之索引管理

你可以在kibana管理es的索引数据。

至此,我们的日志中心完成了一半,可以采集ecs虚拟机上的jvm日志。

下文,我们将介绍如何在k8s pod里采集jvm日志,以及大流量日志采集环境下,适当引入Kafka消息中间件。

相关推荐
shuair1 小时前
idea 2023.3.7常用插件
java·ide·intellij-idea
小安同学iter2 小时前
使用Maven将Web应用打包并部署到Tomcat服务器运行
java·tomcat·maven
Yvonne9782 小时前
创建三个节点
java·大数据
不会飞的小龙人3 小时前
Kafka消息服务之Java工具类
java·kafka·消息队列·mq
是小崔啊3 小时前
java网络编程02 - HTTP、HTTPS详解
java·网络·http
brevity_souls4 小时前
Spring Boot 内置工具类
java·spring boot
小钊(求职中)4 小时前
Java开发实习面试笔试题(含答案)
java·开发语言·spring boot·spring·面试·tomcat·maven
shix .4 小时前
什么是tomcat
java·tomcat
java技术小馆4 小时前
Deepseek整合SpringAI
java·spring cloud
天荒地老笑话么4 小时前
Mac安装配置Tomcat 8
java·macos·tomcat