অ্যাভস্ট্যাটসের জন্য একাধিক জিজেড লগ ফাইল বিশ্লেষণ করতে কীভাবে?


21

আমি অ্যাজস্ট্যাটগুলিতে বেশ নতুন এবং আমার অ্যাপাচি ওয়েবসার্ভারে এনগিনেক্স অ্যাক্সেস লগগুলি বিশ্লেষণের জন্য অ্যাওস্ট্যাটগুলি কনফিগার করেছি (এনজিনেক্স ওয়েবসার্ভার আমার জ্যাঙ্গো অ্যাপ্লিকেশনটির জন্য), আমি পরিসংখ্যানগুলি নিতে সক্ষম হয়েছি LogFile=/var/log/nginx/access.logকিন্তু আমি কীভাবে জিপিপ ফর্ম্যাটযুক্ত একাধিক লগ বিশ্লেষণ করব? যেমন access.log.1.gz ... access.log.40.gz। আমি বিশ্লেষণ করার জন্য অনেক লগ আছে।

উত্তর:


29

আপনি সম্ভবত এখানে যা করতে চান তা হ'ল একবারে এই সমস্ত লগ ফাইলগুলি বিশ্লেষণ করা, তারপরে কেবলমাত্র বর্তমান লগফিলগুলি বিশ্লেষণ করে চলুন।

সবচেয়ে সহজ কাজটি হ'ল all সমস্ত ফাইলকে একটি একক ফাইলে আনজিপ করা, তারপরে একবার স্ট্র্যাটেস্ট চালানো উচিত, তারপরে আপনার অ্যাক্সেস.লগ ফাইলটিতে অস্ট্রাস্টগুলি নির্দেশ করুন।

অ্যাজস্ট্যাটগুলিতে সাধারণত লগ্রেসলভর্ম.পিএল নামে একটি স্ক্রিপ্ট থাকে, যা সংকোচিত ফাইলগুলি পড়তে পারে এবং অ্যানস্টেসিস করার জন্য অ্যাডস্ট্যাটগুলি যথাযথভাবে মার্জ করে।

আপনার বিদ্যমান সমস্তগুলিকে একীভূত করতে চালান

perl /usr/share/awstats/tools/logresolvemerge.pl /var/log/nginx/access.log* > /tmp/nginx.tmplog

এটি সম্ভবত কিছুটা সময় নেবে।

তারপরে আপনি এই ফাইলটির উপরে একবার স্টাটস চালাতে পারেন (লগফাইলে যথাযথভাবে সেট করুন)।

তারপরে, আপনার অতি সাম্প্রতিক লগফাইলে চালানো উচিত - যা আপনার বর্তমান কনফিগারেশনটি করছে।

আপনি কত ঘন ঘন অ্যাংস্ট্যাট বনাম ঘূর্ণায়মান এনজিনেক্স লগফিলগুলি চালাচ্ছেন তার উপর নির্ভর করে আপনি এটি বর্তমান লগফিল এবং পূর্ববর্তী উভয়ই পড়তে চাইতে পারেন। (উদাহরণস্বরূপ, আপনি যদি প্রতিদিন 12 টায় এনজিনেক্স লগফিলগুলি ঘোরান, তবে প্রতিদিন 1 টায় অস্ট্রাস্ট চালানো থাকে, তবে যখনই অ্যাডস্ট্যাটগুলি চালিত হয় তখন কেবল শেষ রোটেশন থেকে যা লেখা হয়েছিল তা থাকবে)। আপনি এইভাবে আপনার লগফাইলে কমান্ডের মধ্যে লগরেসলভ.পিএল ব্যবহার করতে পারেন:

LogFile="/usr/share/awstats/tools/logresolvemerge.pl /var/log/nginx/access.log /var/log/nginx/access.log.1.gz |"

এটি স্ট্র্যাটেস্টকে দুটি লগফিলের সাথে প্যারামিটার হিসাবে লগরেসলভার.পিএল কমান্ড চালনা করতে বলেছে এবং অস্ট্রাস্টগুলি সেই স্ক্রিপ্টের আউটপুটে পড়বে (পাইপটি সেটাই করে)


আমি জানতাম না অ্যাজস্ট্যাটস স্ক্রিপ্টটি কনফিগার ফাইলে পাইপগুলি পরিচালনা করতে পারে। নিস +1।
d -_- বি

সম্মত - logresolvemerge.plআনস্ট্যাটকে আউটপুট পাইপ দেওয়া একটি দুর্দান্ত সমাধান।
জেজ

বংশীধ্বনিতুল্য সম্পর্কে দেখতে stackoverflow.com/questions/13832701/...
brauliobo

7

বিকল্পভাবে, আপনি GoAccess হিসাবে একটি রিয়েল-টাইম লগ বিশ্লেষক ব্যবহার করতে পারেন। এটি সত্যিই দ্রুত এবং আপনার কোনও লগ আনজিপ করার দরকার নেই।apache & nginx

http://goaccess.prosoftcorp.com/

zcat -f access.log* | goaccess -a -s -b

অথবা

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