首页 > 其他分享 >ELK日志处理部署笔记-2

ELK日志处理部署笔记-2

时间:2024-03-15 15:22:23浏览次数:23  
标签:ELK filebeat log 插件 笔记 input 日志 logstash

logstash概述

什么是logstash
-是一个数据采集、加工处理以及传输的工具
特点
-所有类型的数据集中处理
-不同模式和格式数据的正常化
-自定义日志格式的迅速扩展
-为自定义数据源轻松添加插件
为什么使用logstash
将日志转化为json使elasticasearch可读

下载

#logstash的配置文件需要在执行文件目录中,但是redhat下载可能会分散文件,所以需要手动将连接放到目录下
ln -s /etc/logstash /usr/share/logstash/config

#查看插件
/usr/share/logstash/bin/logstash-plugin list

#开始
/usr/share/logstash/bin/logstash

配置模块

配置文件位于
/etc/logstash/conf.d/【自定义】.conf 文件名自定义
设置

input { 
	file {
		path => ["/tmp/c.log"]
		start_position => "beginning"
		sincedb_path => "/var/lib/logstash/sincedb" 
	}
}

filter{ 
  grok {
    match => { "message" => "%{HTTPD_COMBINEDLOG}" }
    remove_field => ["message"]
  }
}

output{ 
  stdout{ codec => "rubydebug" }
  elasticsearch {
    hosts => ["es-0002:9200","es-0003:9200"]
    index => "weblog-%{+YYYY.MM.dd}"
  }
}

input

  • file插件start_position这个参数指示Logstash从日志文件的开头开始读取数据。如果设置为 "beginning",无论Logstash之前是否处理过该文件,它都会从文件的第一行开始重新读取。
  • file插件sincedb是Logstash用来记录每个被监控日志文件的读取位置(即最后一次读到哪一行),如果你希望Logstash每次启动都从日志文件的开头读取,可以把这个路径设为 /dev/null,这样Logstash就会忽略之前保存的读取位置信息。
    filter
  • grok插件的宏定义,可以正则匹配http的日志格式,还有其他宏文件位于/usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/logstash-patterns-core-4.3.4/patterns/
  • elasticsearch插件,hosts => 指定监听的elasticasearch服务器, index =>以天为单位生成索引

结果

附注
遇到一次目录文件无法被写入的情况,发现问题在于logstash目录权限,如果不属于logstash需要手动改变目录权限

chown -R logstash: /var/log/logstash /var/lib/logstash

systemctl restart logstash.service

web日志实时分析

我们需要将网站服务器的日志实时的被logstash读取
为什么是filebeat?
如果使用nfs共享日志目录到logstash,对nfsIO消耗巨大
如果直接将logstash装到网站服务器,将消耗网站服务器资源
所以使用网站服务器上安装filebeat的方法传送日志内容

什么是filebeat?
-filebeat 是使用 Golang 实现的轻量型日志采集器,也是
Elasticsearch stack 里面的一员。
-filebeat 占用资源非常小,可以忽略不计
-filebeat 本质上是一个agent,可以安装在应用服务器各
个节点上,根据配置读取对应位置的日志文件,并通过网络
上报到相应的服务中

beats 插件概述
-beats 是 logstash input 模块的插件
-配合filebeat,专门用来接收 filebeat 发送过来的日志
-默认监听在 5044 端口上
-可以同时接收多台不同主机发送过来的日志信息

配置filebeat

dnf install -y filebeat

systemctl enable filebeat

vim /etc/filebeat/filebeat.yml
 filebeat.inputs:
 - type: filestream
   id: my-filestream-id # 如果同时配置多个收集器,id不能重复
   enabled: true # 打开收集模块
   paths:
     - /var/log/httpd/access_log # 日志文件路径
...略
# 注释掉 Elasticsearch 配置
# 注释掉 Elasticsearch 配置
...略
output.logstash: # 设置输出模块
   hosts: ["192.168.1.27:5044"] # 输出给logstash
...略
# 设置识别标签
  fields:
    logtype: apache_log
...略
# 清理冗余数据
: processors:
   - drop_fields:
       fields: 
         - log
         - offset
         - agent
         - ecs
