[এটি সিস্টেমড সিস্টেমে জার্নাল্ডগুলি ব্যাপকভাবে গ্রহণের কয়েক বছর আগে লেখা হয়েছিল এবং এটি এতে স্পর্শ করে না। বর্তমানে (2018 এর শেষের দিকে) নীচে বর্ণিত জার্নাল্ড এবং (আর) সিসলগ উভয়ই ডিবিয়ানের মতো ডিস্ট্রোজে ব্যবহার করা হয়। অন্যদের কাছে, আপনি যদি পাশাপাশি এটি ব্যবহার করতে চান তবে আপনাকে আরএসস্লগ ইনস্টল করতে হতে পারে তবে জার্নাল্ডের সাথে সংহতকরণ সোজা ward]
আমি উবুন্টু সম্পর্কিত বিষয়ে লগিং সম্পর্কে বিশেষভাবে আলোচনা করব না, যেহেতু বিষয়টি সাধারণভাবে লিনাক্সের জন্য প্রমিত করা হয় (এবং আমি বিশ্বাস করি যে আমার বা যা বলতে হবে তা সব সাধারণভাবে কোনও স্বাদে * নিক্সের ক্ষেত্রেও সত্য, তবে তা নয়) তার জন্য আমার কথাটি নিন)। আমি এই প্রশ্নের উত্তর দেওয়ার বাইরে "লগগুলি কীভাবে পড়ব" সম্পর্কেও বেশি কিছু বলব না:
অনুমানটি কি আরও সঠিক যে এগুলি মানব পাঠযোগ্যতার জন্য রচিত বা এগুলি সাধারণত মূল্যায়ন করা হয় এবং অন্যান্য সরঞ্জাম দ্বারা ব্যবহৃত হয়?
আমি অনুমান করি যে অ্যাপ্লিকেশনটির উপর নির্ভর করে, তবে সাধারণভাবে, কমপক্ষে সিসলগে যা যা হয় সে সম্পর্কে (নীচে দেখুন), তাদের মানব পাঠযোগ্য হতে হবে। "আমার কাছে অর্থবহ" আর একটি বিষয়, হ'ল। তবে এগুলি এমনভাবে কাঠামোগত করা যেতে পারে যা নির্দিষ্ট উদ্দেশ্যে স্ট্যান্ডার্ড সরঞ্জামগুলির (গ্রেপ, অ্যাজক ইত্যাদি) পার্সিংকে সহজ করে তোলে।
যাইহোক, প্রথমে, অ্যাপ্লিকেশনগুলির নিজস্ব পার্থক্য রয়েছে এবং সিস্টেম লগার ব্যবহার করে এমন অ্যাপ্লিকেশনগুলির মধ্যে পার্থক্য রয়েছে। ডিফল্টরূপে অ্যাপাচি পূর্ববর্তী, যদিও এটি পরে করার জন্য কনফিগার করা যেতে পারে (যা আমি মনে করি বেশিরভাগ লোকেরা অনাকাঙ্ক্ষিত মনে করবে)। অ্যাপ্লিকেশনগুলি যা তাদের নিজস্ব লগিং করে ফাইল (গুলি) এর জন্য কোনও অবস্থান ব্যবহার করে যে কোনও উপায়ে এটি করতে পারে, তাই এ সম্পর্কে বলার মতো খুব বেশি কিছু নেই। সিস্টেম লগার সাধারণত হিসাবে উল্লেখ করা হয় syslog
।
syslog- র
"সিসলগ" আসলেই একটি মান যা ডেমোনের প্রক্রিয়া প্রয়োগ করে সাধারণভাবে সিজলগড (ডি ডেমনের জন্য!) বলা হয়। উবুন্টু সহ বর্তমানে লিনাক্সে ব্যবহৃত সিম্লগ ডেমন বর্তমানে ব্যবহৃত হয় rsyslogd
। Rsyslogd অনেক কিছু করতে পারে, তবে বেশিরভাগ ডিস্ট্রোজে বাক্সের বাইরে কনফিগার করা হিসাবে এটি একটি aতিহ্যবাহী সিসলগকে অনুকরণ করে যা এতে সরল পাঠ্য ফাইলগুলিতে স্টাফ সাজায় /var/log
। আপনি এটির জন্য ডকুমেন্টেশন পেতে পারেন /usr/share/doc/rsyslog-doc-[version]
(সাবধান, একটিও রয়েছে /usr/share/doc/rsyslog-[version]
, তবে এটি উত্স প্যাকেজ যেমন NEWS
এবং এর থেকে কেবলমাত্র বিজ্ঞপ্তিগুলি ChangeLog
)। যদি এটি সেখানে থাকে তবে এটি এইচটিএমএল, তবে স্ট্যাক এক্সচেঞ্জ স্থানীয় ফাইল লিঙ্কগুলি এম্বেড করার অনুমতি দেয় না:
file://usr/share/doc/rsyslog-doc/index.html
সুতরাং আপনি এটি অনুলিপি করার চেষ্টা করতে পারেন। যদি এটি সেখানে না থাকে তবে এটি কোনও পৃথক প্যাকেজের অংশ হতে পারে যা ইনস্টল করা হয়নি। আপনার প্যাকেজিং সিস্টেমের জিজ্ঞাসা করুন (যেমন, apt-cache search rsyslog | grep doc
)।
কনফিগারেশনটি রয়েছে /etc/rsyslog.conf
, যার একটি ম্যানুয়াল পৃষ্ঠা রয়েছে, man rsyslog.conf
যদিও ম্যানুয়াল পৃষ্ঠাটি একটি সূক্ষ্ম রেফারেন্স তৈরি করে, এটি পরিচিতি হিসাবে কম কম অনুভূত হতে পারে। ভাগ্যক্রমে, স্টক এর মূলসূত্রগুলি rsyslog.conf traditionalতিহ্যবাহী syslog.conf এর সাথে সামঞ্জস্য করে, যার জন্য চারপাশে প্রচুর পরিচিতি এবং টিউটোরিয়াল রয়েছে। এটি একটি উদাহরণস্বরূপ; তুমি কি, যখন আপনার স্থানীয় rsyslog.conf এ পীয়ারিং, যে থেকে দূরে নিতে চান একটি বোঝা সুবিধা এবং অগ্রাধিকার ( "অগ্রাধিকার" কখনও কখনও হিসাবে উল্লেখ করা হয় loglevel), যেহেতু এগুলি পূর্বোক্ত সিসলগ স্ট্যান্ডার্ডের অংশ। এই স্ট্যান্ডার্ডটি গুরুত্বপূর্ণ হওয়ার কারণটি হ'ল আরএসস্লগ আসলে কর্নেলের মাধ্যমে তার স্টাফ পেয়ে থাকে এবং কার্নেলটি প্রয়োগ করে তা স্ট্যান্ডার্ড।
$
Rsyslog.conf- র নির্দেশাবলী সম্পর্কিত, এগুলি rsyslog নির্দিষ্ট এবং আপনি যদি thatচ্ছিক ডক প্যাকেজটি ইনস্টল করেন তবে আপনি তাদের জন্য একটি গাইড খুঁজে পাবেন rsyslog_conf_global.html
।
মজা করুন ... অ্যাপ্লিকেশনগুলি সিস্টেম লগার কীভাবে ব্যবহার করে সে সম্পর্কে আপনি যদি আগ্রহী হন তবে দেখুন man logger
এবং man 3 syslog
।
লগ রোটেশন
লগগুলি ঘোরানোর আদর্শিক উপায়গুলি একটি সরঞ্জাম logrotate
(যা একটি রয়েছে man logrotate
) এর মাধ্যমে। লোগ্রোটেট ব্যবহারের আদর্শিক পদ্ধতিটি ক্রোন ডেমনের মাধ্যমে হয় , যদিও এটি সেভাবে করা হয় না (উদাহরণস্বরূপ, আপনি যদি প্রতিদিন আপনার ডেস্কটপটি বন্ধ করে রাখেন তবে সিসলগ শুরু হওয়ার আগে আপনি এটি একবার বুটে একবার করতে পারেন তবে, স্পষ্টতই, ফাইল সিস্টেমটি মাউন্ট করার পরে rw)।
লোগ্রোটেটের এখানে একটি ভাল ভূমিকা রয়েছে । নোট করুন যে লোগ্রোটেটটি কেবল সিসলগ স্টাফের জন্য নয় , এটি কোনও ফাইলের সাথেই ব্যবহার করা যেতে পারে। বেস কনফিগারেশন ফাইলটি /etc/logrotate.conf
, তবে যেহেতু কনফিগারেশনের একটি "অন্তর্ভুক্ত" নির্দেশিকা থাকে তাই সাধারণত বেশিরভাগ স্টাফ /etc/logrotate.d
ডিরেক্টরিতে পৃথক ফাইলে যায় (এখানে ডি ডিরেক্টরিটি ডিমন হিসাবে নয়; লোগ্রোটেটটি ডিমন নয়)।
একটি গুরুত্বপূর্ণ জিনিস বিবেচনা যখন logrotate ব্যবহার কিভাবে একটি আবেদন পুনরায় কাজ করবে পরার যখন তার লগ ফাইল "আবর্তিত" হয় - অন্য কথায়, সরানো - অ্যাপ্লিকেশানটি চলছে। ডাব্লুআরটি (র) সিসলোগড, এটি কেবল সেই লগটিতে লেখা বন্ধ করবে (আমি মনে করি এটির জন্য সুরক্ষার ন্যায্যতা আছে)। এর সাথে মোকাবিলার স্বাভাবিক উপায় হ'ল postrotate
সিসলগকে পুনরায় চালু করতে বলা (এবং এর সমস্ত ফাইল পুনরায় খোলার), এজন্যই আপনি লোগ্রোটেট কনফাইট ফাইলগুলিতে সাইনগআপ ডিমনকে সাইনগআপ প্রেরণে একটি নির্দেশিকা দেখতে পাবেন ।