Syslog, rsyslog और syslog-ng में क्या अंतर है?


61

मैं syslog, rsyslog और syslog-ng में थोड़ा भ्रमित हूं।

मुझे स्रोत कोड कहां से मिल सकता है syslog()?

क्या rsyslog और rsyslogd में कोई अंतर है?


D अक्षर के साथ rsyslogd rsyslogd डेमन है
c4f4t0r

3
पूर्णता के लिए, मैं एक ऐसा अंतर जोड़ूंगा जो मैंने पाया है कि आप पर प्रभाव डाल सकता है या नहीं। syslog-ng fopen का उपयोग करता है जबकि rsyslog fappend का उपयोग करता है। यह मायने रखता है अगर आप chattr +aअपने syslog फ़ाइलें। ज्यादातर लोग ऐसा नहीं करते हैं, मेरे पास सिर्फ एक विशेष उपयोग-मामला था और यह है कि मुझे कैसे पता चला। मैंने अभी बहुत से लोगों को तंग किया है।
हारून

जवाबों:


52

मूल रूप से, वे सभी समान हैं, जिस तरह से वे सभी केंद्रीय रिपॉजिटरी में विभिन्न प्रकार के सिस्टम से डेटा लॉगिंग की अनुमति देते हैं।

लेकिन वे तीन अलग-अलग परियोजनाएं हैं, प्रत्येक परियोजना अधिक विश्वसनीयता और कार्यात्मकता के साथ पिछले एक को बेहतर बनाने की कोशिश कर रही है।

यह Syslogपरियोजना बहुत ही पहली परियोजना थी। यह 1980 में शुरू हुआ था। यह Syslogप्रोटोकॉल के लिए मूल परियोजना है । इस समय Syslog एक बहुत ही सरल प्रोटोकॉल है। शुरुआत में यह केवल परिवहन के लिए यूडीपी का समर्थन करता है, ताकि यह संदेशों के वितरण की गारंटी न दे।

अगला syslog-ng1998 में आया । यह syslogनई सुविधाओं के साथ बुनियादी प्रोटोकॉल का विस्तार करता है :

  • सामग्री-आधारित फ़िल्टरिंग
  • एक डेटाबेस में सीधे प्रवेश करना
  • परिवहन के लिए टीसीपी
  • टीएलएस एन्क्रिप्शन

अगला Rsyslog2004 में आया । यह syslogनई विशेषताओं जैसे प्रोटोकॉल का विस्तार करता है:

  • RELP प्रोटोकॉल समर्थन
  • बफर ऑपरेशन सपोर्ट

मान लीजिए कि आज वे तीन समवर्ती परियोजनाएं हैं जो संस्करणों पर अलग-अलग विकसित हुई हैं, लेकिन पड़ोसियों के साथ क्या कर रही हैं, इसके बारे में समानांतर रूप से बढ़ी हैं।

मुझे व्यक्तिगत रूप से लगता है कि आज syslog-ngज्यादातर मामलों में संदर्भ है, क्योंकि यह एक आसान और व्यापक सेटअप और कॉन्फ़िगरेशन के अलावा मुख्य विशेषताओं की पेशकश करने वाली सबसे परिपक्व परियोजना है।


1
रिकॉर्ड के लिए, OpenBSD का syslog टीसीपी और टीएलएस (और यूडीपी) कर सकता है
नील मैकग्यूगन

32

