当前位置: 首页 > news >正文

日志(elk stack)基础语法学习,零基础学习

ELK Stack 是一组开源的日志管理工具,包括 Elasticsearch、Logstash 和 Kibana。Elasticsearch 用于存储和搜索日志数据,Logstash 用于收集和处理日志数据,而 Kibana 提供了一个强大的可视化界面来分析和监控这些数据。以下是 ELK Stack 的基础语法学习资料。

1. 安装和配置

1.1 安装 Java

Elasticsearch 和 Logstash 都需要 Java 运行时环境(JRE)或 Java 开发工具包(JDK)。建议使用 OpenJDK 11 或更高版本。

  • 在 Ubuntu 上安装 OpenJDK 11

bash

sudo apt-get update
sudo apt-get install openjdk-11-jdk
  • 验证安装:

bash

java -version
1.2 安装 Elasticsearch
  • 下载并安装 Elasticsearch

bash

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
sudo sh -c 'echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" > /etc/apt/sources.list.d/elasticsearch.list'
sudo apt-get update && sudo apt-get install elasticsearch
  • 启动 Elasticsearch

bash

sudo systemctl start elasticsearch
sudo systemctl enable elasticsearch
  • 验证安装

bash

curl -X GET "localhost:9200/"
1.3 安装 Logstash
  • 下载并安装 Logstash

bash

sudo systemctl start logstash
sudo systemctl enable logstash
1.4 安装 Kibana
  • 下载并安装 Kibana

bash

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
sudo sh -c 'echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" > /etc/apt/sources.list.d/kibana.list'
sudo apt-get update && sudo apt-get install kibana
  • 启动 Kibana

bash

sudo systemctl start kibana
sudo systemctl enable kibana
  • 访问 Kibana 界面:打开浏览器,访问 http://<your_server_ip>:5601

2. 基本概念和配置

2.1 Elasticsearch
2.1.1 创建索引

bash

curl -X PUT "localhost:9200/my_index"
2.1.2 插入文档

bash

curl -X POST "localhost:9200/my_index/_doc/1" -H 'Content-Type: application/json' -d'
{"name": "John Doe","age": 30,"email": "john.doe@example.com"
}'
2.1.3 搜索文档

bash

curl -X GET "localhost:9200/my_index/_search?q=name:John"
2.1.4 删除索引

bash

curl -X DELETE "localhost:9200/my_index"
2.2 Logstash
2.2.1 配置文件示例

创建一个基本的 Logstash 配置文件 logstash.conf:

conf

input {file {path => "/path/to/your/logfile.log"start_position => "beginning"}
}filter {grok {match => { "message" => "%{COMBINEDAPACHELOG}" }}date {match => [ "timestamp", "dd/MMM/yyyy:HH:mm:ss Z" ]}
}output {elasticsearch {hosts => ["localhost:9200"]index => "apache_logs-%{+YYYY.MM.dd}"}stdout { codec => rubydebug }
}
2.2.2 启动 Logstash

bash

sudo /usr/share/logstash/bin/logstash -f /path/to/logstash.conf
2.3 Kibana
2.3.1 配置索引模式
  1. 打开 Kibana 界面。
  2. 导航到 Management -> Index Patterns
  3. 输入 apache_logs-* 并点击 Next step
  4. 选择时间字段 @timestamp 并点击 Create index pattern
2.3.2 查看数据

导航到 Discover 页面,你可以看到从 Logstash 收集的数据。

2.3.3 创建仪表板
  1. 导航到 Visualize 页面。
  2. 创建新的可视化图表(例如饼图、折线图等)。
  3. 将这些可视化图表添加到一个新的仪表板中。

3. 示例:完整的 ELK 流程

3.1 准备日志文件

假设你有一个 Apache 日志文件 /var/log/apache2/access.log,内容如下:

127.0.0.1 - - [20/Jun/2023:13:55:36 +0800] "GET / HTTP/1.1" 200 612 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"
127.0.0.1 - - [20/Jun/2023:13:55:37 +0800] "GET /about HTTP/1.1" 200 612 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"
3.2 创建 Logstash 配置文件

conf

# logstash-apache.conf
input {file {path => "/var/log/apache2/access.log"start_position => "beginning"}
}filter {grok {match => { "message" => "%{COMBINEDAPACHELOG}" }}date {match => [ "timestamp", "dd/MMM/yyyy:HH:mm:ss Z" ]}
}output {elasticsearch {hosts => ["localhost:9200"]index => "apache_logs-%{+YYYY.MM.dd}"}stdout { codec => rubydebug }
}
3.3 启动 Logstash

