Mongodb: लॉग फ़ाइल खाली रहती है


0

कल मैंने 2 फाइलों को / var / log / mongodb से दूसरी निर्देशिका में स्थानांतरित कर दिया। फ़ाइल का नाम: "mongod.log", "mongod.log.1" (बड़े आकार के साथ इस निर्देशिका में केवल 2 फाइलें)। इस बिंदु पर मोंगोडब चल रहा था, मुझे उम्मीद थी कि मोंगोडब एक नया मोंगोड.लॉग बनाता है, लेकिन उसने ऐसा नहीं किया। फिर मैंने मैन्युअल रूप से एक mongod.log बनाया और "chown mongodb: mongodb mongod.log" बनाया, लेकिन फ़ाइल अभी भी खाली है।

मैं मोंगोडब को रोक नहीं सकता, मैं मोंगोडब को इस फाइल में फिर से लॉग इन करने के लिए कैसे मजबूर कर सकता हूं? Mongod.conf ठीक है।

जवाबों:


1

इस मूल फ़ाइल को अभी भी mongodइस तथ्य के बावजूद खुला रखा जा रहा है कि आपने इसे स्थानांतरित किया है, और जब तक आप इस mongodप्रक्रिया को रोकते हैं या निम्नलिखित प्रयास नहीं करते हैं, तब तक यह फ़ाइल जारी रहेगी।

  1. mongod.logआपके द्वारा बनाई गई नई फ़ाइल को निकालें/var/log/mongodb
  2. पुरानी mongod.logफ़ाइल को वापस अंदर ले जाएं/var/log/mongodb
  3. शेल से logRotateकमांड जारी करें mongo(जब प्रासंगिक से जुड़ा हो mongod)

नोट: वैकल्पिक रूप से चरण 3 के लिए आप एक kill -SIGUSR1 <pid of mongod>ही चीज़ को प्राप्त करने के लिए भेज सकते हैं ।

एक बार यह हो जाने के बाद, अब आपके पास mongod.logफ़ोल्डर में एक नई छोटी फ़ाइल होगी, साथ ही पिछली फ़ाइल (अब नहीं लिखी जा रही है) को काट दिया जाएगा। सटीक नाम उस संस्करण पर निर्भर करता है जिसे आप कुल्ला कर रहे हैं, जिसका आपने उल्लेख नहीं किया है, लेकिन अब आप बड़ी लॉग फ़ाइलों को दूसरी निर्देशिका में स्थानांतरित करने के लिए स्वतंत्र हैं (मैं उन्हें संपीड़ित करने की सलाह दूंगा, वे आसानी से संकुचित होते हैं)।

यदि आकार एक नियमित मुद्दा है, तो मैं इसे क्रोन जॉब के रूप में करने की सलाह दूंगा या आगे बढ़ने वाली प्रक्रिया को स्वचालित करने के लिए।


0

बस रनटाइम पर नीचे कमांड जारी करें और आप लॉग को एक निर्दिष्ट लॉग फ़ाइल में लिखा हुआ देख सकते हैं:

db.adminCommand( { logRotate : 1 } )

उम्मीद है की यह मदद करेगा !!!

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