आपके पहले प्रश्न का उत्तर है:
हां, syslog () के लिए कोई भी कॉल अवरुद्ध है। हो सकता है कि बहुत कम समय के लिए, लेकिन यह अभी भी एक तुल्यकालिक कॉल है जिसमें एक फाइल डिस्क्रिप्टर शामिल है। man 3 syslog
अधिक धारावाहिकों के लिए देखें ।
जब तक आपके सर्वर अतुल्यकालिक आर्किटेक्चर और प्राइमिटिव का उपयोग नहीं करते हैं, तब तक हमेशा कुछ लॉकिंग रहेगा। Thsi को कम किया जा सकता है, लेकिन समाप्त नहीं किया जाता है, उदाहरण के लिए, लॉगिंग के लिए एक पृथक्करण का उपयोग करके। अन्य दो प्रश्नों के लिए मुझे वास्तव में नहीं पता है, लेकिन rsyslogd स्रोत कोड का निरीक्षण (और साथ ही syslog () कार्यों के परिवार के लिए) यह जानने का एकमात्र तरीका है।
सामान्य तौर पर, यदि आप यूडीपी: 514 "नेटवर्क सिसलॉग प्रोटोकॉल" के माध्यम से किसी बाहरी सर्वर में प्रवेश करते हैं, तो आप लगभग शून्य तक ताले बनाने की संभावनाएं लाते हैं। उच्च भार के दौरान कुछ लॉगिंग के संभावित नुकसान की कमी के साथ ।
सबसे पहले , "मूल" सर्वर में आपको यह सुनिश्चित करने की आवश्यकता है कि सभी लॉगिंग syslog के माध्यम से होती है। उदाहरण के लिए, अपाचे 2 में आपको निर्दिष्ट करने की आवश्यकता है:
ErrorLog "syslog:daemon"
अन्य सर्वरों के लिए कृपया उचित मैन पेज देखें। यदि आप यह सुनिश्चित नहीं कर सकते हैं, तो कृपया ध्यान रखें कि फाइलसिस्टम पर लॉगिंग बना सकते हैं
दूसरा , मूल rsyslogd कॉन्फ़िगरेशन में आप अपने द्वारा चुने गए सुविधा के लिए सभी syslog ट्रैफ़िक को निर्देशित करने के लिए कहते हैं (इस उदाहरण में "डेमॉन") एक या अधिक बाहरी syslog सर्वरों के लिए। Rsyslog कॉन्फ़िगरेशन फ़ाइल में आप निर्दिष्ट कर सकते हैं:
daemon.* @192.168.128.1
daemon.* @192.168.254.1
एक ही समय में दो अलग-अलग सर्वरों को भेजे जाने वाले लॉग की दो प्रतियां हैं।
तीसरा , गंतव्य सर्वर (ओं) में आप UDP: 514 पर syslog संदेश के रिसेप्शन को सक्षम करते हैं। यह (गंतव्य) rsyslogd कॉन्फ़िगरेशन फ़ाइल में है और सामान्य रूप से डिफॉल्ट द्वारा अक्षम किया गया है (यह अग्रणी # नंबर को हटाने के लिए पर्याप्त होगा:
$ModLoad imudp
$UDPServerRun 514
चौथा , वैकल्पिक लेकिन अत्यधिक अनुशंसित, मैं उच्च संकल्प टाइमस्टैम्प को भी सक्षम करूंगा:
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
साथ ही यह विकल्प सामान्य रूप से डिफ़ॉल्ट रूप से अक्षम है (पृथ्वी पर क्यों?)।