Quali valori predefiniti del programma utilizzano le strutture locali syslog [0-7]?


19

Oltre ai servizi di sistema comuni ( mail, news, daemon, cron, ecc), syslog fornisce una serie di servizi "locali", i numeri da 0 a 7: LOCAL0, LOCAL1, ..., LOCAL7.

Quali sono le impostazioni predefinite del programma per le applicazioni comuni?

Sto cercando di scoprire quali strutture sono "tradizionalmente" utilizzate per servizi ben noti. Distribuirò un'applicazione su molti server, con vari software installati, e vorrei vedere se esiste una struttura "gratuita" che potrei facilmente usare per i miei log.

Come nota, mi rendo conto che ci sono altri modi per farlo oltre a una funzione syslog. Solo curioso!

Ecco alcuni, (un inizio a rispondere alla mia domanda) e alcuni grazie a voretaq7:

  • LOCAL0 è usato da postgresql
  • LOCAL2 è usato da sudo
  • LOCAL3 viene utilizzato da alcune versioni di SpamAssassin
  • LOCAL4 è usato di default da slapd (server OpenLDAP)
  • LOCAL5 viene talvolta utilizzato da Snort IDS
  • LOCAL7 è usato per i messaggi di avvio su Fedora 12

Non tutti i log sono in attesa del nome del processo o di un nome definito dall'utente che lo ha inviato? Lavoro con syslogs e non ricordo di aver riscontrato problemi nel filtrare le voci di registro per app.
Frizione

frizione, ti riferisci al 'tag' di Syslog. Per impostazione predefinita, su Linux, il tag è costituito dal nome e dall'ID del processo, come "httpd [1234]", che ha generato il messaggio di registro. Ma puoi impostare il tag come preferisci tramite l'API Syslog. Vedi la mia risposta, di seguito, per maggiori dettagli.
Ryan B. Lynch,

Risposte:


7

Le LOCALnstrutture sono disponibili per qualsiasi uso locale e possono variare abbastanza ampiamente da un sito all'altro.

Garantisco che ognuno degli 8 disponibili sia usato da qualcosa, quindi se vuoi evitare conflitti, il mio miglior consiglio è di registrare tutti e 7 in registri separati e scegliere quello che nient'altro sembra usare.

Alcuni che hai perso (valori predefiniti del programma - possono essere modificati localmente, quindi ricontrolla):

  • LOCAL0 è usato da postgresql (se configurato per accedere a syslog)
  • LOCAL2 è usato da sudo (se configurato per accedere a syslog)
  • LOCAL3 viene utilizzato da alcune versioni di SpamAssassin
    • Questo viene spesso modificato dall'amministratore locale per accedere mailinvece
  • LOCAL5 viene talvolta utilizzato da Snort IDS
    • Non so se si tratti di un'impostazione predefinita o di una coincidenza, ma l'ho visto su diverse installazioni di Snort

Grande! Questo è esattamente quello che sto cercando: impostazioni predefinite del programma. Più sono benvenuti! Chiaramente, verranno utilizzate varie strutture, sto solo cercando di vedere quali applicazioni sto per ostacolare.
Jonathan Clarke,

2

Non esiste uno standard per le strutture Syslog LOCAL0-LOCAL7. In base alla progettazione, non puoi contare sul fatto che verranno utilizzati da qualsiasi cosa. Le distro o le organizzazioni particolari potrebbero avere le proprie convenzioni, ma dipende dalla distribuzione o dalla politica dell'organizzazione, non da uno standard più ampio.

In alternativa, hai preso in considerazione l'utilizzo dei "tag" di Syslog? I tag sono stringhe in formato libero anteposte al registro dei messaggi per identificare applicazioni o canali di registro specifici. Per impostazione predefinita, il tag è generalmente formato dal nome e dall'ID del processo (ad esempio, "httpd [2839]") che ha generato i dati del registro. L'utilità della riga di comando "logger" e la maggior parte delle API di Syslog supportano la specifica dei tag che si desidera utilizzare per le applicazioni.

Ad esempio, personalmente mi piace usare "http-access" per i miei log di accesso al server web Apache, che invio a Syslog eseguendo il piping dell'output del log di Apache al comando "logger -p local7.info -t" http-access ".


Interessante, grazie. Tuttavia, sto creando una soluzione su alcuni software esistenti che possono essere configurati per accedere a LOCAL0 tramite LOCAL7. La mia domanda riguarda davvero le impostazioni predefinite utilizzate da vari software.
Jonathan Clarke,

Ha senso, mi è mancato. Ma sottolineerò che esiste un pericolo nel fare affidamento su comportamenti non standardizzati, qui. Gli sviluppatori o i packager di OpenLDAP, Fedora, ecc. Possono (e talvolta farlo) cambiare questi comportamenti da versione a versione. Non vi è alcuna garanzia che un aggiornamento non diverga da alcuna scelta della struttura Syslog effettuata in passato. Questo non è un rompicapo, solo un potenziale problema che potresti voler fare attenzione.
Ryan B. Lynch,

2

La maggior parte dei file syslog.conf sono configurati con funzioni jolly per il file dei messaggi (* .info). Se si tratta solo di un'esecuzione dell'app Mill e non di una mucca di log log completa, probabilmente dovresti semplicemente accedere ai messaggi e non a un file autonomo.

Scegliere di accedere al proprio file significa aggiungere un passaggio postinstallazione ai pacchetti di installazione del software che aggiunge una voce appropriata in syslog.conf. Questo significa anche che, se vuoi, aggiungi un passaggio postinstallazione che crea anche un file logrotate appropriato.


Un buon consiglio per quanto riguarda il packaging per syslog e logrotate. Grazie.
Jonathan Clarke,

-3

Stavo anche cercando un file di configurazione come syslog.conf per fare un riferimento incrociato tra le strutture local0-7 e il programma che le sta scrivendo. Sembra che un tale file di configurazione non esista. Per scoprire quale programma sta scrivendo nel registro, dovrai aprire il file di registro e trovare il nome del programma accanto alla colonna accanto ai due punti, ad esempio ... sendmail [22950]: è per il programma sendmail. Il numero tra parentesi quadre è per il numero di porta utilizzato durante l'esecuzione del programma.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.