ওএসএক্সে লোগ্রোটেটের সমতুল্য


52

কি logrotate কোথাও ওএসএক্স গোপন, অথবা একটা সমতূল্য? এটা ভিতরে না /usr/sbin


আমি লক্ষ্য করেছি সেখানে নিউজলিজ রয়েছে, তবে এটি একেবারে একরকম নয় এবং এর জন্য মূল প্রয়োজন।
স্টিভ বেনেট

লোগ্রোটেট পোর্ট করা যায়, আমি অবাক হই।
টম ও'কনোর

চেক / ইত্যাদি / পর্যায়ক্রমিক, আমি বিশ্বাস করি যে লগ রোটেশন সেখানে শেল স্ক্রিপ্টগুলির সেট হিসাবে ডিফল্টরূপে প্রয়োগ করা হয়। ফাইল আকারের উপর ভিত্তি করে এটি করার একটি উপায়ের জন্য নিউজলাইগ (/etc/newsyslog.d এবং ম্যান পৃষ্ঠা) দেখুন।
malcolmpdx

টিপসের জন্য ধন্যবাদ - সত্যিই / ইত্যাদি / পর্যায়ক্রমিক স্ক্রিপ্ট আছে
স্টিভ বেনেট

@ স্টেভেনেট আরও কীভাবে লোকেরা তাদের "সমালোচক" ব্যাজ পেতে চলেছে? কিছু লোক কেবল ব্যাজ এবং খ্যাতির জন্য এখানে আছেন, আপনি কি জানেন না।
মার্ক ফিশার

উত্তর:


23

ব্রায়ান আর্মস্ট্রংয়ের উত্তরের উপর ভিত্তি করে, এখানে আরও কিছুটা ব্যাখ্যা এবং সংশোধন করার মতো কিছু রয়েছে। এটি হোমব্রিউ দ্বারা ইনস্টল করা ওএসএক্স-এ পোস্টগ্রিজ দ্বারা নির্মিত লগ পরিচালনা করে। এ অবস্থিত /etc/newsyslog.d/postgresql.conf:

# logfilename                           [owner:group]      mode count size(KB)  when  flags [/pid_file]                            [sig_num]
/usr/local/var/postgres/postgresql.log  :                  600  2     2048      *     J     /usr/local/var/postgres/postmaster.pid 

এটি লগ ফাইলটি আকারে 2MB এ পৌঁছায়, 2 টি সংরক্ষণাগার রাখবেন (মোট ব্যবহৃত 6MB স্টোরেজ জন্য) এবং সংরক্ষণাগারগুলি bzip2- সংকুচিত করবে। লগ ফাইলগুলি একবার ঘোরানোর পরে এটি পুনরায় খোলার জন্য পোস্টগ্রিজ প্রক্রিয়াটি অবহিত করবে, যা নতুন লগ এন্ট্রি পেতে এবং মেশিনটি পুনরায় চালু না করে ডিস্কের স্থানটি মুক্ত করার জন্য প্রয়োজনীয়।

মাপটি কেবিতে রয়েছে, বাইট নয় note

আপনি কনফিগার ফাইলটি (কোনও ফাইলকে প্রভাবিত না করে) পরীক্ষা করতে পারেন sudo newsyslog -nvv

নিউজলাইগ ডকুমেন্টেশন এখানে অবস্থিত: http://www.freebsd.org/cgi/man.cgi?newsyslog.conf(5) । এটিও ব্যবহৃত: http://www.redelijkheid.com/blog/2011/3/28/adding-custom-logfile-to-os-x-server-log-rotation.html


21

