Filebeat এবং Logstash ব্যবহার করে লগ সংগ্রহ (Log Collection) করার প্রক্রিয়া খুবই কার্যকর এবং স্কেলেবল। এই প্রক্রিয়ায় Filebeat মূলত লগ সংগ্রহ করে Logstash-এ পাঠায়, যেখানে লগ ডেটা প্রসেস করা হয় এবং শেষে Elasticsearch-এ ইনডেক্স করা হয়। নিচে এই প্রক্রিয়া ধাপে ধাপে বর্ণনা করা হলো:
Filebeat একটি লাইটওয়েট শিপার যা বিভিন্ন সোর্স থেকে লগ সংগ্রহ করে Logstash বা Elasticsearch-এ পাঠায়।
Filebeat ইনস্টলেশন:
apt install filebeat
বা yum install filebeat
কমান্ড ব্যবহার করে)।Filebeat কনফিগারেশন (filebeat.yml):
filebeat.inputs:
- type: log
paths:
- /var/log/*.log
output.logstash:
hosts: ["logstash_server:5044"]
/var/log/*.log
থেকে লগ সংগ্রহ করা হবে এবং Logstash সার্ভারের 5044
পোর্টে পাঠানো হবে।Filebeat মডিউল সক্রিয় করা:
filebeat modules enable nginx
Logstash একটি সার্ভার-সাইড ডেটা প্রসেসিং পাইপলাইন। এটি Filebeat থেকে ডেটা গ্রহণ করে, ফিল্টার বা প্রসেস করে, এবং তারপর Elasticsearch-এ পাঠায়।
Logstash ইনস্টলেশন:
apt install logstash
বা yum install logstash
)।Logstash কনফিগারেশন (logstash.conf):
input {
beats {
port => 5044
}
}
filter {
grok {
match => { "message" => "%{COMBINEDAPACHELOG}" }
}
date {
match => [ "timestamp" , "dd/MMM/yyyy:HH:mm:ss Z" ]
}
}
output {
elasticsearch {
hosts => ["http://elasticsearch_server:9200"]
index => "logs-%{+YYYY.MM.dd}"
}
}
beats
প্লাগইন ব্যবহার করা হয়েছে এবং পোর্ট 5044
সেট করা হয়েছে।grok
এবং date
প্লাগইন ব্যবহার করে লগ ডেটা প্রসেস করা হয়েছে। grok
প্লাগইন সাধারণত লগ প্যাটার্নের সাথে ম্যাচ করে ডেটা ফিল্ড হিসেবে আলাদা করে।sudo service filebeat start
sudo service logstash start
Filebeat এবং Logstash ব্যবহার করে লগ সংগ্রহ এবং প্রক্রিয়াকরণের প্রক্রিয়া অত্যন্ত কার্যকরী। এটি স্কেলেবল এবং কাস্টমাইজযোগ্য, যা বিভিন্ন টুলের লগ ইনটেক এবং প্রসেসিংয়ের জন্য অত্যন্ত উপযোগী। এই প্রক্রিয়ায় আপনি কাস্টম ফিল্টার সেট করতে পারেন এবং Elasticsearch-এ ডেটা সংগঠিতভাবে ইনডেক্স করতে পারেন।
আরও দেখুন...