bash

sudo /usr/share/logstash/bin/logstash -f /path/to/logstash-apache.conf
3.4 在 Kibana 中查看数据
  1. 打开 Kibana 界面。
  2. 导航到 Management -> Index Patterns
  3. 输入 apache_logs-* 并点击 Next step
  4. 选择时间字段 @timestamp 并点击 Create index pattern
  5. 导航到 Discover 页面,查看解析后的日志数据。
  6. 导航到 Visualize 页面,创建图表并将它们添加到仪表板中。

通过以上步骤,你已经完成了从日志收集、处理到可视化的整个流程。希望这些内容能帮助你更好地理解和掌握 ELK Stack 的基础语法和功能!

相关文章:

日志(elk stack)基础语法学习,零基础学习

ELK Stack 是一组开源的日志管理工具&#xff0c;包括 Elasticsearch、Logstash 和 Kibana。Elasticsearch 用于存储和搜索日志数据&#xff0c;Logstash 用于收集和处理日志数据&#xff0c;而 Kibana 提供了一个强大的可视化界面来分析和监控这些数据。以下是 ELK Stack 的基…...

Mysql InnoDB B+Tree是什么?

“mysql中常用的数据库搜索引擎InnoDB,其索引通过BTree的方式进行构建。” 实在想不起来BTree是怎么一回事了。以点带线&#xff0c;将涉及到的数据结构一起复习一下。 文章目录 数据结构定义红黑树定义使命 BTree定义使命 BTree定义 InnoDB BTree 旋转与调整二叉排序树插入删…...

Java基础(二)

提示:这部分内容对逆向重要,需重点掌握。 1.常见数据类型 1.1 List系列 类似于Python中的列表 List是一个接口,接口下面有两个常见的类型(目的是可以存放动态的多个数据) ArrayList,连续的内存地址存储(内部自动扩容) -> Python列表的特点LinkedList,底层基于链表…...

【网络协议】【http】【https】TLS1.3

【网络协议】【http】【https】TLS1.3 TLS1.3它的签名算法和密钥交换算法&#xff0c;默认情况下是被固定了下来的&#xff0c;他的加密套件里面呢&#xff0c;只包含了对称加密算法和摘要算法 客户端和服务器第一次连接 仍然需要1RTT &#xff0c;不能0-RTT 第一次连接 1.客…...

K8S中Pod控制器之Job控制器

Job&#xff0c;主要用于负责批量处理(一次要处理指定数量任务)短暂的一次性(每个任务仅运行一次就结束)任务。 一次性任务&#xff1a;Job 用于运行那些只需要执行一次的任务&#xff0c;如数据分析、图像渲染或批量处理。 成功终止&#xff1a;Job 会跟踪其创建的 Pod 的成功…...

macOS安装Gradle环境

文章目录 说明安装JDK安装Gradle 说明 gradle8.5最高支持jdk21&#xff0c;如果使用jdk22建议使用gradle8.8以上版本 安装JDK mac系统安装最新&#xff08;截止2024.9.13&#xff09;Oracle JDK操作记录 安装Gradle 下载Gradle&#xff0c;解压将其存放到资源java/env目录…...

2024年美赛C题评委文章及O奖论文解读 | AI工具如何影响数学建模?从评委和O奖论文出发-O奖论文做对了什么?

模型假设仅仅是简单陈述吗&#xff1f;允许AI的使用是否降低了比赛难度&#xff1f;还在依赖机器学习的模型吗&#xff1f;处理题目的方法有哪些&#xff1f;O奖论文的优点在哪里&#xff1f; 本文调研了当年赛题的评委文章和O奖论文&#xff0c;这些问题都会在文章中一一解答…...

LDD3学习9--数据类型和定时器

这部分对应的是第七章和第十一章&#xff0c;因为内容也不是很多&#xff0c;就一起写了。里面的内容基本上就是一个个的点&#xff0c;所以也就一个个点简单总结一下。 1 数据类型 1.1 数据长度 不同操作系统类型长度可能不一样&#xff0c;看图的话最好用u8&#xff0c;u16&…...

一文夯实垃圾收集的理论基础

如何判断一个引用是否存活 引用计数法 给对象中添加一个引用计数器&#xff0c;每当有一个地方引用它&#xff0c;计数器就加 1&#xff1b;当引用失效&#xff0c;计数器就减 1&#xff1b;任何时候计数器为 0 的对象就是不可能再被使用的。 优点&#xff1a;可即刻回收垃圾&a…...

