Berbagi teknologi

Plug-in yang umum digunakan dan penerapan ELFK dari modul filter logstash ELfK

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Plug-in yang umum digunakan untuk modul filter ELK

Plug-in yang umum digunakan untuk modul filter logstash:

filter: mewakili lapisan pemrosesan data, termasuk pemformatan data, konversi tipe data, pemfilteran data, dll., dan mendukung ekspresi reguler

  1. grok membagi beberapa bidang teks besar menjadi bidang-bidang kecil (?<nama bidang>ekspresi reguler) Nama bidang: konten yang cocok dengan ekspresi reguler
  2. tanggal menyatukan dan memformat format waktu dalam data
  3. mutate dapat mengganti nama, menghapus, mengganti, dan mengubah bidang dalam acara.Misalnya, hilangkan beberapa bidang yang tidak berguna atau tambahkan bidang khusus.
  4. multiline mengatur beberapa baris data secara seragam dan merangkum beberapa baris data menjadi satu baris

GROK: plug-in pengambilan biasa

Gunakan segmentasi fragmen teks untuk mengelompokkan peristiwa log, yang dibagi menjadi aturan reguler bawaan dan aturan reguler kustom.

Panggilan ekspresi reguler bawaan: % (ekspresi reguler bawaan: nama bidang)
 

Panggilan ekspresi reguler khusus: (?<nama bidang>ekspresi reguler khusus)

         

multiline: Menyatukan beberapa baris data dan meringkas beberapa baris data menjadi satu baris

pola (mencocokkan garis melalui ekspresi reguler)
negate(false|true, apakah akan meniadakan. False berarti tidak meniadakan, dan baris yang cocok dengan ekspresi reguler akan digabungkan sesuai dengan pengaturan apa
true berarti negasi, dan garis yang cocok dengan ekspresi reguler tidak akan digabungkan sesuai dengan pengaturan apa)
apa(sebelumnya|berikutnya, sebelumnya berarti menggabungkan ke atas, berikutnya berarti menggabungkan ke bawah

tanggal: Menyatukan format stempel waktu @timestamp peristiwa log yang dikumpulkan oleh logstash dengan waktu pencetakan log yang sebenarnya.

1. Pertama-tama konfigurasikan plugin grok untuk memisahkan kolom waktu log dan waktu cetak.
2. Gunakan kecocokan pada konfigurasi plugin tanggal untuk mencocokkan format waktu pada kolom waktu log.
3. Kemudian gunakan target untuk mengeluarkan ke bidang @timestamp untuk menyatukan format waktu.
 

Penerapan Filebeat yang Dioptimalkan ELK

alamat tuan rumahnamaMelayani
192.168.73.80bahasa inggris01Pencarian elastis
192.168.73.100bahasa inggris02Pencarian elastis
192.168.73.110bahasa inggris03Pencarian elastis
192.168.73.120ngixn01nginx kibana
192.168.73.130MENGAJUKANfile beat ngixn gratis

Instal NGINX

  1. cd /etc/yum.repos.d/
  2. 上传nginx.repo文件
  3. yum install -y nginx
  4. systemctl enable --now nginx
  5. cd /usr/share/nginx/html
  6. #准备测试页面
  7. echo '<h1>this is web page</h1>' > test.html
  8. echo '<h1>this is web2 page</h1>' > test1.html

Instal Filebeat

  1. 上传软件包 filebeat-6.7.2-linux-x86_64.tar.gz 到/opt目录
  2. tar xf filebeat-6.7.2-linux-x86_64.tar.gz
  3. mv filebeat-6.7.2-linux-x86_64 /usr/local/filebeat

Atur file konfigurasi utama filebeat

  1. cd /usr/local/filebeat
  2. cp filebeat.yml filebeat.yml.bak
  3. vim filebeat.yml
  4. filebeat.inputs:
  5. - type: log #指定 log 类型,从日志文件中读取消息
  6. enabled: true #24
  7. paths:
  8. - /var/log/nginx/access.log #28行指定监控的日志文件
  9. - /var/log/nginx/error.log
  10. tags: ["filebeat"] #设置索引标签
  11. fields: #46行可以使用 fields 配置选项设置一些参数字段添加到 output
  12. service_name: nginx
  13. log_from: 192.168.73.130
  14. --------------output-------------------
  15. (全部注释掉)
  16. ----------------Logstash output---------------------
  17. output.logstash: #162
  18. hosts: ["192.168.73.120:5044"] #164行指定 logstash 的 IP 和端口

Ubah konfigurasi Logstash

  1. cd /etc/logstash/conf.d
  2. vim filebeat.conf
  3. input {
  4. beats {
  5. port => "5044"
  6. }
  7. }
  8. #filter {}
  9. output {
  10. elasticsearch {
  11. hosts => ["192.168.73.80:9200", "192.168.73.100:9200", "192.168.73.110:9200"] #集群els地址
  12. index => "nginx-%{+yyyy.MM.dd}"
  13. }
  14. }
  15. logstash -t -f filebeat.conf #检查文件

Mulai konfigurasi filebeat

192.168.73.130

Mulai ./filebeat -e -c filebeat.yml

Mulai logstash

192.168.73.120

Mulai logstashlogstash -f filebeat.conf