IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发测试 -> 测试开发技能实践-搭建ELK日志管理系统 -> 正文阅读

[开发测试]测试开发技能实践-搭建ELK日志管理系统

每天进步一点点,关注我们哦,每天分享测试技术文章
本文章出自【码同学软件测试】
码同学公众号:自动化软件测试
码同学抖音号:小码哥聊软件测试

前言

随着测试人员代码能力的不断增强,现在越来越多的测试工程师转向了测试开发岗位,用代码来解决测试中的效率问题。可以看到几乎现在所有的测试部门都在搞平台化,接口测试平台、性能测试平台等等。

当你开发一个测试平台的时候,日志是其中很重要的一个组成部分,通常来说,日志都是写到日志文件中的。但是很多时候,当项目出现一些问题时,你就需要去日志中查找一些关键信息,这个时候,你可能面临这些问题:

不确定日志是哪一天记录的,找不到对应的日志文件

日志文件内容过多,无法快速搜索出指定的日志信息

在集群环境下,不确定日志记录在哪一台服务器上

因此,传统形式的日志存储和搜索就会面临越来越多的效率问题。可不可以有一套日志管理系统,集成了日志收集、存储、展示功能,来解决目前存在的日志查看效率低下、缺少可视化界面等问题,ELK就是在这种场景下诞生了。

01 ELK简介

ELK:ElasticSerach、Logstash、Kibana三款产品名称的首字母集合,用于日志的搜集和搜索。简单地理解为我们可以把服务端的日志(如nginx、tomcat等)直接web化展示查看,十分方便。

以下就以Tomcat为例,将tomcat的catalina.out中的日志展示在ELK平台中。

1.1 ELK部署架构
在这里插入图片描述

1.2 ELK工作流程

  1. 业务请求到达tomcat,并记录日志到catalina.out文件中;
  2. FileBeat搜集catalina.out中新增的日志,通过LogStash的5044端口上传日志;
  3. LogStash将日志信息通过本机的9200端口传入到ElasticSerach;
  4. Kibana通过9200端口访问ElasticSerach;
  5. 用户通过浏览器访问Kibana,进行日志搜索

1.3下载ELK全套安装包

官网下载:https://www.elastic.co/cn/start

02 ELK环境搭建

2.1 java环境配置

因为ElasticSerach运行需要java环境支持,所以首先要配置java环境,比较简单,具体方法可以自行百度。

2.2 修改系统最大链接数

1、修改Linux系统允许创建最大的连接数

vi /etc/security/limits.conf

在最后一行添加:

  • soft nofile 1000000

  • hard nofile 1000000

2、保存文件,退出当前会话,重新登录系统。

3、执行ulimit -n查看是否生效,如果显示1000000则代表修改成功。

2.3 安装elasticsearch

1、将elasticsearch的安装包解压

2、因为elasticsearch不允许用root用户启动,所以先创建非root用户

创建es用户组:group add es
创建es用户:user add es -g es
修改elasticsearch目录为es用户:chown -R es:es elasticsearch-6.6.0

3、进入到elasticsearch的bin目录下,执行启动命令:

./elasticsearch -d

4、执行命令,检查es是否启动成功

curl http://localhost:9200

免费领取 码同学软件测试 课程笔记+超多学习资料+完整视频+最新面试题,可以转发文章 + 私信「码同学666」获取资料哦

有如下信息,代表启动成功
在这里插入图片描述

5、安装完毕后,切换回root用户

su root

2.4 安装logstash

1、解压logstash

2、配置logstash

logstash的config目录下,创建default.conf,配置好输入和输出信息,内容如下:

监听5044端口作为输入

input {

beats {

port => "5044"

client_inactivity_timeout => 36000

}

}

数据过滤
filter {}

输出配置为本机的9200端口,这是ElasticSerach服务的监听端口

output {

elasticsearch {

hosts => ["127.0.0.1:9200"]

}

}

3、在bin目录下启动logstash

nohup ./logstash -f …/config/default.conf &

2.5 安装Kibana

1、解压kibana

2、修改config目录下的kibana.yml

在这里插入图片描述

打开server.host的注释,修改ip为0.0.0.0

3、启动kibana

在kibana的bin目录下,执行命令启动

nohup ./kibana &

4、访问kibana

在浏览器中输入http://{ip}:5601,如果能看到kibana页面,代表部署成功

2.6 安装Filebeat

1、解压filebeat

2、修改配置文件filebeat.yml
在这里插入图片描述

enabled设置为true
paths下设置为监控的日志文件
在这里插入图片描述

hosts:logstash的部署ip和端口号

3、启动filebeat

nohup ./filebeat -e -c filebeat.yml &

03 使用kibana查看日志

1、浏览器打开http://{kibana部署ip}:5601

2、调用Tomcat中的web项目,产生业务日志

3、点击kibana中的"Discover",就可以看到es中保存的业务日志数据
在这里插入图片描述

笔者跟大家分享一个福利!扫码回复【csdn码哥群】入软件测试自学交流群,可免费听技术讲座+领学习资料+视频课免费看
在这里插入图片描述

作者:码同学软件测试
本文著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

  开发测试 最新文章
pytest系列——allure之生成测试报告(Wind
某大厂软件测试岗一面笔试题+二面问答题面试
iperf 学习笔记
关于Python中使用selenium八大定位方法
【软件测试】为什么提升不了?8年测试总结再
软件测试复习
PHP笔记-Smarty模板引擎的使用
C++Test使用入门
【Java】单元测试
Net core 3.x 获取客户端地址
上一篇文章      下一篇文章      查看所有文章
加:2022-02-26 12:01:59  更:2022-02-26 12:03:37 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/18 3:01:19-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码