Vraag Wat is het verschil tussen syslog, rsyslog en syslog-ng?


Ik ben een beetje in de war in syslog, rsyslog en syslog-ng.

Waar kan ik de broncode voor krijgen syslog()?

Is er een verschil tussen rsyslog en rsyslogd?


44
2018-05-15 14:18


oorsprong


rsyslogd met de D-letter is de rsyslogd-daemon - c4f4t0r
Voor de volledigheid zal ik een verschil toevoegen dat ik heb gevonden en dat mogelijk wel of geen invloed op u heeft. syslog-ng gebruikt fopen terwijl rsyslog fappend gebruikt. Dit is belangrijk als jij chattr +a je syslog-bestanden. De meeste mensen doen dit niet, ik had gewoon een speciale use-case en zo kwam ik erachter. Ik heb zojuist veel mensen in elkaar gekropen. - Aaron


antwoorden:


Kortom, ze zijn allemaal hetzelfde, in de manier waarop ze allemaal het loggen van data van verschillende soorten systemen in een centrale repository toestaan.

Maar het zijn drie verschillende projecten, waarbij elk project de vorige probeert te verbeteren met meer betrouwbaarheid en functionaliteiten.

De Syslog project was het allereerste project. Het begon in 1980. Het is het rootproject van Syslog protocol. Op dit moment is Syslog een heel eenvoudig protocol. In het begin ondersteunt het alleen UDP voor transport, zodat het de aflevering van de berichten niet garandeert.

De volgende kwam syslog-ng in 1998. Het breidt fundamenteel uit syslog protocol met nieuwe functies zoals:

  • op inhoud gebaseerd filteren
  • Rechtstreeks inloggen in een database
  • TCP voor transport
  • TLS-codering

De volgende kwam Rsyslog in 2004. Het breidt zich uit syslog protocol met nieuwe functies zoals:

  • Ondersteuning RELP-protocol
  • Ondersteuning voor gebufferde bediening

Laten we zeggen dat het vandaag drie gelijktijdige projecten zijn die afzonderlijk zijn gegroeid naar versies, maar ook parallel zijn gegroeid met betrekking tot wat de buren aan het doen waren.

Ik denk dat persoonlijk vandaag syslog-ng is in de meeste gevallen de referentie, omdat dit het meest volwassen project is met de belangrijkste functies die u mogelijk nodig hebt, naast een eenvoudige en uitgebreide installatie en configuratie.


39
2018-05-15 15:35



Voor de goede orde, kan OpenBSD's syslog TCP en TLS (en UDP) doen - Neil McGuigan


dit zijn 3 verschillende soorten logboekbeheerders: hiermee kan uw systeem filter verzamelen en logboeken verzenden / opslaan.

  • Syslog (daemon ook genoemd sysklogd) is de standaard LM in gewone Linux-distributies. Licht maar niet erg flexibel, u kunt logflux omleiden gesorteerd op functie en ernst naar bestanden en via netwerk (TCP, UDP).
  • rsyslog is een "geavanceerde" versie van sysklogd waar het configuratiebestand hetzelfde blijft (u kunt een kopie maken syslog.conf bestand rechtstreeks in rsyslog.conf en het werkt); maar je hebt veel nieuwe coole dingen die erbij komen:

    • Je kunt naar TCP / UDP / ... -verbindingen luisteren, met beperkingen (poorten, bron-IP's)
    • Je kunt veel modules laden
    • U kunt het loggen filteren op programma, bron, bericht, pid enz. (Bijvoorbeeld elk bericht gelabeld met het bericht "connexion closed" naar het bestand closed.log)
    • U kunt het bericht negeren na een of meer regels Bezoek http://www.rsyslog.com dat is inderdaad erg goed
  • Syslog-ng is "Next-Gen". Ik denk dat dit de beste manier is om logboeken te beheren: alles is object (bron, doel, filter en de erg doorstuurregel) en de syntaxis is duidelijk. Ik betwijfel in termen van functionaliteit dat rsyslog en syslog-ng zijn verschillend.


26
2018-05-15 15:21



Ik zou zeggen dat zowel syslog-ng als rsyslog 'next gen' zijn, of op zijn minst de nieuwere vervanging voor de oudere syslog. Beide zijn vergelijkbaar in termen van functies, maar de syntaxis voor beide is heel verschillend. syslog-ng heeft zijn eigen unieke syntaxis, terwijl de syntaxis van rsyslog meer lijkt op de oudere syslog-syntaxis. - Stefan Lasiewski
En dan is er journalctl/journald - Mausy5043


Waar kan ik de broncode vandaan halen voor syslog ()

Dit wordt verzorgd door glibc of de libc-implementaties op andere Unix-smaken. Deze oproep verzendt in principe uw bericht naar de syslog unix domain socket / dev / log. Deze socket wordt normaal gesproken gemaakt door de systeemlogger (bijvoorbeeld rsyslog, syslog-ng, nxlog, enz.).


6
2018-06-07 15:17





Het zijn allemaal syslog daemons, waarbij rsyslog en syslog-ng snellere en meer feature-rijke vervangingen zijn voor de (meestal niet-onderhouden) traditionele syslogd. syslog-ng startte vanaf nul (met een ander config-formaat) terwijl rsyslog oorspronkelijk een fork was van syslogd, waarmee de syntaxis werd ondersteund en uitgebreid. In de afgelopen jaren is rsyslog ook begonnen met het ondersteunen van een nieuwer configuratie-formaat. Inmiddels is het echt moeilijk om de twee te vergelijken zonder in te gaan op de specifieke details en beginnende vlammenoorlogen.

Syslog is over het algemeen nogal verwarrend omdat het meerdere dingen kan zijn. Ik had een poging om hier te disambigueren: https://sematext.com/blog/2017/01/30/what-is-syslog-daemons-message-formats-and-protocols/


1
2018-06-26 10:22