Redis Slowlog

Redis Slowlog
Som databaseadministratorer er det avgjørende å kjenne de beste verktøyene som hjelper deg å utføre oppgaven. I Redis er den langsomme loggen et slikt verktøy. Det er en hogstmekanisme, men i en ikke-tradisjonell forstand.

Denne guiden vil diskutere konfigurering og bruke Redis Slow Log -kommandoer.

Hva er redis langsom tømmerstokk?

Redis Slow Log eller RSL er en funksjon som lar Redis -serveren spore og logge alle spørsmål som overskrider den tildelte utførelsestiden.

Hvis du opplever langsom utførelse av spørring eller høy CPU -bruk i Redis -serveren din, er dette verktøyet du vil bruke.

Merk: Utførelsestiden som tildeles inkluderer ikke input/output -operasjoner. Det refererer til den faktiske tiden etter at serveren har mottatt kommandoen og det er tid til å fullføre utførelsen av den.

Hvor langsom log fungerer?

Den langsomme loggfunksjonen er veldig enkel. Det fungerer i to enkle trinn.

  1. Når en spørring er utstedt, holder serveren oversikt over tiden som er gått når han utfører kommandoen.
  2. Hvis kommandoen overskrider den tildelte tiden, logges den ved hjelp av sakte loggsystem.

Merk: Utførelsestiden for en spørring er spesifisert i Slowlog-log-Slower-Than-direktivet i Redis-konfigurasjonsfilen.

Du kan også spesifisere antall oppføringer i sakte loggfilen ved å bruke Slowlog-Max-Len-direktivet.

Sette opp loggparametere

To oppføringer lar deg konfigurere sakte loggparametere.

  1. Slowlog-log-Slower-Than
  2. Slowlog-max-len

Rediger konfigurasjonsfilen med tekstredigereren din for å endre eller angi disse verdiene. Som standard er disse verdiene satt til:

Slowlog-log-Slower-Than 10000
Slowlog-Max-Len 128

Derfor vil serveren logge 128 oppføringer av spørsmålene som overstiger 10000 mikrosekunder.

Hvis loggoppføringen inneholder mer enn de spesifiserte oppføringene, fjerner den den eldste for å gi plass til en ny oppføring.

Ved hjelp av Config Set -kommandoen kan du også konfigurere Slowlog -parametrene ved kjøretid. Et eksempel er som vist:

127.0.0.1: 6379> Konfigurasjonssett Slowlog-log-Slower-Than 10000
127.0.0.1: 6379> Config Set Slowlog-Max-Len 128

Redis langsom tømmerstokk

Før vi leser oppføringene i Slowlog, la oss endre verdien av Slowlog til en veldig liten verdi.

Et eksempel -kommando er som vist nedenfor:

127.0.0.1: 6379> Konfigurasjonssett Slowlog-log-Slower-Than 1
Ok

Alle spørsmål som overstiger 1 mikrosekund vil bli logget inn på oppføringene.

La oss utføre eksempler på spørsmål som vist:

127.0.0.1: 6379> hset user_info brukernavn "user1" e -post "[email protected]"
(Heltall) 2
127.0.0.1: 6379> Hgetall User_Info

I eksemplet ovenfor kjører vi to spørsmål som vil overstige 1 mikro sekund.

Hente sakte loggoppføringer

For å hente alle oppføringene i Redis Slow Log, kjører du Slowlog Get Command:

127.0.0.1: 6379> Slowlog Get

Kommandoen over bør hente alle oppføringene som vist i utgangen nedenfor:

Komponenter i en langsom loggoppføring

Hver langsom loggoppføring består av 6 hoveddeler.

  1. Den første er en unik identifikator for loggoppføringen.
  2. Neste er en UNIX -tidsstempel som angir tidspunktet for oppføringen ble lagt til.
  3. Den tredje delen betegner tiden som spørringen tok i mikrosekunder.
  4. Fjerde er en matrise som inneholder argumentene til den spesifiserte kommandoen.
  5. Sist, men ikke minst, er klientadressen og porten som ga kommandoen.
  6. Til slutt klientnavnet som spesifisert av klientsetavn -kommandoen.

Redis tilbakestiller sakte loggoppføringer

Hvis du vil rydde opp i sakte loggoppføringene, kan du bruke den langsomme tilbakestillings -kommandoen som vist:

127.0.0.1: 6379> Slowlog Reset
Ok

Kommandoen skal fjerne alle eksisterende oppføringer. Imidlertid, hvis tilbakestillingskommandoen overstiger den angitte tiden, vil den bli lagt til loggene.

Konklusjon

Denne artikkelen dekket et av de beste verktøyene for administrering og feilsøking av Redis; Redis langsom tømmerstokk.

Vi sees i den neste!