Rumah Tutorial sistem LINUX Penjelasan terperinci tentang rakan asas Elasticsearch Logstash

Penjelasan terperinci tentang rakan asas Elasticsearch Logstash

Jul 18, 2024 am 06:56 AM
linux tutorial linux Topi Merah sistem linux arahan linux pensijilan linux linux topi merah video linux

Penjelasan terperinci tentang rakan asas Elasticsearch Logstash

Logstash ialah alat pemprosesan data yang berkuasa yang boleh merealisasikan penghantaran data, pemprosesan format, output yang diformatkan dan mempunyai fungsi pemalam yang berkuasa, yang sering digunakan untuk pemprosesan log.

1 Input

Data boleh diekstrak daripada fail, storan dan pangkalan data Input mempunyai dua pilihan Satu ialah menyerahkannya kepada Penapis untuk penapisan dan pemangkasan. Yang satu lagi diberikan terus kepada Output

Tapis

Keupayaan untuk mengubah dan menghuraikan data secara dinamik. Maklumat data boleh ditapis dan dipangkas dengan cara tersuai

Output

Menyediakan banyak pilihan output, anda boleh menghantar data ke tempat yang anda inginkan, dengan fleksibiliti untuk membuka kunci banyak kes penggunaan hiliran.

Penjelasan terperinci tentang rakan asas Elasticsearch Logstash

