Topp 10 Python -hogsteksempler

Topp 10 Python -hogsteksempler
Logginformasjon er veldig viktig for feilsøking og utvikling av alle applikasjoner. Når applikasjonen kjøres, kan hver hendelse spores ved å bruke loggfunksjoner. Programmereren kan få en klar forståelse av strømmen av programmet ved å bruke loggdata. Når noe program krasjer, kan årsaken til krasjet lett oppdages ved loggposter som sparer utviklingstider. Ytelsen til applikasjonen kan også måles ved logging.

Python har en innebygd modul som heter hogst For å få logginformasjon for enhver Python -applikasjon. Det er en veldig nyttig modul for nybegynneren eller erfaren Python -programmerer å skrive ut statusmeldingen til utgangsstrømmen eller i en fil. De fleste av tredjeparts Python-biblioteker bruker denne modulen for å generere logginformasjon for Python-applikasjonen. Hvordan du kan bruke denne modulen vises i denne artikkelen ved å bruke 25 enkle Python -loggingseksempler.

Liste over loggeksempler:

  1. Bruker getLogger ()
  2. Bruke BasicConfig ()
  3. Bruker SetLevel ()
  4. Bruke getEffectivelevel ()
  5. Bruker ISEnabledFor ()
  6. Bruke feilsøking ()
  7. Bruker info ()
  8. Bruker advarsel ()
  9. Bruker feil ()
  10. Bruker kritisk ()
  11. Logg på en fil
  12. Bruker variabel i logging
  13. Bruker unntak ()
  14. Opprette behandler
  15. Bruker formater ()
  16. Bruke LogRecord GetMessage
  17. Bruke LogRecord -attributter - Args
  18. Bruke LogRecord -attributter - ASCTIME
  19. Bruke LogRecord -attributter - filnavn
  20. Bruke LogRecord -attributter - funcname
  21. Bruke LogRecord -attributter - Lineno
  22. Bruke LogRecord -attributter - Modul
  23. Bruke LogRecord -attributter - MSG
  24. Bruke LogRecord -attributter - Pathname
  25. Bruke logging.Deaktiver

Bruker getLogger ()

getLogger () Funksjon brukes til å lage et loggerobjekt. Denne funksjonen kan kalles med loggernavn eller uten loggernavn. Standard loggernavnet er rot. I det følgende eksempel opprettes loggerobjektet med et loggernavn og uten et loggernavn ved å bruke getLogger (). Her vil tre advarselsmeldinger bli skrevet ut. Roten vil skrive ut som et loggernavn for den første og andre advarselsmeldingen. Den tredje advarselsmeldingen vil skrives ut med loggernavnet som er tilordnet i GetLogger () -funksjonen.

Eksempel1.py

#importmodul
Importlogging
# Skriv ut første advarselsmeldinger
hogst.Advarsel ('Dette er første advarsel')
#Skape et objekt
Logger = logging.getLogger ()
# Skriv ut andre advarselsmeldinger
Logger.Advarsel ('dette er andre advarsel')
#Skape et objekt
Logger = logging.getLogger ('mylog')
# Skriv ut tredje advarselsmeldinger
Logger.Advarsel ('Dette er tredje advarsel')

Kjør manuset fra terminalen.

$ python eksempel1.py

Produksjon:

Standard loggernavnet er 'root', og når loggerobjektet opprettes uten noe navn, er loggeren som heter også 'root'. Så følgende utgang vises etter å ha kjørt skriptet.

Gå til toppen

Bruke BasicConfig ()

BasicConfig () Funksjon brukes til å konfigurere loggalternativene til rotloggeren. Ulike typer grunnleggende konfigurasjon kan gjøres ved denne funksjonen. Format, nivå, filnavn, etc. er de mest brukte argumentene for denne funksjonen. format brukes til å formatere utgangen fra loggmeldingen. nivå brukes til å stille inn loggingsnivået. filnavn brukes til å sende loggmeldingsutgangen til en fil i stedet for konsollen. Bruken av format og nivå Argumenter vises i følgende eksempel.

Eksempel2.py

