Leggendo i registri Redis

Leggendo i registri Redis

“Redis è un database in memoria ampiamente utilizzato che memorizza i dati come coppie di valore chiave. Generalmente, syslog mantiene il registro Redis. Può preservare i registri da varie fonti. Ma se il registro Redis gestisce molti più record, causerà basse prestazioni del sistema. Quindi, per ulteriori elaborazioni, Syslog consente di inoltrare tutti i registri al server di registrazione centralizzato."

Configurazione della registrazione Redis

Utilizzando il comando seguente, possiamo aprire il file di configurazione del server Redis situato in /etc/Redis/Redis.conf.

$ sudo nano/etc/Redis/Redis.conf

Quando si definisce il nome e la directory di un file di registro, è necessario utilizzare la direttiva Logfile. Generalmente, /var/log è la directory standard della registrazione syslog; Inoltre, la configurazione predefinita memorizza il registro in questa directory. Non è necessario cambiarlo ancora e ancora perché, per impostazione predefinita, syslog mantiene tutti i registri nel /var/log directory. Quando viene commentata la direttiva abilitata per syslog, dovresti rimuovere questa riga e impostare il valore come sì. Per ogni record syslog, questa stringa verrà preparata.

Di seguito puoi vedere le righe che mostrano il file modificato,

Alla fine, puoi salvare e chiudere il file. Ma improvvisamente, se si desidera applicare la nuova configurazione, è possibile utilizzare il comando seguente.

$ sudo systemct1 riavvia redis

Leggendo i registri syslog

Hai due opzioni di riga di comando. Se si desidera accedere ai record syslog relativi a Redis,

Visualizzazione del file di registro nel terminale

Poiché Redis registra tutti i messaggi sia in syslog che nel file personalizzato, è possibile visualizzare direttamente il file di registro Redis. Nella fase precedente, abbiamo salvato i registri Redis nel file ./var/log/Redis/Redis-Server.tronco d'albero. L'esecuzione del comando CAT ti consentirà di esaminare questo file come segue.

$ CAT/VAR/LOG/Redis/Redis-Server.tronco d'albero

Utilizzando il comando sopra, è possibile ispezionare il contenuto del file di registro Redis come segue.

Interrogazione utilizzando JournalCtl

Tutti i registri sono controllati dal servizio Journald, che fa parte di SystemD (Ubuntu utilizza SystemD Service Manager). IL Journald Fornisce lo strumento di comando Journalctl, che cerca voci syslog utilizzando vari criteri e presenta i risultati. Se il tuo server Redis è impostato per accedere a syslog, è possibile utilizzare il seguente comando per recuperare le voci syslog del servizio Redis:

$ Journalctl -u Redis -Server.servizio

Questo comando -u parte limita il display alle voci syslog associate al server Redis.servizio

L'output visualizza le voci duplicate sia nel file di registro di visualizzazione che Journalctl ma utilizza un diverso formato timestamp e non contiene alcune intestazioni di metadati incluse nel syslog (nome del processo e altri).

Registrazione Redis con Docker

La manutenzione del registro Redis richiede l'utilizzo di un driver di registrazione Docker se si desidera eseguire Redis all'interno di un contenitore Docker.

Download del contenitore Redis

Per recuperare l'immagine originale da Docker Hub, dovremmo usare il comando Docker pull e il nome dell'immagine Redis. Può essere fatto come segue.

$ Sudo Docker Pull Redis

Come visto dall'output, Docker lo salva localmente e lo rende accessibile all'esecuzione di contenitori dopo aver recuperato un'immagine.

Container in esecuzione e registro di visualizzazione

Dando il comando Docker run, è possibile avviare il contenitore Redis.

$ sudo Docker run -d -p 23200: 23200 - -NOME MY -REDIS REDIS

Opzione -D stampa l'ID contenitore quando si esegue il contenitore in background (utilizzo tipico per il server del database). Quello che succede qui è che la porta del contenitore Redis 23200 mapperà sulla porta 23200 della macchina locale. Il nome del contenitore per My -Redis è determinato dall'opzione -Name.

Se si desidera ispezionare il contenitore Redis, è possibile eseguire registri Docker con il registro dei nomi del contenitore come segue.

$ sudo Docker registri my-redis

L'output visualizza le voci di registro relative a Redis che forniscono informazioni sull'avvio e sull'inizializzazione del servizio. Come puoi vedere, il syslog e il registro Docker sono comparabili.

Sarebbe meglio se usassi Docker rm - - a Forza per chiudere questo contenitore.

REDIS LOG ROTAZIONE

Poiché i file di registro si espandono sempre nel tempo, le loro dimensioni devono essere gestite. Linux utilizza un concetto noto come rotazione del registro per affrontare questo problema. Imposteremo la rotazione del registro per Redis usando syslog in questa fase. Un demone chiamato logrotato fa parte del syslog, assicurando che tutti i registri siano ruotati. Ubuntu 20.04, per impostazione predefinita, utilizza il logrotato (inclusa la rotazione del registro Redis se installato). Il file /etc/logrotato.D/Redis-Server Definisce le impostazioni di rotazione del registro per la rotazione del registro Redis.

Ora possiamo aprire il file usando il comando seguente.

$ sudo nano /etc /logrotato.D/Redis-Server

Le direttive incluse tra parentesi ricci specificano come ruotare il registro nella directory sopra specificata. Redis ruota i registri utilizzando i seguenti parametri secondo il file:

Settimanalmente: I registri sono cambiati. In alternativa, puoi scegliere un periodo di tempo diverso (giornaliero, settimanale, mensile o annuale). Il demone lograto funziona ogni giorno, ma in alternativa è possibile specificare che ruota ogni ora (ogni ora). Per ruotare i registri ogni ora in una situazione del genere, è necessario modificare l'intervallo di lavoro di Logrotate Cron.

Manca ok: Se il file di registro è assente, il demone non segnala errori.

Ruota 12: Dodici rotazioni di file di registro vengono eseguite prima della cancellazione. Le versioni precedenti vengono distrutte anziché ruotate se la rotazione è impostata su 0.

Comprimere: I file di registro obsoleti verranno compressi con GZIP.

Notifempty: Se il registro è vuoto, non ruotarlo.

Le pagine della documentazione del logrotato descrivono in dettaglio ogni potenziale istruzione. L'uomo logrotato può essere usato per vederli. Puoi modificare queste opzioni, aggiungerne di nuove o portarne alcune. Decidi quale configurazione utilizzare. Al momento dell'impostazione dei parametri di rotazione del registro, il file può essere salvato e chiuso. Ora, il lograto ruoterà regolarmente i tuoi registri Redis.

Conclusione

Per riassumere, la registrazione di syslog è estremamente utile per generare registri Redis. È possibile osservare i registri Redis interrogando direttamente il diarioctl e aprendo il file di registro. Usando i registri ruotare il demone, si imposta la rotazione del registro Redis. L'immagine di Redis Docker è stata scaricata, eseguita all'interno del contenitore e sono stati letti i registri Docker associati.