Dengan perkembangan berterusan teknologi Internet dan teknologi data besar, kerumitan sistem aplikasi menjadi lebih tinggi dan lebih tinggi Pada masa yang sama, pengurusan log juga menjadi topik penting. Paparan fail log secara manual secara tradisional tidak lagi dapat memenuhi keperluan pentadbir sistem. Untuk mengurus log sistem dengan lebih baik, penyelesaian yang cekap ialah menggunakan tindanan teknologi ELK.
Timbunan teknologi ELK ialah satu set perisian sumber terbuka, termasuk Elasticsearch, Logstash dan Kibana. Elasticsearch ialah enjin carian sumber terbuka yang diedarkan, RESTful, yang boleh menyimpan, mencari dan menganalisis set data yang besar dalam hampir masa nyata Logstash ialah saluran paip pemprosesan data sisi pelayan sumber terbuka yang boleh mengumpul data daripada pelbagai sumber dan menganalisis data . Transform and transfer; Kibana ialah platform visualisasi data sumber terbuka yang boleh memaparkan data secara interaktif dalam indeks Elasticsearch dan menjalankan operasi carian, analisis dan interaktif.
Mensasarkan isu pengurusan log sistem aplikasi, artikel ini akan memperkenalkan cara melaksanakan analisis dan pemantauan log melalui penyepaduan Spring Boot dan ELK.
1. Koleksi log Spring Boot
Spring Boot ialah rangka kerja pembangunan pesat yang telah digunakan oleh semakin ramai pembangun. Dalam pelaksanaan Spring Boot, pencetakan log ialah alat penyahpepijatan dan penyelesaian masalah yang biasa digunakan. Spring Boot menyepadukan log balik sebagai rangka kerja pengelogan secara lalai, yang boleh diuruskan secara seragam melalui fail konfigurasi.
Kod sampel:
@Slf4j @RestController public class HelloController { @RequestMapping("/hello") public String hello() { log.info("hello world"); return "Hello world"; } }
Dalam kod sampel di atas, kami mentakrifkan objek log dengan memberi anotasi @Slf4j dan mencetak log dalam kaedah. Dalam proses pembangunan sebenar, kita boleh menentukan tahap log, lokasi output, nama fail dan maklumat lain dalam fail konfigurasi Spring Boot.
2. Integrasi ELK
Selepas memahami koleksi log Spring Boot, kami seterusnya mempertimbangkan cara melaksanakan integrasi ELK.
Elasticsearch ialah komponen teras tindanan teknologi ELK dan perlu dipasang dan dikonfigurasikan sebelum meneruskan ke langkah seterusnya.
Alamat muat turun laman web rasmi: https://www.elastic.co/cn/downloads/elasticsearch
Selepas pemasangan selesai, anda boleh mengesahkan pemasangan dan pemasangan Elasticsearch melalui http: //localhost:9200 Status operasi.
Logstash ialah komponen yang digunakan untuk pengumpulan log, pengagregatan dan penghantaran, dan perlu digunakan bersama-sama dengan Elasticsearch. Logstash juga perlu dipasang dan dikonfigurasikan terlebih dahulu.
Alamat muat turun tapak web rasmi: https://www.elastic.co/cn/downloads/logstash
Konfigurasikan input, penapis dan output dalam Logstash, di mana input diperoleh daripada log Spring Boot Maklumat, penapis digunakan untuk pemprosesan data, dan output adalah output kepada Elasticsearch.
Contoh fail konfigurasi:
input { tcp { port => 9500 codec => "json_lines" } } filter { if [type] == "springboot" { mutate { add_field => { "ip" => "%{host}" } } } } output { elasticsearch { hosts => ["http://localhost:9200"] index => "springboot-%{+YYYY.MM.dd}" document_id => "%{fingerprint}" } }
Dalam fail konfigurasi, kami menentukan Logstash untuk mendengar maklumat log pada port 9500, memproses input log daripada springboot dan mengeluarkannya kepada fail bernama springboot- yyyy Dalam indeks dalam format .mm.dd.
Kibana ialah platform visualisasi data sumber terbuka yang digunakan untuk memaparkan data dalam Elasticsearch. Anda juga perlu memasang dan mengkonfigurasi Kibana terlebih dahulu.
Alamat muat turun rasmi: https://www.elastic.co/cn/downloads/kibana
Di Kibana, anda boleh membuat carta visualisasi data, mencari, menapis dan menggunakan papan pemuka, dsb. kaedah untuk menganalisis dan memantau log aplikasi Spring Boot yang dikumpul.
3. Analisis dan pemantauan log
Dengan sokongan tindanan teknologi ELK, kami boleh melaksanakan analisis log dan pemantauan aplikasi Spring Boot dengan cepat dan cekap. Melalui papan pemuka Kibana, kami boleh melihat kesihatan dan keabnormalan sistem aplikasi dalam masa nyata, dan menggunakan carta visualisasi data untuk memahami status berjalan sistem dengan lebih intuitif.
Pada masa yang sama, kami juga boleh menjalankan analisis dan penyelidikan yang lebih mendalam berdasarkan data di Kibana Kami boleh memproses dan menganalisis gugusan berskala besar dan data log berbilang dimensi dengan lebih cekap. Ini tidak dapat dibandingkan dengan paparan manual tradisional bagi fail log.
Kesimpulan
Artikel ini memperincikan cara melaksanakan analisis dan pemantauan log melalui penyepaduan Spring Boot dan ELK Antaranya, Spring Boot mengumpul maklumat log, Logstash melakukan pemprosesan dan penghantaran data, dan Elasticsearch melakukan penyimpanan data dan Carian, dan Kibana menyediakan visualisasi data dan operasi interaktif.
Bagi pembangun aplikasi perusahaan dan pentadbir sistem, log aplikasi ialah objek pemantauan dan analisis yang sangat penting. Tindanan teknologi ELK menyediakan penyelesaian yang cekap, fleksibel dan berskala, menjadikan pengurusan log sistem aplikasi lebih mudah, cekap dan lebih visual.
Atas ialah kandungan terperinci Spring Boot disepadukan dengan ELK untuk melaksanakan analisis dan pemantauan log. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!