Re: Central Syslog server

From: Phil Regnauld (none@regnauld--starBSD.org.lh.bsd-dk.dk)
Date: Fri 23 Apr 2004 - 10:15:45 CEST


Date: Fri, 23 Apr 2004 10:15:45 +0200
From: Phil Regnauld <none@regnauld--starBSD.org.lh.bsd-dk.dk>
To: bsd-dk@bsd-dk.dk
Subject: Re: Central Syslog server

On Fri, Apr 23, 2004 at 10:01:15AM +0200, Allan Wermuth wrote:
>
> Der vil være tale om en del trafik, som skal logges, og uden at
> kunne give et 100% Sikkert bud, så forventer jeg ca. 5 GB i døgnet
> (gennemsnitligt ca. 200 MB i timen), Når logserveren er fuldt
> implementeret. Logfilerne tænkes lagret på et SAN.
>
> Der selvfølgelig krav om, at
>
> - der skal være søgemuligheder, formodentlig webbaseret f.eks.
> - Ugentlig analyse af log via scripts Logrotation
>
> Jeg har undersøgt mulighederne for diverse alternativer til den noget
> gamle syslogd, Og fandt bl.a. Syslog-ng, Metalog og Modular syslog.
> Muligheden for databaseunder- Støttelse giver nogle fordele, når der
> skal implementeres søgemuligheder, men jeg er Lidt usikker på om
> MySQL eller PostgreSQL databaserne kan følge med, når der er tale Om
> disse mængder data (jeg er ikke database ekspert).

        Det kan de nok, vi har prøvet det :)

        med syslog-ng, uden fsync() efter write -- eller med bare
        FreeBSD's standard syslogd, vil du kunne uden problem følge med
        op til 800-1000 beskeder pr. sekund hvis din disk I/O kan følge
        med (jeg ved ikke om en SAN vil altid kunne: de er typisk sløve,
        med mindre man har meget cache).

> Nok forventer jeg
> gennemsnitlig 200 MB logdata i timen, men det data er sandsynligvis
> mere ulige fordelt på døgnet.

        Hvis vi siger avg. 150 bytes (real world measurement :), så vil
        200 MB / time (rå) betyde 1.333.333 messages / time (+ få bytes
        i overhead), dvs. 360 msg/ sekund gennemsnit.

        Det er holdtbare, no problem. Med en SQL i back-end, kan du også
        gøre det, men der vil måske være behov om en to-stage løsning,
        hvor du først bufferer (parent reader fra en pipe) og så skriver
        (child reader som skriver til DB eller fil).

> Er der nogen, som har erfaring med centrale logservere, der modtager
> anselige mængder Data, og hvilke erfaringer har i med "flade logfiler"
> contra database?

        Du kan have begget to. Logge rå + skriv til DB. Syslog-ng kan
        den slags. For eksempel:

        - DB på hurtige raid array lokalt (SCSI)
        - flad filer til SAN

        Grep front-end er nem nok, der findes en del frameworks i PHP derude
        som implementerer den slags.

        Det bliver nok sløv at greppe på filer > 500 MB hvis du ikke har
        minimum 1 GB RAM på kassen (observeret).



This archive was generated by hypermail 2b30 : Wed 15 Nov 2006 - 18:24:39 CET