#importing modul
Importlogging
#Skap og konfigurere loggeren
hogst.BasicConfig (format = '%(melding) S', nivå = logging.Debug)
# Skriv ut testmeldinger før innstillingsnivå
hogst.Debug ("Skriv ut feilsøkingsmeldingen")

Kjør manuset fra terminalen.

$ Python Eksempel2.py

Produksjon:

Her, The beskjed er satt i format argument og logging nivå er satt til Feilsøking. Følgende feilsøkingsmelding vil bli skrevet ut som utdata etter å ha kjørt skriptet.

Gå til toppen

Bruker SetLevel ()

setLevel () Funksjon brukes til å stille inn loggingsnivået. Seks nivåer kan settes av denne funksjonen. Disse er Debug (10), info (20), advarsel (30), feil (40), kritisk (50) og Notset (0). Standardnivået er satt til ikke å ikke. Root Logger behandler meldinger for advarsel, feil og kritisk nivå som standard. Hvordan du kan endre gjeldende loggernivå ved å bruke setLevel () Funksjon vises i følgende eksempel. Her skrives feilsøking og advarselsmeldinger før og etter å ha angitt loggnivå i skriptet.

Eksempel3.py

#importmodul
Importlogging
#Skap og konfigurere logger
hogst.BasicConfig (format = '%(melding) S')
#Skape et objekt
Logger = logging.getLogger ()
# Skriv ut testmeldinger før innstillingsnivå
Logger.DEBUG ("TEST DEBUG MASION")
Logger.ADVARSEL ("Testvarselmelding")
# Angi loggernivået til feilsøking
Logger.SetLevel (logging.Debug)
# Skriv ut testmeldinger etter innstillingsnivå
Logger.DEBUG ("TEST DEBUG MASION 2")
Logger.ADVARSEL ("Test advarselsmelding 2")

Kjør manuset fra terminalen.

$ Python Eksempel3.py

Produksjon:

Den første feilsøkingsmeldingen til skriptet skriver ikke ut for standard loggernivå, og den andre feilsøkingsmeldingen vil skrive ut for å stille inn loggernivået til feilsøking. Følgende utgang vises

Etter å ha kjørt skriptet.

Gå til toppen

Bruke getEffectivelevel ()

getEffectivelevel () Funksjon brukes til å hente gjeldende loggnivåverdi. Hvis det gjeldende loggnivået er satt til ikke -sett, vil loggerobjektet søke i loggnivået til rotloggeren. Hvis ingenting som er funnet for rotlogger, vil loggnivåverdien til Notset bli returnert. Hvordan du kan bruke getEffectivelevel () For å lese gjeldende loggnivå vises i følgende eksempel. Her kalles denne funksjonen før og etter å ha satt loggnivået.

Eksempel4.py

#importing modul
Importlogging
#Create Logger -objekt
Logger = logging.getLogger ()
#Trykk gjeldende loggnivåkode
Print ("Gjeldende loggnivåkode: % D" % (Logger.getEffectivelevel ()))
# Angi loggnivå til advarsel
hogst.BasicConfig (nivå = logging.Debug)
#Trykk gjeldende loggnivåkode
Print ("Gjeldende loggnivåkode: % D" % (Logger.getEffectivelevel ()))

Kjør manuset fra terminalen.

$ Python Eksempel4.py

Produksjon:

Følgende utgang vises etter å ha kjørt skriptet. Utgangen viser at standardloggnivået er advarsel (30) og loggnivået er feilsøking (10) etter å ha satt nivået.

Gå til toppen

Bruker ISEnabledFor ()

ISENABLEDFOR () Funksjon brukes til å sjekke et hvilket loggnivå er aktivert eller deaktivert for øyeblikket. Følgende eksempel vil først sjekke informasjonsnivået aktivert eller ikke. Info og feilsøkingsnivåer er ikke aktivert som standard. Så produksjonen av ISENABLEFOR () funksjonen vil være falsk. Deretter er loggnivå satt til info og ISENABLEDFOR () vil komme tilbake for den siste uttalelsen.

Eksempel5.py

#importing modul
Importlogging
#Create Logger -objekt
Logger = logging.GetLogger ("Mylog")
#Check Info -nivået er aktivert eller ikke
Print ("Info Level er aktivert: % S" % (Logger.ISENABLED FOR (LOGGING.Info)))
# Angi loggnivå til info
hogst.BasicConfig (nivå = logging.Info)
#Check Info -nivået er aktivert eller ikke
Print ("Info Level er aktivert: % S" % (Logger.ISENABLED FOR (LOGGING.Info)))