ये 3 विभिन्न प्रकार के लॉग मैनेजर हैं: यह आपके सिस्टम को फिल्टर इकट्ठा करने और लॉग को स्टोर / ट्रांसमिट करने में सक्षम बनाता है।

  • Syslog(डेमन नाम भी sysklogd) सामान्य लिनक्स वितरण में डिफ़ॉल्ट एलएम है। प्रकाश लेकिन बहुत लचीला नहीं है, आप फ़ाइलों और नेटवर्क (टीसीपी, यूडीपी) पर सुविधा और गंभीरता के आधार पर लॉग फ्लक्स को पुनर्निर्देशित कर सकते हैं।
  • rsyslogएक "उन्नत" संस्करण है, sysklogdजहाँ कॉन्फ़िगर फ़ाइल एक समान रहती है (आप किसी syslog.confफ़ाइल को सीधे कॉपी कर सकते हैं rsyslog.confऔर यह काम करता है); लेकिन आपके पास बहुत कुछ नया सामान है

    • आप प्रतिबंधों (बंदरगाहों, स्रोत आईपी) के साथ टीसीपी / यूडीपी / ... कनेक्शन सुन सकते हैं
    • आप बहुत सारे मॉड्यूल लोड कर सकते हैं
    • आप प्रोग्राम, स्रोत, संदेश, पीआईडी ​​आदि द्वारा लॉग फ़िल्टरिंग को भेदभाव कर सकते हैं (उदाहरण के लिए, प्रत्येक संदेश जो संदेश के साथ टैग किया गया है "फ़ाइल को बंद कर दिया गया" बंद हो गया है।)
    • आप एक या अधिक नियमों के बाद संदेश छोड़ सकते हैं । http://www.rsyslog.com पर जाएं जो वास्तव में बहुत अच्छा है
  • Syslog- एनजी "नेक्स्ट-जेन" है। मुझे लगता है कि यह लॉग्स को प्रबंधित करने का सबसे अच्छा तरीका है: सब कुछ ऑब्जेक्ट (स्रोत, गंतव्य, फ़िल्टर और बहुत अग्रेषण नियम) और वाक्यविन्यास स्पष्ट है। मुझे कार्यक्षमता के संदर्भ में संदेह है कि rsyslogऔर syslog-ngअलग हैं।


8
मेरा तर्क है कि दोनों syslog- एनजी और rsyslog 'अगले जीन' हैं, या पुराने syslog के लिए कम से कम नया प्रतिस्थापन। दोनों सुविधाओं के मामले में तुलनीय हैं, लेकिन दोनों के लिए वाक्य रचना बहुत अलग है। syslog- एनजी का अपना अनूठा सिंटैक्स है, जबकि rsyslog का सिंटैक्स पुराने syslog सिंटैक्स की तरह अधिक है।
स्टीफन लासिवस्की

9
और फिर वहाँ है journalctl/journald
Mausy5043

9

मुझे syslog के लिए स्रोत कोड कहां से मिल सकता है ()

यह glibc या अन्य यूनिक्स फ्लेवर पर libc कार्यान्वयन द्वारा प्रदान किया गया है। यह कॉल मूल रूप से आपके संदेश को syslog यूनिक्स डोमेन सॉकेट / देव / लॉग में सबमिट करता है। यह सॉकेट सामान्य रूप से सिस्टम लकड़हारा (जैसे rsyslog, syslog-ng, nxlog, आदि) द्वारा बनाया जाता है।


3

वे सभी syslog डेमॉन हैं, जहाँ rsyslog और syslog-ng पारंपरिक syslogd (अधिकांशतः अस्वीकार्य) के लिए तेज़ और अधिक सुविधा संपन्न प्रतिस्थापन हैं। syslog- एनजी खरोंच से शुरू हुआ (एक अलग विन्यास प्रारूप के साथ) जबकि rsyslog मूल रूप से syslogd का एक कांटा था, जो इसके सिंटैक्स का समर्थन और विस्तार कर रहा था। हाल के वर्षों में, rsyslog ने नए कॉन्फ़िगरेशन प्रारूप का भी समर्थन करना शुरू कर दिया। अब तक, बहुत बारीकियों और लौ युद्धों को शुरू किए बिना दोनों की तुलना करना वास्तव में कठिन है।

सामान्य रूप से Syslog काफी भ्रामक है क्योंकि यह कई चीजें हो सकती हैं। मुझे यहाँ नापसंद करने पर एक शॉट मिला: https://sematext.com/blog/2017/01/30/what-is-syslog-daemons-message-formats-and-protocols/

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