OpenWRT Conserver 共享串口服务实现

安装驱动 查看当前可在线安装的USB驱动 opkg update 查看安装的USB驱动 opkg list-installed *usb-serial* 查看所有的USB串口驱动 opkg list *usb-serial* 确认console线的芯片厂商 kmod-usb-serial-pl2303 - 5.15.167-1 - Kernel support for Prolific PL2303 USB-to…...

第12章:Python TDD完善货币加法运算(一)

写在前面 这本书是我们老板推荐过的&#xff0c;我在《价值心法》的推荐书单里也看到了它。用了一段时间 Cursor 软件后&#xff0c;我突然思考&#xff0c;对于测试开发工程师来说&#xff0c;什么才更有价值呢&#xff1f;如何让 AI 工具更好地辅助自己写代码&#xff0c;或许…...

Springboot项目Jackson支持多种接收多种时间格式

前言 在springboot项目中经常会使用Jackson框架,当前端给后端传输时间类型时,我们一般需要先配置好时间格式,否则后端无法接收。以下是一些配置方法 统一配置 spring:jackson:time-zone: GMT+8date-format: yyyy-MM-dd HH:mm:ss这种配置就是要求前端统一传输的格式是yyyy-…...

两台电脑互PING不通的解决办法

当两台电脑无法通过网络Ping通时&#xff0c;可以按照以下步骤进行排查和解决&#xff1a; 一. 检查网络连接 确保两台电脑连接到同一个局域网。 如果是通过网线连接&#xff0c;检查网线是否松动或损坏。 如果是无线连接&#xff0c;确保Wi-Fi信号正常。 二. 检查IP配置 确…...

No. 34 笔记 | Python知识架构与数据类型相关内容 | 实操

在今天的Python学习中&#xff0c;我对Python的知识架构有了更深入的理解&#xff0c;同时也对Python的数据类型及其操作有了全面的认识和实践。 一、Python知识架构理解 Python是一门功能强大且应用广泛的编程语言&#xff0c;其知识架构可以从多个层面来理解。 从整体结构上…...

【2024年华为OD机试】 (B卷,100分)- 字符串分割(Java JS PythonC/C++)

一、问题描述 题目解析 问题描述 给定一个非空字符串 s,要求将该字符串分割成若干子串,使得每个子串的 ASCII 码值之和均为“水仙花数”。具体要求如下: 若分割不成功,则返回 0;若分割成功且分割结果不唯一,则返回 -1;若分割成功且分割结果唯一,则返回分割后子串的数…...

Pix2Pix :用于图像到图像转换的条件生成对抗网络

1. 背景与问题 图像到图像的转换&#xff08;Image-to-Image Translation&#xff09;是计算机视觉中的一个重要任务&#xff0c;指的是在输入一张图像的情况下&#xff0c;生成一张风格、内容或其他条件不同但语义一致的图像。随着深度学习的发展&#xff0c;尤其是生成对抗网…...

基于VSCODE+GDB+GDBSERVER远程单步调试设备篇(可视化界面)

目录 说明 配置方法 1&#xff09;VSCODE必备插件 2&#xff09;配置launch.json文件&#xff0c;用于GDB调试 调试步骤 ​​​​​​目标板运行程序 1&#xff09;已启动程序&#xff0c;通过attach方式进入调试 2&#xff09;通过gdbserver启动时加载程序(程序路径根据实际情…...

CamemBERT:一款出色的法语语言模型

摘要 预训练语言模型在自然语言处理中已无处不在。尽管这些模型取得了成功&#xff0c;但大多数可用模型要么是在英语数据上训练的&#xff0c;要么是在多种语言数据拼接的基础上训练的。这使得这些模型在除英语以外的所有语言中的实际应用非常有限。本文探讨了为其他语言训练…...

0基础跟德姆(dom)一起学AI 自然语言处理18-解码器部分实现

1 解码器介绍 解码器部分: 由N个解码器层堆叠而成每个解码器层由三个子层连接结构组成第一个子层连接结构包括一个多头自注意力子层和规范化层以及一个残差连接第二个子层连接结构包括一个多头注意力子层和规范化层以及一个残差连接第三个子层连接结构包括一个前馈全连接子层…...

我的创作纪念日——我与CSDN一起走过的365天

目录 一、机缘&#xff1a;旅程的开始 二、收获&#xff1a;沿路的花朵 三、日常&#xff1a;不断前行中 四、成就&#xff1a;一点小确幸 五、憧憬&#xff1a;梦中的重点 一、机缘&#xff1a;旅程的开始 最开始开始写博客是在今年一二月份的时候&#xff0c;也就是上一…...