Kjør manuset fra terminalen.

$ Python Eksempel5.py

Produksjon:

Følgende utgang vises etter å ha kjørt skriptet.

Gå til toppen

Bruke feilsøking ()

Debug () Funksjon brukes til å skrive ut detaljinformasjon etter diagnostisering av problemer i skriptet. Den numeriske verdien av Feilsøking nivået er 10, og du må angi dette nivået for å lage Debug () funksjon aktiv. Bruken av denne funksjonen vises med et enkelt skript i følgende eksempel. Her er loggnivået satt til å feilsøke for å skrive ut feilsøkingsmeldingen. check_even () -funksjonen er definert for å sjekke inngangsnummeret er jevnt eller merkelig. Hvis nummeret ikke engang er, vil funksjonen gi en feilsøkingsmelding ellers ingen.

Eksempel6.py

#importmodul
Importlogging
# Angi loggnivå til feilsøking
hogst.BasicConfig (nivå = logging.Debug)
#Declare -funksjon til å sjekke nummeret
def check_even (n):
#Sjekk nummeret er jevn eller ikke
Hvis n%2 != 0:
#Print feilsøking
hogst.Debug ("Antallet er ikke engang")
#Ta et nummer fra brukeren
n = input ("Vennligst skriv inn et jevnt nummer \ n")
#Call funksjonen
check_even (int (n))

Kjør manuset fra terminalen.

$ python eksempel6.py

Produksjon:
Skriptet utføres for tider med et jevnt nummer et oddetall. Når 55 tas som innspill, skriver den ut feilsøkingsmeldingen, og når 12 tas som input, sendes ingen melding.

Gå til toppen

Bruker info ()

info () Funksjon brukes til å gi en vellykket eller generell melding til brukeren for å bekrefte at koden fungerer som den skal. Den numeriske verdien av Info nivå er 20, og du må angi dette nivået før du bruker info () funksjon. Bruken av denne funksjonen vises i følgende eksempel. Her tildeles to numeriske verdier i to variabler x og y. En tilpasset funksjon 'addisjon'er erklært å beregne summen av x og y. info () Funksjon brukes til å kalle funksjonen og utskriftssammengivningsresultatet.

Eksempel7.py

#importmodul
Importlogging
# Angi loggnivå til info
hogst.BasicConfig (nivå = logging.Info)
#AKSIGN to verdier til x og y
x = 30
y = 20
#Declare en funksjon som heter Addition
def tillegg (x, y):
#Add to tall
return (x+y)
#Trykk summeringsverdiene som info -melding
hogst.Info ("sum av % d og % d er % d" % (x, y, tillegg (x, y))))

Kjør manuset fra terminalen.

$ Python Eksempel7.py

Produksjon:

Her opprettes ingen loggerobjekter. Så standardloggeren er rot og summen av x og y er 50. Følgende utgang vises etter å ha kjørt skriptet.

Gå til toppen

Bruker advarsel ()

advarsel() Funksjon brukes når et uventet problem oppstår eller for å advare brukeren for det fremtidige problemet. Den numeriske verdien av advarselsnivået er 30. Advarsel () -funksjonen fungerer for standardloggeren. Bruken av denne funksjonen vises i følgende eksempel. Her er loggnivået satt til advarsel i begynnelsen av skriptet. Dette skriptet beregner sirkelområdet basert på tatt radiusverdi. Hvis radiusverdien er null, vil en advarselsmelding skrives ut ellers vil området for sirkelen skrives ut.

Eksempel8.py

#importmodul
Importlogging
# Angi loggnivå til info
hogst.BasicConfig (nivå = logging.ADVARSEL)
#LES RADIUS -verdien som inngang
r = input ("Skriv inn et tall \ n")
#Declare en funksjon som heter
Def Area (Radius):
#Sjekk radiusverdien
Hvis radius == 0:
#Trykk advarsel hvis radius er null
hogst.Advarsel ("Radiusverdi kan ikke være null")
ellers:
#Kalsulere sirkelområdet
trykk ("Område av sirkel = % d" % (3.14*radius ** 2))
#Call funksjonen
Område (int (R))