2. Pemasangan dan penggunaan
1.Pemasangan
wget https://artifacts.elastic.co/downloads/logstash/logstash-6.0.1.rpm
yum install -y ./logstash-6.0.1.rpm
2.Logstash fail konfigurasi
vim /etc/logstash/logstash.yml
path.data: /var/lib/logstash                                    # 数据存放路径
path.config: /etc/logstash/conf.d/*.conf                        # 其他插件的配置文件,输入输出过滤等等
path.logs: /var/log/logstash                                    # 日志存放路径
3.Fail konfigurasi JVM dalam Logstash Logstash ialah program yang dibangunkan berdasarkan Java dan perlu dijalankan dalam JVM Ia boleh ditetapkan untuk JVM dengan mengkonfigurasi jvm.options. Contohnya, memori maksimum dan minimum, mekanisme pembersihan sampah, dsb. Berikut adalah dua daripada yang paling biasa digunakan.

Peruntukan memori JVM tidak boleh terlalu besar atau terlalu kecil Jika terlalu besar, ia akan memperlahankan sistem pengendalian. Terlalu kecil untuk bermula.

vim /etc/logstash/jvm.options                               # logstash有关JVM的配置
-Xms256m                                                    # logstash最大最小使用内存
-Xmx1g

4. Konfigurasi koleksi log paling mudah Pasang httpd untuk menguji dan konfigurasikan Logstash untuk mengumpul fail log accless.log Apache
yum install httpd
echo "Hello world" > /var/www/html/index.html               # 安装httpd,创建首页用于测试
vim /etc/logstash/conf.d/test.conf
input {
    file {                                                  # 使用file作为数据输入
        path => ['/var/log/httpd/access_log']               # 设定读入数据的路径
        start_position => beginning                         # 从文件的开始处读取,end从文件末尾开始读取
    }
}
output {                                                    # 设定输出的位置
    stdout {
        codec => rubydebug                                  # 输出至屏幕
    }
}

5. Fail konfigurasi ujian Logstash ialah arahan terbina dalam tetapi ia tidak termasuk dalam pembolehubah persekitaran, jadi anda hanya boleh menggunakan laluan mutlak untuk menggunakan arahan ini.
/usr/share/logstash/bin/logstash -t  -f  /etc/logstash/conf.d/test.conf   # 测试执行配置文件,-t要在-f前面
Configuration OK                                                          # 表示测试OK

6. Mulakan simpanan log Selepas menjalankan logstash dalam sesi semasa, jangan tutup sesi ini buat sementara waktu, dan kemudian buka tetingkap baharu sebagai Sesi 2
/usr/share/logstash/bin/logstash  -f  /etc/logstash/conf.d/test.conf

Selepas bermula, gunakan arahan curl dalam sesi 2 untuk menguji

curl 172.18.68.14

Kemudian anda boleh melihat maklumat output apabila anda kembali ke sesi sebelumnya 1

{
      "@version" => "1",
          "host" => "logstash.shuaiguoxia.com",
          "path" => "/var/log/httpd/access_log",
    "@timestamp" => 2017-12-10T14:07:07.682Z,
       "message" => "172.18.68.14 - - [10/Dec/2017:22:04:44 +0800] \"GET / HTTP/1.1\" 200 12 \"-\" \"curl/7.29.0\""
}

Pada ketika ini, konfigurasi Logstash yang paling mudah telah selesai Di sini, output langsung yang dikumpul hanya dikumpulkan tanpa penapisan atau pemangkasan.

3. Elasticsearch dan Logstash

上面的配置时Logsatsh从日志文件中抽取数据,然后输出至屏幕。那么在生产中往往是将抽取的数据过滤后输出到Elasticsearch中。下面讲解Elasticsearch结合Logstash

Logstash抽取httpd的access.log文件,然后经过过滤(结构化)之后输出给Elasticsearch Cluster,在使用Head插件就可以看到抽取到的数据。(Elasticsearch Cluster与Head插件搭建请查看前两篇文章)

Penjelasan terperinci tentang rakan asas Elasticsearch Logstash

配置Logstash

    vim /etc/logstash/conf.d/test.conf
    input {
    file {
        path => ['/var/log/httpd/access_log']
        start_position => "beginning"
    }
    }
    filter {
    grok {
        match => {
            "message" => "%{COMBINEDAPACHELOG}"
        }

        remove_field => "message"   
    }
    }
    output {
    elasticsearch {
        hosts => ["http://172.18.68.11:9200","http://172.18.68.12:9200","http://172.18.68.13:9200"]
        index => "logstash-%{+YYYY.MM.dd}"
        action => "index"
        document_type => "apache_logs"
    }
    }

启动Logstash

     /usr/share/logstash/bin/logstash -t -f /etc/logstash/conf.d/test.conf       # 测试配置文件
    Configuration OK
     /usr/share/logstash/bin/logstash  -f /etc/logstash/conf.d/test.conf         # 启动Logstash

测试

每个执行10次172.18.68.14,位Logstash的地址

    curl 127.0.0.1
    curl 172.18.68.14

验证数据

使用浏览器访问172.18.68.11:9100(Elastisearch 安装Head地址,前面文章有讲)

选择今天的日期,就能看到一天内访问的所有数据。

Penjelasan terperinci tentang rakan asas Elasticsearch Logstash

四、监控其他

监控Nginx日志

仅仅列了filter配置块,input与output参考上一个配置

    filter {
        grok {
                match => {
                        "message" => "%{HTTPD_COMBINEDLOG} \"%{DATA:realclient}\""
                }
                remove_field => "message"
        }
        date {
                match => ["timestamp","dd/MMM/YYYY:H:m:s Z"]
                remove_field => "timestamp"
        }
    }

监控Tomcat

仅仅列了filter配置块,input与output参考上一个配置

    filter {
        grok {
                match => {
                        "message" => "%{HTTPD_COMMONLOG}"
                }
                remove_field => "message"
        }
        date {
                match => ["timestamp","dd/MMM/YYYY:H:m:s Z"]
                remove_field => "timestamp"
        }
    } 
五、Filebeat

现在已经搭建成在节点安装Logstash并发送到Elasticsearch中去,但是Logstash是基于Java开发需要运行在JVM中,所以是一个重量级采集工具,仅仅对于一个日志采集节点来说使用Logstash太过重量级,那么就可以使用一个轻量级日志收集工具Filebeat来收集日志信息,Filebeat同一交给Logstash进行过滤后再Elasticsearch。这些在接下来的文章在进行讲解,先放一张架构图吧。

Penjelasan terperinci tentang rakan asas Elasticsearch Logstash

Atas ialah kandungan terperinci Penjelasan terperinci tentang rakan asas Elasticsearch Logstash. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Pengalaman dalam menyertai aktiviti pertukaran teknologi luar talian VSCODE Pengalaman dalam menyertai aktiviti pertukaran teknologi luar talian VSCODE May 29, 2025 pm 10:00 PM

Saya mempunyai banyak pengalaman dalam mengambil bahagian dalam aktiviti pertukaran teknologi luar talian VSCode, dan keuntungan utama saya termasuk perkongsian pembangunan plug-in, demonstrasi praktikal dan komunikasi dengan pemaju lain. 1. Perkongsian pembangunan plug-in: Saya belajar bagaimana menggunakan API pemalam VSCode untuk meningkatkan kecekapan pembangunan, seperti pemformatan automatik dan analisis statik. 2. Demonstrasi Praktikal: Saya belajar bagaimana menggunakan vscode untuk pembangunan jauh dan menyedari fleksibiliti dan skalabilitasnya. 3. Berkomunikasi dengan pemaju: Saya telah memperoleh kemahiran untuk mengoptimumkan kelajuan permulaan vscode, seperti mengurangkan bilangan plug-in yang dimuatkan pada permulaan dan menguruskan pesanan pemuatan pemalam. Singkatnya, acara ini telah memberi manfaat kepada saya banyak dan saya sangat mengesyorkan mereka yang berminat dengan vscode untuk mengambil bahagian.

Bagaimana untuk mengehadkan sumber pengguna di Linux? Bagaimana cara mengkonfigurasi ULIMIT? Bagaimana untuk mengehadkan sumber pengguna di Linux? Bagaimana cara mengkonfigurasi ULIMIT? May 29, 2025 pm 11:09 PM

Sistem Linux mengehadkan sumber pengguna melalui perintah ULIMIT untuk mengelakkan penggunaan sumber yang berlebihan. 1.Ulimit adalah arahan shell terbina dalam yang boleh mengehadkan bilangan deskriptor fail (-N), saiz memori (-V), kiraan thread (-u), dan lain-lain, yang dibahagikan kepada had lembut (nilai berkesan semasa) dan had keras (had atas maksimum). 2. Gunakan perintah ULIMIT secara langsung untuk pengubahsuaian sementara, seperti ULIMIT-N2048, tetapi hanya sah untuk sesi semasa. 3. Untuk kesan tetap, anda perlu mengubah suai /etc/security/limits.conf dan fail konfigurasi PAM, dan tambah sessionrequiredpam_limits.so. 4. Perkhidmatan SystemD perlu menetapkan LIM dalam fail unit

Perbandingan antara Informix dan MySQL di Linux Perbandingan antara Informix dan MySQL di Linux May 29, 2025 pm 11:21 PM

Informix dan MySQL adalah kedua -dua sistem pengurusan pangkalan data hubungan popular. Mereka berfungsi dengan baik dalam persekitaran Linux dan digunakan secara meluas. Berikut adalah perbandingan dan analisis kedua -dua pada platform Linux: memasang dan mengkonfigurasi Informix: Menggunakan Informix pada Linux memerlukan memuat turun fail pemasangan yang sepadan, dan kemudian menyelesaikan proses pemasangan dan konfigurasi mengikut dokumentasi rasmi. MySQL: Proses pemasangan MySQL agak mudah, dan boleh dipasang dengan mudah melalui alat pengurusan pakej sistem (seperti apt atau yum), dan terdapat sejumlah besar tutorial dan sokongan komuniti di rangkaian untuk rujukan. Informix Prestasi: Informix mempunyai prestasi yang sangat baik dan

Cara Mengintegrasikan FileBeat dan Elasticsearch di bawah Debian Cara Mengintegrasikan FileBeat dan Elasticsearch di bawah Debian May 28, 2025 pm 05:09 PM

Dalam sistem operasi Debian, integrasi FileBeat dan Elasticsearch dapat memudahkan pengumpulan, penghantaran dan penyimpanan data log. Berikut adalah langkah pelaksanaan khusus: Langkah 1: Tugas pertama yang menggunakan Elasticsearch adalah untuk menyelesaikan pemasangan Elasticsearch dalam sistem Debian. Anda boleh memuat turun versi perisian Elasticsearch yang sepadan dari laman web rasmi elastik dan menyelesaikan proses pemasangan mengikut panduan rasmi. Muat turun dan pasang elasticsearchwgethttps: //artifacts.elastic.co/downloads/elasticse

Sebab dan penyelesaian untuk kemalangan editor selepas kemas kini pemalam vscode Sebab dan penyelesaian untuk kemalangan editor selepas kemas kini pemalam vscode May 29, 2025 pm 10:03 PM

Sebab mengapa editor terhempas selepas plugin VSCode dikemas kini adalah bahawa terdapat masalah keserasian dengan plugin dengan versi VSCode yang sedia ada atau plugin lain. Penyelesaian termasuk: 1. Lumpuhkan pemalam untuk menyelesaikan masalah satu demi satu; 2. Menurunkan masalah pemalam kepada versi terdahulu; 3. Cari pemalam alternatif; 4. Simpan vscode dan plug-in dikemas kini dan menjalankan ujian yang mencukupi; 5. Sediakan fungsi sandaran automatik untuk mengelakkan kehilangan data.

Cara melaksanakan penggunaan automatik Docker di Debian Cara melaksanakan penggunaan automatik Docker di Debian May 28, 2025 pm 04:33 PM

Melaksanakan penggunaan automatik Docker pada sistem Debian boleh dilakukan dengan pelbagai cara. Here are the detailed steps guide: 1. Install Docker First, make sure your Debian system remains up to date: sudoaptupdatesudoaptupgrade-y Next, install the necessary software packages to support APT access to the repository via HTTPS: sudoaptinstallapt-transport-httpsca-certificatecurlsoftware-properties-common-y Import the official GPG key of Docker: curl-

Bagaimana untuk menyesuaikan MySQL ke antara muka Cina? Mudah untuk menetapkan persekitaran bahasa Cina mysql Bagaimana untuk menyesuaikan MySQL ke antara muka Cina? Mudah untuk menetapkan persekitaran bahasa Cina mysql Jun 04, 2025 pm 06:36 PM

Untuk menyesuaikan MySQL ke antara muka Cina, ia boleh dilaksanakan melalui alat MySqlworkbench atau arahan baris. 1) Di MySqlworkbench, buka "Keutamaan", pilih tab "Penampilan", dan kemudian pilih "Cina (dipermudahkan)" dalam menu drop-down "bahasa", dan mulakan semula. 2) Apabila menggunakan alat baris arahan, tetapkan pembolehubah sistem operasi, seperti menggunakan "ExportLang = ZH_CN.UTF-8" pada Linux atau MacOS, dan kemudian jalankan klien MySQL.

Cara membandingkan Debian Notepad dengan editor lain Cara membandingkan Debian Notepad dengan editor lain May 29, 2025 pm 10:42 PM

Editor Teks Debian adalah alat penyuntingan teks asas, terutamanya digunakan untuk kerja pengeditan teks mudah harian. Berbanding dengan editor arus perdana yang lain, ia mempunyai batasan tertentu dalam prestasi dan pengalaman pengguna. Berikut adalah kelebihan dan ciri-ciri beberapa editor lain berbanding dengan editor teks Debian: Notepad Memuatkan Fail Besar Kelajuan: Notepad dengan cepat boleh memuatkan fail besar, seperti fail SQL berukuran 1GB dalam hanya 8 saat, yang hampir 47 kali lebih cepat daripada editor teks standard. Fungsi pewarna kod: Menyokong pewarna kod dalam kira -kira 80 bahasa pengaturcaraan, yang membantu meningkatkan kecekapan pengekodan. Keupayaan Operasi Batch: Ia mempunyai mod penyuntingan lajur, yang mudah untuk melaksanakan tugas pemprosesan batch seperti pengesahan kewangan atau log dan log penyelenggaraan. Cawangan plug-in lanjutan

See all articles