অ্যাপাচি লগ রিকোয়েস্টগুলি আসার পরিবর্তে তারা শেষ করার পরিবর্তে আসুন


9

আমি একটি উদ্ভট সার্ভার ক্র্যাশিং ইস্যুটি সনাক্ত করার চেষ্টা করছি ( সার্ভার পিংসের প্রতিক্রিয়া জানায়, তবে রিবুট হওয়া পর্যন্ত এসএসএইচ সংযোগগুলি গ্রহণ করবে না। 0% সিপিইউ ) যেখানে সার্ভারটি পুনরায় বুট করার পরে সবকিছু স্বাভাবিক অবস্থায় ফিরে আসে। আমি আমার অ্যাপাচি অ্যাক্সেস লগগুলি (বা অন্য কোনও লগ) ক্র্যাশ হওয়ার সাথে সাথে অনুরোধ করা সমস্ত অনুরোধগুলি অন্তর্ভুক্ত করতে চাই, তবে দুর্ভাগ্যক্রমে অ্যাপাচি অনুরোধগুলি সম্পূর্ণ না হওয়া পর্যন্ত লগইন করে না। এর অর্থ হ'ল যদি কোনও অনুরোধ সার্ভার ক্র্যাশ করে তবে সেই অনুরোধটি কখনই শেষ হয় না এবং এভাবে লগগুলিতে প্রদর্শিত হয় না।

অনুরোধগুলি আসার সাথে সাথে লিখিত হয়ে কোনও লগ ফাইল তৈরি করার জন্য অ্যাপাচি কনফিগার করার কোনও উপায় আছে?


আপনার ডিএনএস কনফিগারেশনটিও একবার দেখুন, একটি ভাঙ্গা বা ঝুলানো ডিএনএস সার্ভার এসএসএইচ এবং লগ ইন করতে সক্ষম না হওয়ায় সমস্ত ধরণের সমস্যা সৃষ্টি করতে পারে [
শান কিমবল

উত্তর:


15

আমি মনে করি তুমি কি ফরেনসিক লগিং প্রয়োজন, এই লিঙ্কটি দেখুন: http://httpd.apache.org/docs/current/mod/mod_log_forensic.html

স্নিপেট:

ফরেনসিক লগ ফর্ম্যাট:

প্রতিটি অনুরোধ দুটি বার লগ করা হয়। এটি আরও প্রক্রিয়া করার আগে প্রথমবার (যা শিরোনাম প্রাপ্তির পরে)। দ্বিতীয় লগ এন্ট্রি অনুরোধ প্রক্রিয়া করার পরে একই সময়ে যেখানে স্বাভাবিক লগিং ঘটে সেখানে লেখা হয়।

প্রতিটি অনুরোধ শনাক্ত করার জন্য, একটি অনন্য অনুরোধ আইডি নির্ধারিত হয়। এই ফরেনসিক আইডিটি% {ফরেনসিক-আইডি format n ফর্ম্যাট স্ট্রিং ব্যবহার করে স্বাভাবিক স্থানান্তর লগটিতে ক্রস লগ করা যায়। আপনি যদি mod_unique_id ব্যবহার করছেন তবে এর উত্পন্ন ID ব্যবহার করা হবে।

প্রথম লাইনটি ফরেনসিক আইডি, অনুরোধ লাইন এবং সমস্ত প্রাপ্ত শিরোনামগুলিকে পাইপ অক্ষর (|) দ্বারা পৃথক করে লগ করে। একটি নমুনা রেখা নীচের মত দেখাচ্ছে (সমস্ত এক লাইনে):

+ yQtJf8CoAB4AAFNXBIEAAAAA | GET / manual/de/images/down.gif HTTP / 1.1 | হোস্ট: লোকালহোস্ট% 3a8080 | ব্যবহারকারী-এজেন্ট: মজিলা / 5.0 (এক্স 11; ইউ; লিনাক্স i686; এন-ইউএস; আরভি% 3a1.6) গেকো / 20040216 ফায়ারফক্স / 0.8 | স্বীকার করুন: চিত্র / পিএনজি, ইত্যাদি ...

শুরুতে প্লাস চরিত্রটি নির্দেশ করে যে এটি এই অনুরোধটির প্রথম লগ লাইন। দ্বিতীয় লাইনে স্রেফ একটি বিয়োগ চরিত্র এবং আইডি আবার রয়েছে:

-yQtJf8CoAB4AAFNXBIEAAAAA

চেক_ফরেন্সিক স্ক্রিপ্টটি তার যুক্তি হিসাবে লগফাইলে নাম নেয়। এটি যারা +/- আইডি জুড়িগুলির জন্য অনুসন্ধান করে এবং কোনও অনুরোধ সম্পন্ন না হলে অভিযোগ করে।


এটি আমি যা খুঁজছিলাম, তবে মনে হচ্ছে না যে আমি এই লগটি পর্যায়ক্রমে মুছে ফেলতে পারি (rm /var/log/apache2/forensic.log প্রতি ঘন্টা) বা ফরেনসিক লগিং কেবল অ্যাপাচি পুনরায় চালু না হওয়া পর্যন্ত বিরতি দেয় art ধারনা?
বেন দিল্টস

আপনি যদি কোনও অ্যাপাচি লগগুলি আরএম করেন তবে তা ঘটবে। পর্যায়ক্রমে (সময় বা আকার অনুসারে) লগগুলি রোল করতে আপনার পরিবেশে লোগ্রোটেট বা সমমানের যে কোনও সমতুল্য ব্যবহার করার চেষ্টা করুন। যদি তা না হয় তবে মুছে ফেলার পরিবর্তে ফাইলটি সরানোর চেষ্টা করুন, তারপরে /var/log/apache2/forensic.log টাচ করুন (যদিও অনুমতিগুলি পরীক্ষা করুন)
সানড্রয়েড

2

স্যান্ড্রয়েডের উত্তরটি আপনার প্রশ্নের জন্য সঠিক তবে আপনার অবশ্যই একটি নেটওয়ার্ক প্যাকেট ক্যাপচার চালানো বিবেচনা করা উচিত। যদি আপনার সংস্থান থাকে তবে স্যুইচটির অভ্যন্তরে পোর্টটি মিরর করে এবং সমস্ত আইপি ট্র্যাফিক রেকর্ড করতে ওয়্যারশার্ক চালিত একটি দ্বিতীয় মেশিন ব্যবহার করে সত্যই সহায়তা করতে পারে। সার্ভারটি যদি এমন কোনও স্থানে নিয়ে যায় যেখানে এইচটিটিপি-র পরিষেবাগুলি প্রতিক্রিয়া জানায় না তবে খারাপ ডেটা অ্যাপাচি করার আগে এটি আইপি স্ট্যাকটি বের করে নিচ্ছে।

আপনি যদি নিশ্চিত করতে পারেন যে ক্যাপচারটি চালাচ্ছে এমন মেশিনে অন্যের চেয়ে আলাদা নেটওয়ার্ক হার্ডওয়্যার এবং / অথবা ড্রাইভার রয়েছে। একটির দামের জন্য দুটি ক্রাশ করতে হবে। ;-)

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.