Kjør manuset fra terminalen.

$ Python Eksempel8.py

Produksjon:

Skriptet utføres to ganger i utgangen med radiusverdiene, 0 og 4. Advarselsmeldingen skrives ut når radiusverdien er 0 og områdeverdien skrives ut når radius er 4.

Gå til toppen

Bruker feil ()

feil() Funksjon brukes når det finnes et alvorlig problem i skriptet. Det numeriske feilnivået er 40. feil() Funksjon fungerer for standard logger. Følgende eksempel viser bruken av feil() funksjon. Skriptets funksjon er å ta et eksisterende filnavn som input og skrive ut innholdet i filen. OS.sti Modul brukes til å lese hvilken som helst fil i Python. Så denne modulen importeres først. Her, hvis filnavnet som vil ta som inndata ikke eksisterer i systemet, vil feilmeldingen bli skrevet ut, ellers vil innholdet i filen bli skrevet ut.

Eksempel9.py

#import OS.banemodul
Importer OS.sti
Fra OS importsti
#IMPORT LOGGING MODUL
Importlogging
# Angi loggnivå til feil
hogst.BasicConfig (nivå = logging.FEIL)
#LES RADIUS -verdien som inngang
FN = input ("Skriv inn et filnavn \ n")
#Declare en funksjon som heter
def readfile (filnavn):
#Sjekk filen eksisterer eller ikke
Hvis sti.eksisterer (filnavn) == 0:
#PRINT -feilmelding hvis filen ikke eksisterer
hogst.Feil ("Filen eksisterer ikke")
ellers:
#Read og skriv ut filen hvis det finnes
FH = åpen (filnavn, "R")
print ("\ nfile innhold: \ n % s" % (fh.lese()))
#Call funksjonen
ReadFile (FN)

Kjør manuset fra terminalen.

$ Python Eksempel9.py

Produksjon:

Skriptet utføres to ganger i følgende utgang. For første gang er filnavnet som er gitt som inngang ikke eksisterer i systemet, og feilmeldingen skrives ut. For andre gang eksisterer filnavnet som blir tatt som inngang i systemet, og innholdet i filen skrives ut.

Gå til toppen

Bruker kritisk ()

Kritisk () -funksjon brukes også for å indikere det alvorlige problemet som kan stoppe utførelsen av skriptet. Loggnivået for kritisk er 50. kritisk() Funksjon fungerer for standard logger. Bruken av denne funksjonen vises i følgende eksempel. Her vil to inngangsverdier bli hentet fra brukeren som utbytte og divisor. Hvis divisorverdien er 0, vil det oppstå en kritisk feil og en kritisk melding vil bli skrevet ut.

Eksempel10.py

#importmodul
Importlogging
# Angi loggnivå til kritisk
hogst.BasicConfig (nivå = logging.KRITISK)
#Ta utbytteverdien
utbytte = int (input ("Angi verdien av utbytte \ n"))
#Ta av divisorverdien
Divisor = int (input ("Angi verdien av divisor \ n"))
prøve:
#Divide tallene
trykk (utbytte/divisor)
Bortsett fra ZerodivisionError:
#Trykk den kritiske meldingen
hogst.Kritisk ("Divisjon med null feil")

Kjør manuset fra terminalen.

$ Python Eksempel10.py

Produksjon:

Skriptet utføres to ganger i følgende utgang. Når 78 og 0 tas som inndata, skrives den kritiske feilmeldingen. Når 24 og 2 blir tatt som input deretter 12.0 skrives ut som utgang.

produksjon.

Gå til toppen

Logg på en fil

Utgangen fra logging viser i konsollen som standard konfigurasjon. Men du kan lagre utdataene fra loggingen i en fil ved å bruke filnavnsargumentet til BasicConfig () -funksjonen. Hvordan du kan lagre loggingsinformasjon i en fil vises i eksemplet. Her, 'min.Logg'er tildelt som filnavn og lagret i filnavnsargumentet til BasicConfig (). Loggnivået er satt til å feilsøke. Etter å ha kjørt manuset, 'min.Logg' Filen vil bli opprettet og loggmeldinger blir lagret i filen.