终极免费指南:3分钟获取百度文库文档的快速方法

终极免费指南&#xff1a;3分钟获取百度文库文档的快速方法 【免费下载链接】baidu-wenku fetch the document for free 项目地址: https://gitcode.com/gh_mirrors/ba/baidu-wenku 你是否经常在百度文库上找到宝贵的学习资料或工作文档&#xff0c;却被付费墙、广告弹窗…...

3步解决Zotero PDF Translate翻译失效的终极指南:快速恢复学术研究工具

3步解决Zotero PDF Translate翻译失效的终极指南&#xff1a;快速恢复学术研究工具 【免费下载链接】zotero-pdf-translate Translate PDF, EPub, webpage, metadata, annotations, notes to the target language. Support 20 translate services. 项目地址: https://gitcode…...

jarvisoj_level0栈溢出漏洞分析:从危险函数到后门利用的全过程指南

JarvisOJ Level0栈溢出漏洞实战&#xff1a;从危险函数识别到后门利用的深度解析 在二进制安全领域&#xff0c;栈溢出始终是最经典且最具教学价值的漏洞类型之一。今天我们将以JarvisOJ平台的Level0题目为蓝本&#xff0c;完整演示如何从零开始分析一个真实的栈溢出漏洞。不同…...

【FastAPI】Swagger UI 静态资源本地化部署:从CDN依赖到自给自足

1. 为什么需要本地化部署Swagger UI&#xff1f; 当你用FastAPI开发完一个接口服务&#xff0c;第一件事可能就是打开/docs页面测试接口。但有没有遇到过这种情况&#xff1a;公司内网服务器突然断网&#xff0c;Swagger页面变成空白&#xff1b;或是海外CDN加载缓慢&#xff…...

网络安全:4个热门有用的开源网络入侵检测系统

网络安全&#xff1a;4个热门有用的开源网络入侵检测系统 入侵检测系统可以分为两种类型&#xff1a;网络入侵检测系统&#xff08;Network IDS&#xff0c;NIDS&#xff09;和主机入侵检测系统&#xff08;Host IDS&#xff0c;HIDS&#xff09;。NIDS监测网络流量&#xff0…...

网盘直链下载助手完整教程:如何轻松获取八大网盘真实下载地址

网盘直链下载助手完整教程&#xff1a;如何轻松获取八大网盘真实下载地址 【免费下载链接】Online-disk-direct-link-download-assistant 一个基于 JavaScript 的网盘文件下载地址获取工具。基于【网盘直链下载助手】修改 &#xff0c;支持 百度网盘 / 阿里云盘 / 中国移动云盘…...

亲测有效!雪女-斗罗大陆-造相Z-Turbo生成角色细节展示:服装、发型、神态都很到位

亲测有效&#xff01;雪女-斗罗大陆-造相Z-Turbo生成角色细节展示&#xff1a;服装、发型、神态都很到位 作为一名长期关注AI绘画技术的创作者&#xff0c;我最近深度体验了"雪女-斗罗大陆-造相Z-Turbo"这款专为《斗罗大陆》风格角色设计的文生图模型。经过上百次生…...

股票和估值到底是什么:估值的本质:是共识,是信心,是集体的幻觉; 股票的本质,是一张所有权凭证

股票和估值到底是什么?用一个苹果的故事讲透最核心的本质 股票到底是什么?估值又是什么?为什么一个不赚钱的公司能值1000亿?" 股市里90%的骗局,本质上都是在"估值"这两个字上做文章。 一、股票:不是筹码,是"苹果树的所有权" 先讲股票的原始…...

SecGPT-14B效果展示:对Splunk SPL查询语句进行安全语义解释与优化建议

SecGPT-14B效果展示&#xff1a;对Splunk SPL查询语句进行安全语义解释与优化建议 1. 引言&#xff1a;当安全分析遇上智能助手 想象一下这个场景&#xff1a;作为一名安全分析师&#xff0c;你正面对海量的日志数据&#xff0c;需要快速编写Splunk SPL查询语句来追踪一次潜在…...

HJ169 灵异背包?

题目题解(36)讨论(22)排行 简单 通过率&#xff1a;43.17% 时间限制&#xff1a;1秒 空间限制&#xff1a;256M 知识点贪心 校招时部分企业笔试将禁止编程题跳出页面&#xff0c;为提前适应&#xff0c;练习时请使用在线自测&#xff0c;而非本地IDE。 描述 给定 nn 个正…...