# 后面内容是发送本机信息的,如不需要可注释掉
rm -f /var/log/httpd/*

systemctl restart filebeat httpd

# 测试验证: 访问页面,观察 logstash 是否能够获取数据
curl http://192.168.1.11/info.php

在logstash上配置

刚才的配置文件只需要改变input即可

input { 
  beats {
    port => 5044
  }
}
/usr/share/logstash/bin/logstash #开始调试

标签:ELK,filebeat,log,插件,笔记,input,日志,logstash
From: https://www.cnblogs.com/ling-2945/p/18073343

相关文章

  • Java面向对象的一些学习笔记
    1.Private关键字:(1)private关键字是一个权限修饰符(2)可以修饰成员变量和成员方法(3)被private修饰的成员只能在本类中才能访问(4)针对private修饰的成员变量,如果需要被其他类使用,提供相应的操作(5)提供"setXxx(参数)"方法,用于给成员变量赋值,方法用public修饰(6)提供"getXxx(参数)......
  • MATLAB学习笔记1.数组运算
    先来介绍两个常用的,在命令行里边输入“clc”,就会清空以上的命令行(也就是这个直接与你对话的地方)的所有内容;但是并不会把已经设置的变量清空,要想清空变量,则需要在命令行中输入“clear”,这样就可以把右侧已经设置的变量都清空掉了。下面是示例输入回车再输入“clear”并输入......
  • Vector + ClickHouse 收集日志
    目前业界的日志生态,最常用的是ELK,其次就是ClickHouse,本文会演示如何使用Vector+ClickHouse来采集Nginx日志并做清洗,最终写入ClickHouse。至于日志的可视化,后面再单独介绍,后面夜莺会把日志可视化能力下放到开源版本,之前跟映客的兄弟们交流准备一起搞,可惜迟迟没有抽出时间......
  • Java学习笔记——第十六天
    集合进阶(二)Collection的其他相关知识前置知识:可变参数就是一种特殊形参,定义在方法、构造器的形参列表里,格式是:数据类型...参数名称。特点可以不传数据给它;可以传一个或者同时传多个数据给它;也可以传一个数组给它。作用常常用来灵活地接收数据。注意事项可变参数在方法......
  • 聊一聊 MySQL 的 InnoDB 存储引擎以及三种日志
    楔子上一篇文章我们介绍了MySQL的基本架构,这里再来回顾一下。整个架构还是很好理解的,我们说MySQL分为Server层和存储引擎层。其中Server层包含了MySQL的大多数核心服务功能,而存储引擎层则负责提供数据的存储和读取,并且是插件式的,一个Server层支持不同的存储引擎层......
  • 逻辑学笔记
    逻辑学笔记目录逻辑学笔记写在前面1.概念1.1导论1.2概念的内涵和外延1.3概念的种类1.4概念外延的关系1.5定义1.6划分2.直言命题2.1含义与结构2.2直言命题的种类2.3直言命题的逻辑特征2.4直言命题的对当关系2.5对当关系的直接推理2.6换质法和换位法3.直言三段论3.1直言三段论的含......
  • 笔记本如何在PVE下All in one?—NAS + Linux +win下载机
    没有有线网卡的笔记本在PVE下Allinone|NAS+Linux+Win下载机(保姆级未完成版)  目录:1、前言2、PVE的安装3、PVE联网前的准备工作4、PVE使用无线网卡进行联网5、PVE无线网卡的桥接6、PVE下创建虚拟机:NAS+Linux+Win下载机 1、前言十年前的旧笔记本,......
  • 浮木云学习日志(11)---表格设计(一)
    ​表格作为展现数据最为清晰、高效的形式之一,同时又具有复用度高,拓展性强优势,是最常见的信息展示形式,也是对数据进行浏览和操作最便捷的设计方式,合理的表格设计能给用户带来高效的信息获取率。今天我就利用浮木云软件设计开发平台https://www.fumucloud.com/设计一款简洁美观的......
  • CTF笔记——[GXYCTF2019]禁止套娃 1
    [GXYCTF2019]禁止套娃1打开题目之后什么都没看到所以进行常规的检测漏洞,扫描目录发现存在.git文件夹下的文件存在#DirsearchstartedSunMar1015:19:392024as:D:\Python\Scripts\dirsearch-uhttp://849b4a98-3df3-4abb-927e-1a358a178e30.node5.buuoj.cn:81/-x429......
  • LoggerMessageAttribute 高性能的日志记录
    .NET6引入了LoggerMessageAttribute类型。使用时,它会以source-generators的方式生成高性能的日志记录API。source-generators可在编译代码时,可以提供其他源代码作为编译的输入。LoggerMessageAttribute依赖于ILogger接口和LoggerMessage.Define功能。在partial日......