Eksempel11.py

#IMPORT LOGGING MODUL
Importlogging
#Sett loggfilnavnet
filnavn = 'min.Logg'
#Sett loggfilnavnet og nivået
hogst.BasicConfig (filnavn = filnavn, nivå = logging.Debug)
#Trykkmeldinger til filen
hogst.Debug ('Debug Message')
hogst.info ('info -melding')
hogst.Feil ('Feilmelding')

Kjør skriptet og se innholdet i min.Logg fil fra terminalen.

$ python eksempel11.py
$ katt min.Logg

Produksjon:

Følgende utgang vises etter å ha kjørt skriptet.

Gå til toppen

Bruker variabel i logging

Eventuelle data fra skriptet kan legges til loggen ved å bruke variabelen i Python. Dette eksemplet viser hvordan du kan passere hvilken som helst Python -variabel i loggmeldingen. Dette følgende skriptet vil ta to strenginnganger fra brukerne som Brukernavn og passord. Hvis inngangsverdiene samsvarer med verdiene som er nevnt i skriptet, vil den skrive ut en feilloggmelding som er gitt med verdien av errmsg variabel. Hvis verdiene ikke samsvarer, vil den skrive ut en info loggmelding med verdien av samme variabel.

Eksempel12.py

#Importmodul
Importlogging
#Create Logger
Logger = logging.getLogger ('mylog')
#Ta to inndata i variabelen 'brukernavn' og 'passord'
Brukernavn = input ("Enter brukernavn \ n")
Passord = input ("Skriv inn passord \ n")
#Configure logging med format og nivå
hogst.BasicConfig (format = '%(melding) S', nivå = 10)
"Sjekk brukernavnet og passordet er gyldig eller ikke. Tildele
Suksessmelding for gyldig bruker- og feilmelding for den ugyldige brukeren
inn i variabelen 'errmsg'. "Errflag" -variabel vil angi 1 for feil
og 0 for suksess.
""
Hvis brukernavn == 'fahmida' og passord == 'hemmelig':
errflag = 0
errmsg = 'autentisering vellykket'
ellers:
errflag = 1
errmsg = 'autentisering mislyktes'
#Trykkloggmelding basert på 'errflag'
Hvis feil:
Logger.Feil ('%S: Ugyldig bruker', errmsg)
ellers:
Logger.info ('%s: gyldig bruker', errmsg)

Kjør manuset fra terminalen.

$ python eksempel12.py

Produksjon:

Skriptet utføres to ganger med gyldige data og ugyldige data i følgende utgang. Når 'admin'Og'hemmelig'blir passert som Brukernavn og passord som er ugyldige data, så lagret den en feilmelding i variabelen, errmsg. Når 'fahmida ' og 'hemmelig' blir passert som Brukernavn og passord Som innspill som er gyldige data, lagres en suksessmelding i variabelen, errmsg. Verdien av errmsg skrives ut med loggfeilmeldingen for feil og med logginfo -meldingen for å lykkes.

Gå til toppen

Bruker unntak ()

unntak() Funksjon brukes i logging hvis Python -skriptet inneholder unntaksbehandlerkode. Det fungerer som feil () funksjon av logging. Forskjellen er at unntak() Funksjon viser stakksporet sammen med utdataene. Bruken av denne funksjonen vises i følgende eksempel. Følgende skript vil ta en numerisk verdi som input og øke et unntak hvis inngangsverdien er negativ. Her, unntak() Funksjonen vil skrive ut unntaksmeldingen som unntak.

Eksempel13-py

#IMPORT LOGGING MODUL
Importlogging
#Ta en inngang
nummer = int (input ("Angi et positivt tall \ n"))
prøve:
#Sjekk inngangsverdien er positiv eller negativ
Hvis nummer < 0 :
Hev unntak ("Inngangsverdien er negativ")
unntatt unntak som e:
#Trykk unntaksmeldingen
hogst.unntak (e)

Kjør manuset fra terminalen.

$ python eksempel13.py

Produksjon:

Når skriptet utføres med verdien -89 som er negativt, har det kastet et unntak og skrevet ut stackspor og unntaksutgang. Når skriptet utføres med verdien 13 som er positivt, skrives ingen melding.

