OS X में system.log लॉगिंग को अक्षम कैसे करें?


7

योसेमाइट के साथ मेरे समय के दौरान, मेरे पास एक सहज मुद्दा है जो लॉग इन हो जाता है system.log बिना रुके।

यह प्रश्न समस्या को हल करने के बारे में नहीं है।

मैं बकवास को रोकना चाहता हूं, क्योंकि वे उस ड्राइव पर लिखते हैं जो एक एसएसडी है, और उनके बिना कर सकता है।

मैं लॉग को लिखने को कैसे चुप कर सकता हूं या रोक सकता हूं?

संदेश कर्नेल और दोष से आते हैं IO80211ScanManager। उदाहरण:
Nov 19 02:04:46 Louis-MBP kernel[0]: IO80211ScanManager::startScan: pid 29 had pending scan request. Deleting.

वे लॉग पर हावी हैं, जिनके 4000 सबसे हालिया संदेश आमतौर पर एक दिन के बारे में कवर करते हैं।

जवाबों:


8

System.log में लॉगिंग को /etc/asl.conf फ़ाइल द्वारा नियंत्रित किया जाता है। डिफ़ॉल्ट को सभी कर्नेल संदेश को system.log पर भेजना है। यदि आप प्राथमिकता स्तर प्रतिबंध जोड़ते हैं, तो तुच्छ प्रणाली की शिकायतों को लॉग नहीं किया जाएगा।

फ़ाइल /etc/asl.conf को संपादित करें और इस तरह दिखने वाली एक पंक्ति ढूंढें

? [= Sender kernel] file system.log

और इसे बदल दें

? [= Sender kernel] [<= Level error] file system.log

करने के लिए एक HUP संकेत भेजें syslogd प्रक्रिया (या बस अपने सिस्टम को पुनरारंभ करें) और लॉगिंग व्यवहार को बदल दिया जाएगा। उपयोग pgrep टर्मिनल से syslogd के लिए प्रक्रिया आईडी खोजने के लिए। जैसे

$ pgrep syslogd
21
$

फिर उस प्रक्रिया आईडी के साथ एक HUP संकेत भेजें kill कार्यक्रम।

$ sudo kill -HUP 21
$

इस प्रणाली के साथ आपकी अंतरंगता उत्साहजनक है। पहली नज़र में मैं अभी भी संदेश मिल रहे हैं । हालांकि यह शांत है क्योंकि मैं टाइप करता हूं। मैं इसका उल्लेख करूंगा asl.conf अभी के लिए डॉक्स। सलाह के लिये धन्यवाद! BTW, एक HUP संकेत क्या है? क्या आप कृपया इसे हाइपरलिंक बनाने पर विचार करेंगे?
Louis

काम नहीं कर रहा ... कल के साथ शुरू करने की तत्काल सीमा के साथ आगे बढ़ने की कोशिश करेंगे critical, के बाद alert, और अंत में emergency अगर यह कैसे आदि मानव पृष्ठ उन्हें आदेश देता है।
Louis

@ उन स्तरों पर अन्य महत्वपूर्ण संदेश खो जाएंगे - प्राथमिकता से अधिक से अधिक फ़िल्टर करना बेहतर होगा। स्ट्रिंग IO80211ScanManager :: startScan पर
Mark

@ मर्क थैंक्स, मैं इस बात पर गौर करूंगा कि ऐसा कुछ कैसे पकड़ा जाए। अभी के लिए मैं इसे वापस चेतावनी में बदल देता हूं। लेकिन मुझे अब सामान्य विचार मिलता है कि कैसे लॉग को नियंत्रित करना शुरू किया जाए। यह पता चला है कि IO80211ScanManager wifi.log में भी दिखाई दे रहा था, इसलिए अभी के लिए मैंने इसे संपादित किया ? [<= Level notice] store कहना ? [<= Level warning] store। यह समझते हुए कि मुझे विभिन्न नोटिस नहीं मिल रहे हैं, अब तक अच्छा है!
Louis

मूल स्थिति के लिए यह सब कैसे उलटा है?
Sayan

1

कमांड के साथ सिस्टम लॉग हटाएं

sudo rm /System/Library/LaunchDaemons/com.apple.syslogd.plist

macOS iOS जैसा ही है। जो भी सेवा चल रही है उसे एक स्क्रिप्ट चलाने के लिए कमांड देने के लिए एक मुट्ठी में जमा किया जाता है। इसलिए यदि आप iOS में किसी सेवा को अक्षम या हटा सकते हैं तो आप इसे macOS में भी कर सकते हैं।

यह केवल बूट पर चल रहे सिस्टम लॉग सेवा को हटाता है, और कुछ नहीं। यदि आप कंसोल खोलते हैं तो आप मैन्युअल रूप से लॉगिंग चला सकते हैं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.