syslog-ng er et open source, gratis og forbedret version af syslogd projekt, der startede for ti år siden til Linux og UNIX-lignende styresystemer. Applikationen kan operere i server eller agent-tilstand, og støtter pålidelig TCP (Transmission Control Protocol).
Projektet giver brugerne en kommando-linje software, der med held kan anvendes som en levedygtig log management løsning til at skabe, indsamle, klassificere, filter, frem, samt at opbevare log messages.Features på et glanceKey funktioner omfatter høj ydeevne, betroede overførsel, øget pålidelighed, besked filtrering og sortering, event tagging og korrelation, understøttelse af de nyeste IETF standarder, og en stor brugergruppe.
Med syslog-ng software, vil dygtige systemadministratorer være i stand til at opbygge en fleksibel og pålidelig skovhugst infrastruktur, selv i heterogene miljøer, uden for meget besvær og i så kortest tid som possible.Command-line optionsThe Programmet indeholder en bred vifte af kommando -line muligheder, blandt hvilke vi kan nævne muligheden for at indstille listen med kolon separate mapper, der skal bruges for at søge efter moduler, se modul information, sætte filnavnet på konfigurationsfilen og vedholdende konfigurationsfil, skrive præprocesserede konfigurationsfil til en bestemt fil, parse og læs konfigurationsfil, indstille kontrol socket, samt at indstille antallet af I / O-arbejdstager threads.Getting startede med syslog-ngThe program er helt skrevet i programmeringssproget C, og det & rsquo; s distribueres som en universel kilder arkiv (tarball). For at installere det på din GNU / Linux-system, første søgen efter en pre-bygge binær pakke på standard software repositories af din distribution.
Hvis softwaren ikke er tilgængelig på din distribution, downloade den nyeste tar-arkiv fra Softoware, gemme det på din computer, pakker ud, åbne en Linux Terminal og navigere til placeringen af den udpakkede arkivfil med & lsquo; cd & rsquo; kommando.
Derefter udføre & lsquo; ./ konfigurere && gøre & rsquo; kommando til at optimere og kompilere programmet til din hardware arkitektur / styresystem, efterfulgt af & lsquo; make install & rsquo; kommando som root eller med sudo til at installere hele systemet og gøre den tilgængelig for alle brugere
Hvad er nyt i denne udgivelse:.
- < li> Features:
- Ny parameter tilføjet til loggen:. --permanent (-T) OLE wich er til at sende logfiler på ubestemt tid
- Rettelser:
- Fra nu vil syslog-ng ikke gå ned, når du bruger en Riemann destination og ingen attributter er indstillet.
- I nogle tilfælde program destination respawned under syslog-ng stop / genstart.
- Max pakke længde for spoof kilde er sat til 1024 (tidligere: 256).
- Fjernet syslog.socket fra tjenesten fil på systemer, der anvender systemd. Syslog-ng læser beskeder direkte fra tidsskrift på systemer med systemd.
- I nogle tilfælde localtime relaterede makroer havde en forkert værdi (f.eks. ÅR $).
- transaktionshåndtering rettet i SQL destination. I nogle tilfælde, når både vælge og indsætte kommandoer blev kørt i en enkelt transaktion, og vælg mislykkede (f.eks .: ved mssql), De logmeddelelser relateret til indsætte kommandoer, fordelt ved den ugyldige transaktion, gik tabt.
- Rettet en memleak i SQL destination driver. Den memleak opstod ved en af svigt de transaktionsomkostninger.
- Et certifikat, der ikke er indeholdt i listen over fingeraftryk afvises fra nu.
- værtsnavn indtjekning TLS certifikat er tilfældet ufølsom fra nu.
- Fix spinning om EOF for `unix-stream ()` sockets. Årsagen til spinning var, at en unix-dgram socket blev skabt, selv i tilfælde af unix-stream.
Hvad er nyt i version 3.6.1:
- Dette er den første produktion klar version af syslog- ng OSE 3.6. Mere end 25000 linjer FOF kode ændret, med omkring 500 fil ændret.
- Nye afhængigheder:
- PCRE er nu en nødvendig afhængighed af syslog-ng, og ikke er frivillig længere.
- Ændrede defaults:
- gevind tilstand er nu ** aktiveret ** som standard. For at slå den fra, skal du bruge `med gevind (ingen)` i den globale muligheder sektionen.
- versionering af `libsyslog-ng` internt bibliotek har ændret: I stedet for altid at bruge den aktuelle version nummer, vil vi nu forsøge at opretholde ABI kompatibilitet under hele en stabil gren. Derfor bruger vi kun de to første elementer i vores version som bunden af bibliotekets version. Andet nummer vil være en del af soname også, men det vil kun ændre sig, når vi bryde kompatibilitet.
- soname er sat til `libsyslog-ng-3.6.so.0`, og vil forblive uændret under alfa og beta udgivelser, selv når ABI ændringer. Vi vil begynde at støde den version, efter den første stabile udgivelse fra denne gren, hvis det er nødvendigt.
- `flush-linjer ()` indstilling nu som standard * 100 *, i stedet * 1 *, for øget hastighed.
- Features:
- Nye muligheder:
- En ny `custom-domæne ()` global indstilling blev indført, hvilket gør det muligt for administratoren at tilsidesætte den lokale domænenavn bruges af syslog-ng. Det påvirker alle lokalt genererede logmeddelelser.
- Tilføjet en `brug-rcptid ()` global indstilling, der fortæller syslog-ng for at tildele en reception id til hver meddelelse modtaget og genereret af syslog-ng. Dette id er tilgængelig som `$ RCPTID` makro, og er unik på en given vært. Tælleren ombrydes omkring ved 48 bit, og er aldrig nul.
- Nye drivere:
- `pseudofile ()` destination driver er en meget simpel chauffør, der tager sigte på at levere meddelelser til særlige filer i `/ proc` eller` / dev '. Den åbner og lukker filen på hver besked, i stedet for at holde det åbent. Den understøtter ikke skabeloner i filnavnet, og har ikke en kø (og som sådan, er ikke tilstrækkelig i høj trafik situationer).
- De nye `nodejs ()` kilde driver (implementeret som en SCL makro) tilføjer en kilde driver, der gør det muligt for syslog-ng til at acceptere meddelelser fra node.js programmer, der bruger den `winston` logning API.
- Den nye `systemd-syslog ()` kilde erstatter den tidligere implicit støtte til det samme. Brugere, der benytter systemd rådes til at bruge enten `systemet ()` kilde, eller den nye en, når de ønsker at modtage logs fra systemd via `/ run / systemd / tidsskrift / syslog` stikket.
- Den nye kilde driver systemd-journal () læser fra Journal direkte, ikke via syslog videresendelse stikket. Det `systemet ()` source standard at bruge denne kilde, når der registreres systemd.
- Tilføjet geargruppe omskrive objekt. Geargruppe tillader brugeren at ændre flere logmeddelelse egenskaber på en gang. Det giver også refererer den gamle værdi af ejendommen, da $ _ makro.
- Muligheder fra [Inkubator] [inkubator]:
- `$ (eller)` skabelon funktion, der returnerer den første ikke-tomme argument er nu inkluderet i syslog-ng selv.
- `$ (polstring)` skabelon funktion, til pad tekst med brugerdefinerede polstring til en given længde er også inkluderet.
- `$ (grafit-udgang)` skabelon funktion, der skal bruges til at sende målinger til [Graphite] [grafit] blev porteret over inkubatoren. Den `grafit ()` destination SCL blok er også tilgængelig nu, for at gøre det endnu nemmere at tale med grafit.
- `Riemann ()` destination, som gør det muligt at sende metrikker til systemet [Riemann] [Riemann] overvågning blev også porteret over inkubatoren.
- [grafit]: http://graphite.wikidot.com/
- [inkubator]: https://github.com/balabit/syslog-ng-incubator
- [Riemann]: http://riemann.io/
- gevind destinationer:
- En række funktioner blev gennemført for alle gevind destinationer:
- `amqp ()`, `MongoDB ()`, `Redis ()`, `Riemann ()`, `smtp ()` og `stomp ()`.
- Destinationerne fået støtte til `SEQNUM` vedholdenhed: tælleren vil blive bevaret på tværs genindlæser og genstarter .
- En ny valgmulighed kaldet `forsøg ()` blev gennemført for alle disse, der styrer, hvor mange gange en meddelelse levering prøvet før slippe den.
- `gashåndtaget ()` mulighed er nu gennemført, og arbejder for alle de ovennævnte destination drivere.
- Meddelelsen levering loop blev optimeret til at gøre mindre søvn / wakeup cykler, der skal gøre chaufførerne ikke blot hurtigere, men mere CPU venlige også.
- Diverse nye funktioner:
- `multi-line-tilstand ()` option fået en ny indstilling: `præfiks-suffix`, der fungerer på samme måde den` præfiks-garbage` (som er det nye navn for `regexp`), bortset fra at det føjer skraldet del til beskeden, i stedet for at kassere det.
- Denne nye funktion kan bruges til at arbejde omkring fraværet af en timeout.
- Filtre standard til PCRE matching, i stedet for den tidligere POSIX regexp standard.
- `systemet ()` kilde vil nu analysere `@ CIM markeret meddelelser som JSON, hvis JSON-modulet er til rådighed på run-time. Dette forbedrer inter-operation med anden software, der bruger * Almindelig Information Model *.
- Man kan nu bruge flere elementer i `tasten ()` og `udelukke ()` muligheder for enhver værdi-par erklæring.
- Det er nu muligt at indlæse ikke blot et enkelt certifikat, når du bruger TLS, men en certifikatkæde.
- Statistik:
- De statistikker counter for programtællere omfatter nu tidsstemplet for den seneste opdatering.
- En ny `statistik-levetid ()` global mulighed blev indført, som styrer hvor ofte dynamiske tællere udløbet. Timeren er ikke eksakt, kan nogle timere leve lidt længere end den angivne tid.
- Dynamiske tællere er nu ryddet op hver `statistik-levetid ()` minutter (misligholder til 10 minutter) i stedet for kun på genladninger. Denne ændring blev gjort for at reducere den hukommelse, der anvendes af dynamiske tællere.
- Der er nu en `internal_queue_length` statistik, som viser længden af det indre kø. Dette er mest nyttigt at se, om `interne ()` kilde er ikke tilsluttet, eller hvis den ikke bliver tømt hurtigt nok (hvilket igen indikerer en mere alvorlig fejl).
- MongoDB:
- `MongoDB ()` driver understøtter nu godkendelse, selv når du bruger replika sæt. Ved re-tilslutning til et andet medlem af sættet, vil driveren automatisk ny godkendelse.
- `--with-libmongo-client` mulighed for scriptet configure understøtter nu` auto` som en værdi, og vil derefter afsløre, om at bruge systemet versionen af biblioteket eller den interne kopi. Vi standard til `auto` nu, som foretrækker systembibliotek over det interne kopi.
- Driveren ikke automatisk tilføje et `_id` felt til beskeden: serveren vil gøre det automatisk, hvis ingen er til stede. Dette giver brugerne mulighed for at tilsidesætte feltet fra deres syslog-ng config.
- En ny `forsøg ()` option kan bruges til at fortælle driveren hvor mange gange det skal forsøge at indsætte en besked i databasen, før de giver op (standard 3). Dette løser det tilfælde, hvor en slyngelstat besked kunne holde op hele køen, som det blev forsøgt igen for evigt.
- driver nu muliggør `safe-mode ()` som standard.
- Der er nu en et-minuts timeout for MongoDB operationer. Hvis en operation timeout, vil det blive betragtet mislykkedes.
- Føreren kan nu oprette forbindelse til MongoDB via Unix domæne-sockets.
- `double ()` typen tip er nu understøttet af føreren.
- I MongoDB destination, gentilslutning i en replika-sæt miljø nu fungerer korrekt, og pålideligt.
- At opbygge syslog-ng med MongoDB destination, libmongo-klientversion 0.1.8+ kræves nu. (Den interne kopi er blevet opdateret i overensstemmelse hermed.)
- SMTP destination ændringer:
- `smtp ()` destination understøtter nu en 'forsøg () `mulighed, som styrer, hvor mange gange en meddelelse levering vil blive forsøgt før slippe den.
- Skabelonerne bruges i destinationen nu ære i tidszoner indstillinger.
- Føreren forsvinder, hvis ønskede indstillinger (nogen af `til ()`, `cc ()`, `BCC ()` og `fra ()` og `emne ()` og `krop ()`) er ikke indstillet.
- Unix domæne-sockets:
- `unix-dgram ()` og `unix-stream ()` kilder nu udpakke UNIX legitimationsoplysninger (PID, UID og GID af den afsendende ansøgning) fra bestået fejlmeddelelser, hvis overhovedet. På Linux og FreeBSD, er stien til den eksekverbare tilhører PID udvundet også, sammen med kommandolinje-argumenter.
- De ekstraherede værdier er tilgængelige i `$ {. Unix.pid}`, `$ {. Unix.uid}`, `$ {. Unix.gid}`, `$ {. Unix.exe}` og ` $ {. unix.cmdline} `henholdsvis.
- `systemet ()` kilde overskriver PID makro med værdien af `$ {. Unix.pid}`, hvis den findes.
- JSON:
- JSON-parser fået en `ekstrakt-præfiks ()` option, som kan bruges til at fortælle parser til kun udtrække JSON medlemmer fra en bestemt undertræ af den indkommende objekt.
- Eksempel: `JSON-parser (uddrag-præfiks (& quot; foo.bar [5] & quot;)),`
- Hvis man antager, at den indkommende objekt er opkaldt msg, svarer det til følgende javascript-kode: `msg.foo.bar [5]`
- Den resulterende udtryk skal være et JSON objekt, således at syslog-ng kan udtrække sine medlemmer i LogMessage navneværdipar.
- Dette virker også når objektet topniveau er et array, som `ekstrakt-præfiks ()` tillader brugen af et array indeks på det første indirection niveau, for eksempel: `JSON-parser (uddrag-præfiks (& quot [5] & quot;)), `, som kan oversættes til` msg [5] ` .
- `$ (format-JSON)` skabelon funktion håndterer nu `double ()` typen tip.
- Debugging:
- Når du sender beskeder til stderr i debug-mode, tilføjes i begyndelsen et tidsstempel til beskederne.
- Den nye `$ RUNID` makro er tilgængelig for skabeloner, som ændrer sin værdi, hver gang syslog-ng er genstartet, men ikke når genindlæses.
- En Valgrind undertrykkelse fil blev tilsat (tilgængelig under `contrib / Valgrind /`), for at hjælpe med debugging memory leaks i syslog-ng. Det undertrykker et par kendte falske positiver, og et par andre ting i tredjeparts-biblioteker.
- Et nyt værktøj, `systemet expand` sattes, som returnerer det,` systemet () `kilde ville udvide til.
- Fejlrettelser:
- Pålideligheden af `usertty ()` destination driver blev stærkt forbedret. Tidligere blev nogle dele af den ikke tråd-safe, der kan resultere i mærkelig opførsel.
- håndtering af escape relaterede flag `csvparser ()` blev ændret: I stedet for disse flag overskriver alle andre (selv ikke-escape relateret) flag, hvis flaget for at indstille er en flugt-flag, vil den holde alle ikke Escape flag, og sæt den nye. Hvis det er en ikke sådan et flag, så vil det slette alle flag, og sæt de tidligere escape flag, og det nye flag.
- Dette i det væsentlige, betyder, at når der fastsættes flag på en `csvparser ()`, hvis det er en flugt flag, kun undslippe flag vil blive berørt. Hvis ikke, derefter flygte flag påvirkes ikke på alle.
- SQL destination nu korrekt fortsætter $ seqnum optælling efter en reload, i stedet for at starte på en frisk.
- Casting fejl elimineret i Riemann destination, når metrisk påføres et tomt felt.
- Fra nu, syslog-ng altid udelukke attributter, der strider mod ejendomme i Riemann destination (ellers attributtens værdi ville tilsidesætte ejendommen).
- Når Tring at stoppe syslog-ng, mens en reload er i gang, syslog-ng vil nu korrekt lukket ned rent.
- Genindlæse en config fil, der indeholder runtime fejl nu ikke ender i et styrt, er den i stand til at fallback til den oprindelige config. (Runtime fejl: config fil er grammatisk gyldig, men som indeholder ugyldig værdi, f.eks .: forkert database kolonne navn)
- Når den lokale værtsnavn er ikke en FQDN, og den lokale resolver ikke returnere en FQDN også, syslog-ng ikke afbryde længere, men fortsætter med en ikke-FQDN værtsnavn efter udsender en advarsel på intern kilde.
- Desuden vil syslog-ng forsøge at løse FQDN hårdere:. Når flere navne returneres, vil det søge efter den første FQDN en, i stedet for at stoppe ved det primære navn
- `update-patterndb` script vil nu korrekt, når den aktuelle arbejdsmappe indeholder .pdb filer.
- Patterndb fast at anvende betingelse selvom kontekst-id mangler.
- Vi vil nu håndteres korrekt tid går baglæns i patterndb: det vil justere sin idé om aktuelle tid med systemet. Det retter en fejl hvor timeouts ikke fungerede korrekt, når systemet tid blev sat tilbage.
- `pdbtool merge` kommando vil nu generere udgave 4 patterndb filer.
- evne støtte Linux er nu korrekt registreres automatisk af scriptet configure, og standard off på FreeBSD 9+, som det skal.
- `fil ()` og `netværk ()` (herunder `TCP ()` et al) kilder vil nu korrekt sætte `$ SOURCE` makro.
- basicfuncs modulet blev fastsat til at arbejde korrekt på 32-bit arkitekturer.
- `stored` statistik ikke længere forøget med forskellige drivere, når de betyder` processed`.
- antyde funktionstype er nu mere kræsne, hvad form for type hints accepterer, tillader en at bruge skabelon funktioner - for eksempel -. `$ (Format-JSON)` par
- Alle de forskellige krypto-relaterede skabelon fungerer nu kontrollere, at den ønskede længde af fordøjelsen ikke er større end det fordøjede selv. Hvis der anmodes om en større værdi, vil de afkorte den til digest længde.
- `$ (GeoIP)` skabelon funktionen fungerer nu med `med gevind (ja)` også.
- `in-liste ()` filter blev fastsat til at se på alle elementer i listen, i stedet for kun den sidste.
- Rettet en påstand, når du bruger `match ()` filter under visse omstændigheder.
- `systemet ()` kilde vil ikke tilføje `/ dev / kmsg` (eller` / proc / kmsg` på ældre kerner) til standardindstillingerne kilder, hvis du bruger systemd tidsskrift, fordi kerne logs er inkluderet i tidsskriftet.
- `systemet ()` kilde vil ikke indeholde `/ dev / kmsg` (eller` / proc / kmsg`), når du kører i en Linux-container.
- Diverse hukommelsesfejl rettelser omkring kodebase.
- Skift kontrol socket besked fra varsel at fejlsøge
- Åbning kontrol socket deaktiveret når syslog-ng bruges kun syntaks kontrol.
- Rettelser til forsøg () funktionalitet. Prøv igen tæller øges med hver besked skrivefejl (herunder netværksforbindelse fejl), som kan føre til meddelelse tabt.
- Diverse ændringer:
- sende Vi har nu en & quot; Bidragydere Guide & quot; i `CONTRIBUTING.md` fil.
Hvad er nyt i version 3.5.1:
- Dette er den første stabile udgivelse i 3,5-serien og tilføjer en række funktioner i forhold til 3,4, et resultat af omkring otte måneders udvikling. Denne udgivelse indeholder alle de rettelser af den seneste 3.4.5 udgivelse, og et væld af nye funktioner.
- Fejlrettelser:
- En race condition i logmeddelelse henvisning optælling kode, der til tider førte til nedbrud var fastsat. [# 255]
- En use-after-free fejl, at nogle gange er sket efter en reload, og forårsagede ødelæggelse af hukommelsen blev også rettet. [# 253]
- patterndb blev rettet til ikke at oprette en ny instans på reload: denne måde den gamle ikke lækket, og db-parser () ikke glemme sammenhængen tilstand, eller dens idé om aktuelle klokkeslæt på reload. [# 257]
- syslog-ng.spec fil forsøger ikke at installere den længe fjernet ChangeLog fil længere.
Hvad er nyt i version 3.5.0 Beta 3:
- Skabelon undslippe:
- Skabelon Escaping blev ændret i en inkompatibel måde: tidligere, både Lexer og skabelonen compiler brugte '' tegn for at undslippe, som var forvirrende. Skabelonen compiler bruger "$$" at undslippe '$' char, og "@@" at flygte "@".
- Hvis en ikke-numerisk værdi følger "@", en advarsel vil blive udskrevet.
- Fejlrettelser:
- syslog-ng bør kompilere igen på ikke-Linux-platforme.
- flush () og fsync () indstillinger af filen destination blev fastsat, og de bør arbejde på samme måde nu, som de gør i 3.3 og 3.4.
- hiredis bibliotek bør detekteres på standard omfatter stier, så man ikke nødvendigvis behøver at angive --with-libhiredis non non-Debian-systemer. Nævnte mulighed blev også gjort til at arbejde.
- En hukommelse korruption blev fastsat i @ STRING @ parser af db-parser ().
- Omfatter nu korrekt med value-par (), og de ikke bliver ignoreret, hvis værdien at udelukke i standardsættet.
Hvad er nyt i version 3.3.2:.
- Stabilitet og hukommelsesfejl rettelser
Hvad er nyt i version 3.3.1:
- Integreret støtte til MongoDB, JSON formaterede begivenheder og en multi-threaded arkitektur, der skalerer syslog-ng op i 800000 besked / sekund interval.
Hvad er nyt i version 3.2.1:
- Dette er den første udgivelse i den nye større version af syslog-ng, der indeholder den længste liste over funktioner lige siden starten af syslog-ng projekt som logmeddelelse korrelation og plugin support.
Hvad er nyt i version 3.2 Alpha 2:
- Nu samler på alle platforme og enheden / funktionelle tests også køre. (Testet: AIX, HP-UX, Solaris, FreeBSD, Linux, Tru64)
- Fast pdbtool match --debug-mønster udgang til ESTRING parsere.
- Rettet en mulig hukommelse læk i Lexer, hvilket ville ophobes i tilfælde SIGHUPs.
- Fast Solaris STREAMING enhed støtte.
- Forward porteret alle fejlrettelser fra syslog-ng OSE 3.0 & 3.1
- Deaktiver proces regnskab modul som standard, da det ikke kompilere på ikke-Linux-platforme.
- Tilføjet & quot; pdbtool match --file & quot; mulighed for at læse og analysere en eksisterende logfil.
- Tilføjet & quot; pdbtool test & quot; at kontrollere log prøver i patterndb filen.
- Tilføjet & quot; Dont-skabe-borde & quot; flag for SQL destination til at hæmme automatisk oprettelse bord.
- Tilføjet & quot; betingelse () & quot; støtte til omskrivning udtryk, som gør det muligt at springe omskrivningsregler, der ikke matcher et filter udtryk.
- Tilføjet & quot; - modul-sti & quot; kommandolinje mulighed for at styre, hvor moduler indlæses fra fra kommandolinjen.
Hvad er nyt i version 3.1 Beta 1:
- Støtte til patterndb v3
- pdbtool
- Besked tags
- omskrive strukturerede data li>
- Makro og navn-værdi integration
- Navn-værdi par ydeevne
- Patterndb parser forbedringer
- Information om ikke-bærbare faciliteter
- Navn-værdi par ydeevne
- Patterndb parser forbedringer
- Information om ikke-bærbare faciliteter
Kommentarer ikke fundet