Gå til toppen

Opprette behandler

Loggoppføringer kan håndteres på forskjellige måter ved å bruke forskjellige behandlere. De mest brukte håndtererne for logging er FileHandler og Streamhandler. FileHandler brukes til å sende loggoppføringene til en fil og Streamhandler brukes til å sende loggoppføringene til konsoll. Bruken av disse håndtererne vises i følgende eksempel. I dette skriptet er feilsøkingsnivå satt til FileHandler objekt og info -nivå er satt for Streamhandler gjenstand. For dette vil feilsøkings- og info -meldinger bli lagret i Logdata.Logg Fil- og info -meldingen vil bli skrevet ut i konsollen.

Eksempel14.py

#importmodul
Importlogging
#Create Logger
Logger = logging.getLogger ('mylog')
#Set loggnivå
Logger.SetLevel (logging.Debug)
#Create StreamHandler -objekt
Chandler = logging.StreamHandler ()
#Set nivå for streamhandler
Chandler.SetLevel (logging.Info)
#Create FileHandler -objekt
fhandler = logging.FileHandler ('logdata.Logg')
#Setivå for FileHandler
Fhandler.SetLevel (logging.Debug)
#Add FileHandler objekt til Logger
Logger.Addhandler (Fhandler)
#Add StreanHandler objekt til logger
Logger.AddHandler (Chandler)
#Trykk loggmeldinger
Logger.Debug ('Print Debug Message')
Logger.info ('utskriftsinfo melding')

Kjør skriptet og se innholdet i 'Logdata.logg 'fil fra terminalen.

$ python eksempel14.py
$ katt logdata.Logg

Produksjon:

Følgende utgang vises etter å ha kjørt skriptet.

Gå til toppen

Bruker formater ()

Formatter () Funksjon brukes til å konfigurere innholdet og strukturen til loggdata. Hvordan du kan bruke Formatter () funksjon for å konfigurere loggdataene til FileHandler Objekt vises i følgende eksempel. Her, Formatter () brukes til å formatere loggdataene med opprettingstid, loggernavn og loggmelding. Mylog.Logg Fil vil bli opprettet etter å ha utført skript og de formaterte loggmeldingene blir lagret i filen.

Eksempel15.py

#importmodul
Importlogging
# Lag en tilpasset logger
Logger = logging.getLogger ()
# Lag håndterere
file_handler = logging.FileHandler ('Mylog.Logg')
#Sethandlerloggnivå
file_handler.SetLevel (logging.Debug)
# Lag formatts
file_format = logging.Formatter (' %(ASCTime) S - %(LevelName) S - %(Melding) S')
#Add formatter til behandleren
file_handler.setFormatter (file_format)
#Add håndterere til loggeren
Logger.addHandler (file_handler)
#Trykk loggmeldinger
Logger.Advarsel ('Advarselmelding')
Logger.Feil ('Feilmelding')

Kjør skriptet og se innholdet i 'Logdata.logg 'fil fra terminalen.

$ python eksempel15.py
$ katt mylog.Logg

Produksjon:

Følgende utgang vises etter å ha kjørt skriptet.

Gå til toppen

Bruker LogRecord.GetMessage ()

Når noe er logget av loggeren, opprettes Logrecocd -objekt automatisk. MakerCord () -funksjonen kan brukes til å lage LogRecord -objekt manuelt. LogRecord -objekt inneholder mange attributter og GetMessage () funksjon. Når LogRecord -objektet opprettes manuelt da GetMessage () Returnerer meldingen fra LogRecord -objektet basert på argumentene som er gitt av brukeren. Følgende eksempel viser bruken av GetMessage () funksjon.

Eksempel16.py

#importmodul
Importlogging
#Create LogRecord -objekt
Logrec = logging.LogRecord ('MyLogger', 10, '/Home/Fahmida/Python/Eksempel2.py ', 4,
'Python Logging Tutorial', (), Ingen)
#Call getMessage () for å skrive ut melding
trykk (Logrec.getMessage ())

Kjør manuset fra terminalen.

$ Python Eksempel16.py

Produksjon:

Følgende utgang vises etter å ha kjørt skriptet.

