2008-02-26, 14:25
  #1
Medlem
Hejsan,

Jag har i dagsläget en Solaris 9 server som får syslog-medellanden ifrån flera andra servrar, och på samma facility. Syslog som kommer med Solaris verkar inte stödja att separera på något annat än facility. Jag vill få syslog-medellanden i olika filer, beroende på facility och leverantör(hostname eller ip). Är det någon som vet om ng-syslog kan det? Finns det några andra alternativ?

Tack på förhand

.:c:.
Citera
2008-02-26, 15:16
  #2
Medlem
Ableachs avatar
syslog-ng kan det, och mycket mer därtill (ip src, strängar, tcp istf udp mm). Rekommenderas varmt, och är sedan länge stabilt.
Citera
2008-02-26, 15:21
  #3
Medlem
Sconemans avatar
Vanliga syslogd har ju några, som standard, oanvända facilities nämligen LOCAL0 till LOCAL7. Vet ju inte hur komplex din konfiguration är men eventuellt kanske det räcker att jobba med dem?

/ Sconeman.
Citera
2008-02-26, 16:05
  #4
Medlem
Citat:
Ursprungligen postat av Sconeman
Vanliga syslogd har ju några, som standard, oanvända facilities nämligen LOCAL0 till LOCAL7. Vet ju inte hur komplex din konfiguration är men eventuellt kanske det räcker att jobba med dem?

/ Sconeman.

Jag har inte kontroll över alla maskiner, så jag måste göra på detta vis. Annars hade jag fipplat med facilities, :=)


Citat:
Ursprungligen postat av Ableach
syslog-ng kan det, och mycket mer därtill (ip src, strängar, tcp istf udp mm). Rekommenderas varmt, och är sedan länge stabilt.


Ah, kalas, tack för hjälpen!

.:c:.
Citera
2008-04-07, 10:10
  #5
Medlem
Fortsätter här med lite frågor angående syslog-ng.

Kan jag konfigurera syslog-ng att bara ta hand om medellanden som kommer ifrån en viss facilitet? (local5.debug) Suttit och meckat med configurering av syslog-ng, men får det inte riktigt att fungera. Jag vill filtrera till olika filer beroende på sourceIP. Någon som kan ge mig ett exempel på en liten config?

Tackar,
.:c:.
Citera
2008-04-07, 11:31
  #6
Medlem
Optimists avatar
Citat:
Ursprungligen postat av Crast
Fortsätter här med lite frågor angående syslog-ng.

Kan jag konfigurera syslog-ng att bara ta hand om medellanden som kommer ifrån en viss facilitet? (local5.debug) Suttit och meckat med configurering av syslog-ng, men får det inte riktigt att fungera. Jag vill filtrera till olika filer beroende på sourceIP. Någon som kan ge mig ett exempel på en liten config?

Tackar,
.:c:.

Själv kör jag med den här configen, alla hosts får en egen mapp under /var/log/HOSTS, och så samlas loggarna från alla facilities där. T.ex. /var/log/HOSTS/192.168.1.1/local7
Kod:
#  If you wish to get logs from remote machine you will need this server
# to listen upon port 514.

source remote { udp(port(514)); };

# Automatic host sorting
# Store all files beneath '/var/log/NAME OF MACHINE/facility
# Create these directories if required, with the given permissions.

destination hosts { file("/var/log/HOSTS/$HOST/$FACILITY" owner(root) group(root) perm(0600) dir_perm(0700) create_dirs(yes)); };

# log by host (as defined above) anything that's coming from the
# remote socket.

log { source(remote); destination(hosts); };

Annars kan jag passa på att visa lite tuffa inställningar

Kod:
destination df_tty6 { file("/dev/tty6"); };


log {
        source(s_all);
        destination(df_tty6);
};
...och sedan denna på autostart...
Kod:
#!/bin/bash
echo -e '\E[1;32;40m' > /dev/tty6
Grattis, du har nu din egen matrixkonsol @ tty6.
Citera
2008-04-07, 12:56
  #7
Medlem
Citat:
Ursprungligen postat av Optimist
Själv kör jag med den här configen, alla hosts får en egen mapp under /var/log/HOSTS, och så samlas loggarna från alla facilities där. T.ex. /var/log/HOSTS/192.168.1.1/local7
Kod:
#  If you wish to get logs from remote machine you will need this server
# to listen upon port 514.

source remote { udp(port(514)); };

# Automatic host sorting
# Store all files beneath '/var/log/NAME OF MACHINE/facility
# Create these directories if required, with the given permissions.

destination hosts { file("/var/log/HOSTS/$HOST/$FACILITY" owner(root) group(root) perm(0600) dir_perm(0700) create_dirs(yes)); };

# log by host (as defined above) anything that's coming from the
# remote socket.

log { source(remote); destination(hosts); };


Schysst! Men det där fångar *allt*, om jag bara vill ha local5.debug, hur görs det?

.:c:.
Citera
2008-04-07, 14:58
  #8
Medlem
woot, lite google och så funkar det med local5. (Dock så verkar det inte som om jag kan specificera local5.debug?, nåja, ingen större fara för mig).

Kod:
filter local5
{
        facility(local5);
};

log
{
        source(remote);
        filter(local5);
        destination(hosts);
};
Citera
2008-04-07, 16:14
  #9
Medlem
Citat:
Ursprungligen postat av Crast
woot, lite google och så funkar det med local5. (Dock så verkar det inte som om jag kan specificera local5.debug?, nåja, ingen större fara för mig).

Kod:
filter local5
{
        facility(local5);
};

log
{
        source(remote);
        filter(local5);
        destination(hosts);
};

För den nyfikne, så kan man göra såhär i filter functionen:

Kod:
{
        host("minroligahost") and facility(local5) and level(debug);
};

.:c:.
Citera

Skapa ett konto eller logga in för att kommentera

Du måste vara medlem för att kunna kommentera

Skapa ett konto

Det är enkelt att registrera ett nytt konto

Bli medlem

Logga in

Har du redan ett konto? Logga in här

Logga in