ওএস এক্স এর লগগুলিকে প্রশ্নে লগের ধরণের উপর নির্ভর করে ঘোরানো / মেয়াদোত্তীর্ণ / ইত্যাদির বিভিন্ন উপায় রয়েছে:

  1. নিয়মিত লগ ফাইলের জন্য (অর্থাত্ পাঠ্য ফাইল যা নিয়মিত যুক্ত করা হয়), নিউজলাইগ আকার বা সময়ের উপর ভিত্তি করে এগুলি ঘোরতে পারে, যদিও এর মতো অনেকগুলি বিকল্প রয়েছে বলে মনে হয় না logrotate। এটি দ্বারা কনফিগার করা হয়েছে /etc/newsyslog.confএবং /etc/newsyslog.d/*(সাধারণত, আপনার /etc/newsyslog.d/পরিচালনা তালিকায় লগ যুক্ত করার জন্য আপনার ফাইলগুলি যুক্ত করা উচিত )।
  2. ওএস এক্স এর সিসলোগ সিস্টেমটি এই প্লেইন-পাঠ্য বিন্যাস থেকে মূলত ইন ডাটাবেস ফর্ম্যাটে স্থানান্তরিত করছে /var/log/asl/। আমি এখনও এই সিস্টেমটি পুরোপুরি বুঝতে পারি না, তবে এই ডাটাবেসটি aslmanager দ্বারা মুছে গেছে বলে মনে হচ্ছে যা দ্বারা কনফিগার করা হয়েছে /etc/asl.conf
  3. ডিরেক্টরি আছে পৃথক লগ "এন্ট্রি" পৃথক ফাইল (প্রধানত হিসেবে নিজেকে যুক্ত করার জন্য /Library/Logs/CrashReporter/), ফাইল দ্বারা পার্জ করুন /etc/periodic/daily/100.clean-logs। এর নীতিগুলি (কোন ডিরেক্টরিগুলি স্ক্যান করতে হবে এবং ফাইলগুলি কতক্ষণ ছেড়ে যাবে) এগুলি কনফিগার করা আছে /etc/defaults/periodic.confতবে আপনি যদি সেগুলি ওভাররাইড / পরিবর্তন করতে চান তবে আপনার নিজের পছন্দসইটি তৈরি করে /etc/periodic.conf.localসেখানে রাখা উচিত ।

আপনি যা ঘুরতে চান তা যদি এই মডেলের /etc/periodic/daily/কোনওটির সাথে মানানসই না হয় তবে আপনি নিজের স্ক্রিপ্টগুলি (যা প্রতি সকালে সকাল 3: 15 এ চালানো হবে), /etc/periodic/weekly/(প্রতিটি শনিবার সকালে 3: 15-এ) চালিয়ে যেতে পারেন, বা /etc/periodic/monthly/(প্রথমটির মধ্যে প্রতি মাসে সকাল সাড়ে ৫ টায়)।


11

newsyslogওএসএক্স এ স্বয়ংক্রিয়ভাবে চলে, আমি /etc/newsyslog.d/rails_apps.confআমার ডেভ লগ ফাইলগুলি 5 এমবিতে ছাঁটাইতে এই জাতীয় একটি কনফিগার ফাইল ব্যবহার করি

# logfilename                           [owner:group]   mode count size     when  flags [/pid_file] [sig_num]
/Users/barmstrong/code/**/log/*.log                     666  0     5242880  *     G

আকারটি কেতে থাকে এবং মালিকের জন্য ":" প্রয়োজন: গ্রুপটি ফাঁকা থাকলেও
ব্রায়ান অ্যাশ

9

আপনি হোমব্রুয়ের মাধ্যমে লোগ্রোটেট পেতে পারেন। এটি সেট আপ থেকে আমার নোটগুলি এখানে।

ইনস্টল করুন

brew install logrotate

লগ রোটেশন কনফিগার করুন

লগ রোটেশন কনফিগারেশন ফাইলগুলি রয়েছে /usr/local/etc/logrotate.d/

কনফিগার ফাইল সম্পাদনা করুন। উদাহরণস্বরূপ, আমি প্রবর্তিত কিছু "/var/log/tend_*.log" ফাইলগুলিকে ঘোরানো চেয়েছিলাম:

sudo vi /usr/local/etc/logrotate.d/tend.conf

সূচিপত্র: /var/log/tend_*.log { daily copytruncate rotate 3 size 10M compress }

এটি পরীক্ষা করে দেখুন

sudo logrotate -v -f /usr/local/etc/logrotate.d

পরিসেবা আরম্ভ

sudo brew services start logrotate

পরিষেবা পুনরায় চালু করুন

sudo brew services restart logrotate


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