Gå til toppen

Bruke LogRecord -attributter - Args

Args Attributt lagrer argumentene som sendes til LogRecord -objektet. Verdiene til Args blir slått sammen med msg attributt for å produsere verdien av beskjed Attributt når LogRecord -objektet oppretter automatisk. Attributtverdien av Args kan leses ved å lage et LogRecord -objekt manuelt. I det følgende eksemplet er et LogRecord -objekt som heter LogRecord opprettes manuelt av brukerdefinerte data, og verdien av argumentet skrives ut av Args Egenskap.

Eksempel17.py

#Importmodul
Importlogging
#Create Custom Log Record
LogRecord = logging.LogRecord ('Mynewlog', 30, 'Python/Code/Eksempel1.py ', 6,
'Python Logging Tutorial', 'Test', ")
#Print args Verdi
Trykk (LogRecord.args)

Kjør manuset fra terminalen.

$ python eksempel17.py

Produksjon:

Følgende utgang vises etter å ha kjørt skriptet.

Gå til toppen

Bruke LogRecord -attributter - ASCTIME

ASCTIME Attributt brukes til å lagre tiden når noen logrecord oppretter. Det lagret datoen, tid og tider i millisekunder etter å ha opprettet et hvilket som helst loggerobjekt. Følgende eksempel viser bruken av denne attributtet. Formatet på denne attributtet er '%(asctime) s'.

Eksempel18.py

#Importmodul
Importlogging
#Create Logger med navn
Logger = logging.getLogger ('mylog')
#Sett formateringen for å lese 'asctime' attributt
lformat = '%(asctime) s'
#Configure logging med format
hogst.BasicConfig (Format = LFormat)
#Trykkloggmelding
Logger.Advarsel ('det er en advarsel')

Kjør manuset fra terminalen.

$ python eksempel18.py

Produksjon:

Følgende utgang vises etter å ha kjørt skriptet.

Gå til toppen

Bruke LogRecord -attributter - filnavn

filnavn attributt brukes til å hente delen av filnavnet fra banen. Følgende eksempel viser bruken av denne attributtet. Formatet på denne attributtet er '%(filnavn) s'.

Eksempel19.py

#Importmodul
Importlogging
#Sett formateringen for å lese 'melding' og 'filnavn' attributter
lformat = ' %(melding) s - %(filnavn) s'
#Configure logging med format
hogst.BasicConfig (Format = LFormat)
#Trykkloggmelding
hogst.Feil ('Feilmeldingen oppstod i filen')

Kjør manuset fra terminalen.

$ Python Eksempel19.py

Produksjon:

Følgende utgang vises etter å ha kjørt skriptet.

Gå til toppen

Bruke LogRecord -attributter - funcname

funcname Attributt er å hente funksjonsnavnet der logging kalles. Følgende eksempel viser bruken av dette attributtet. Her opprettes loggerobjektet i funksjonen, mylog_func (). Formatet på denne attributtet er '%(funcname) s'.

Eksempel20.py

#Importmodul
Importlogging
#Declare -funksjon
def mylog_func ():
#Sett formateringen for å lese 'melding' og 'funcname' attributter
lformat = ' %(melding) s - %(funcname) s'
#Configure logging med format
hogst.BasicConfig (Format = LFormat)
#Trykkloggmelding
hogst.Kritisk ('Loggeren kalles fra funksjonen')
#Kall funksjonen for logging
mylog_func ()

Kjør manuset fra terminalen.

$ Python Eksempel20.py

Produksjon:

Følgende utgang vises etter å ha kjørt skriptet.

Gå til toppen

Bruke LogRecord -attributter - Lineno

Lineno attributt brukes til å hente linjenummeret der loggingen kalles. Det vil returnere en numerisk verdi. Følgende eksempel viser bruken av denne attributtet. Formatet på denne attributtet er '%(Lineno) S'.

Eksempel21.py

#Importmodul
Importlogging
#Sett formateringen for å lese 'Melding' og 'Lineno' attributter
Lformat = ' %(melding) S - %(Lineno) D'
#Configure logging med format
hogst.BasicConfig (Format = LFormat, Level = 20)
#Create Logger
Logger = logging.getLogger ()
#Trykkloggmelding
Logger.Info ('Loggingssamtalen er utstedt på Lineno')

Kjør manuset fra terminalen.

$ Python Example21.py

Produksjon:

Følgende utgang vises etter å ha kjørt skriptet.

Gå til toppen

Bruke LogRecord -attributter - Modul

modul Attributt brukes til å hente bare filnavnet uten utvidelse fra filstien. Følgende eksempel viser bruken av denne attributtet. Formatet på denne attributtet er '%(modul) s'.

Eksempel22.py

#Importmodul
Importlogging
#Sett formateringen for å lese 'Melding' og 'modul' attributter
lformat = ' %(melding) s - %(modul) s'
#Configure logging med format og nivå
hogst.BasicConfig (Format = LFormat, Level = Logging.Info)
#Trykkloggmelding
hogst.info ('Navnet på filen uten utvidelse er')

Kjør manuset fra terminalen.

$ Python Eksempel22.py

Produksjon:

Følgende utgang vises etter å ha kjørt skriptet.

Gå til toppen

Bruke LogRecord -attributter - Navn

Navn Attributt brukes til å hente loggernavnet som brukes i getLogger () -funksjonen. Følgende eksempel viser bruken av denne attributtet. Formatet på denne attributtet er '%(navn) s'.

Eksempel23.py

#Importmodul
Importlogging
#Sett formateringen for å lese 'Melding' og 'Navn' attributter
lformat = ' %(melding) s - %(navn) s'
#Configure logging med format og nivå
hogst.BasicConfig (Format = LFormat, Level = Logging.Info)
#Sett loggernavnet
Logger = logging.getLogger ('mylog')
#Trykkloggmelding
Logger.info ('Loggernavnet er')

Kjør manuset fra terminalen.

$ Python Eksempel23.py

Produksjon:

Følgende utgang vises etter å ha kjørt skriptet.

Gå til toppen

Bruke LogRecord -attributter - Pathname

banenavn Attributt brukes til å hente banen til filstedet. Følgende eksempel viser bruken av denne attributtet. Formatet på denne attributtet er '%(banenavn) s'.

Eksempel24.py

#Importmodul
Importlogging
#Sett formateringen for å lese 'Melding' og 'Pathname' attributter
lformat = ' %(melding) s: %(pathname) s'
#Configure logging med format og nivå
hogst.BasicConfig (Format = LFormat, Level = Logging.Info)
#Trykkloggmelding
hogst.info ('filplassering')

Kjør manuset fra terminalen.

$ Python Example24.py

Produksjon:

Følgende utgang vises etter å ha kjørt skriptet.

Gå til toppen

Bruke logging.Deaktiver

Deaktiver () -funksjonen brukes til å deaktivere all logging for det spesifikke nivået. For eksempel, hvis det kalles med informasjonsnivå, vil alle loggmeldinger om info, advarsel, feil og kritisk bli ignorert for alle loggere. Bruken av denne funksjonen vises i følgende eksempel. Advarselsmeldingen er aktivert for standardloggeren. Så den andre advarselsmeldingen vil ikke bli skrevet ut etter å ha deaktivert advarselsnivået.

Eksempel25.py

#importing modul
Importlogging
#Skap og konfigurere logger
hogst.BasicConfig (format = '%(melding) S')
#Skape et objekt
Logger = logging.getLogger ()
# Skriv ut testmeldinger før deaktivering
Logger.ADVARSEL ("Test advarselsmelding 1")
hogst.Deaktiver (logging.ADVARSEL)
Logger.ADVARSEL ("Test advarselsmelding 2")

Kjør manuset fra terminalen.

$ Python Eksempel25.py

Produksjon:

Følgende utgang vises etter å ha kjørt skriptet.

Gå til toppen

Konklusjon

Loggingsinformasjon hjelper koderen til å identifisere de forskjellige problemene i koden og løse problemet raskt. Python -programmereren må lære Python -loggingsalternativer for å gjøre koden mer passende. Grunnbruket av Python -logging vises i denne artikkelen ved å bruke 25 forskjellige eksempler. Jeg håper denne artikkelen vil hjelpe leserne til å gjelde for loggdata i Python -koden sin på riktig måte.