Lær dine logningsmuligheder i Cisco IOS at kende
On september 28, 2021 by adminDet er en nødvendig færdighed for enhver netværksadministrator at vide, hvordan man bruger logning korrekt. Det er afgørende, at du ved, hvordan du bruger logning, når det er tid til at begynde fejlfinding.
Cisco IOS tilbyder en lang række muligheder for logning. For at hjælpe dig med at komme i gang, vil vi diskutere, hvordan du konfigurerer logning, undersøge, hvordan du kan se loggen og dens status, og se på tre almindelige fejl, når det drejer sig om logning.
Kommandoen logging i Global Configuration Mode og kommandoen show logging i Privileged Mode er to enkle, men kraftfulde værktøjer til at konfigurere og vise alle Cisco IOS-logningsmuligheder. Lad os se nærmere på dem.
Konfigurer logning i Cisco IOS
Når du konfigurerer logning, er den vigtigste kommando at kende logging-kommandoen, som bruges i Global Configuration Mode. Her er et eksempel på denne kommando og dens muligheder.
router(config)# logging ? Hostname or A.B.C.D IP address of the logging host buffered Set buffered logging parameters buginf Enable buginf logging for debugging cns-events Set CNS Event logging level console Set console logging parameters count Count every log message and timestamp last occurrence exception Limit size of exception flush output facility Facility parameter for syslog messages history Configure syslog history table host Set syslog server IP address and parameters monitor Set terminal line (monitor) logging parameters on Enable logging to all supported destinations origin-id Add origin ID to syslog messages rate-limit Set messages per second limit reload Set reload logging level server-arp Enable sending ARP requests for syslog servers when first configured source-interface Specify interface for source address in logging transactions trap Set syslog server logging level userinfo Enable logging of user info on privileged mode enablingrouter(config)# logging
Mens omfanget af denne artikel forhindrer os i at udforske hver enkelt af disse muligheder, så lad os se på de mest almindelige.
Du kan konfigurere routeren til at sende bufferlogning af dens hændelser til hukommelsen. (Ved genstart af routeren vil alle hændelser, der er gemt i den bufferede log, gå tabt.) Her er et eksempel:
Router(config)# logging buffered 16384
Du kan også sende routerens hændelser til en syslog-server.Dette er en ekstern server, der kører på dit netværk. Syslogserveren kører højst sandsynligt på en Linux- eller Windows-server. Fordi den er ekstern i forhold til routeren, er der en ekstra fordel: Den bevarer hændelser, selv hvis routeren mister strømmen. En syslog-server giver også mulighed for centraliseret logning for alle netværksenheder.
For at konfigurere syslog-logning skal du blot bruge kommandoen logging og værtsnavnet eller IP-adressen på syslog-serveren. Hvis du vil konfigurere din Cisco-enhed til at bruge enyslog-server, skal du bruge følgende kommando:
Router(config)# logging 10.1.1.1
For at få mere at vide om brugen af syslog med Cisco IOS skal du læse denne TechRepublic download, “Usesyslog to monitor and troubleshooting Cisco devices.”
Cisco IOS aktiverer som standard logning til konsol, monitor ogsyslog. Men der er en hage: Der er ikke konfigureret nogen syslog-vært, så det output går ingen steder hen.
Der er otte forskellige logningsniveauer.
- 0-emergencies
- 1-alerts
- 2-critical
- 3-errors
- 4-warnings
- 5-notification
- 6-informational
- 7-debugging
Det er standardniveauet for console, monitor og syslog er debugging.Kommandoen logging on er standard. Hvis du vil deaktivere al logning, skal du bruge kommandoen nologging on.
Som standard logger routeren alt på niveauet debugging og derover. Det betyder, at logning sker fra niveau 7 (fejlfinding) og op til niveau 0 (nødsituationer). Hvis du ønsker at reducere, hvad systemet logger, skal du bruge noget som kommandoen logging consolenotifications.
Dertil kommer, at routeren som standard ikke aktiverer logning til systembufferen. Derfor skal du bruge kommandoen logging buffered for at aktivere den.
Se status for logning og selve logningen
For at få vist status for din logning samt den lokalebufferede log skal du bruge kommandoen show logging. Her er et eksempel:
router# show loggingSyslog logging: enabled (0 messages dropped, 394 messages rate-limited, 91 flushes, 0 overruns, xml disabled, filtering disabled) Console logging: level debugging, 2766982 messages logged, xml disabled, filtering disabled Monitor logging: level debugging, 12370 messages logged, xml disabled, filtering disabled Buffer logging: level debugging, 2754146 messages logged, xml disabled, filtering disabled Logging Exception size (4096 bytes) Count and timestamp logging messages: disabled Trap logging: level debugging, 3420603 message lines logged Logging to 10.1.1.1, 3420603 message lines logged, xml disabled, filtering disabled Log Buffer (10000000 bytes):i96Feb 7 13:34:00.065 CST: %LINK-3-UPDOWN: Interface Serial1/1:22, changed state to upFeb 7 13:34:00.069 CST: %DIALER-6-BIND: Interface Se1/1:22 bound to profile Di96
Notér, at denne router har aktiveret syslog-logning og sender den til vært 10.1.1.1.1. Desuden er konsollogning på debuggingniveau, og indstillingen for local buffered logging er 10.000.000 bytes.
Læs dig for disse almindelige logningsfejl
Logning kan til tider være frustrerende. Lad os se på tre almindelige fejl for at undgå nogle af disse frustrationer.
Ingen indstilling af terminalen til at overvåge logning
Hvis du telnetter til en router og ikke kan se noget af den logning, du forventer, skal du kontrollere, om du har indstillet din terminal til at overvåge logningen. Du kan aktivere dette med kommandoen terminalmonitor. Hvis du vil deaktivere den, skal du bruge kommandoen terminalno monitor.
For at fastslå, om du har aktiveret overvågning, skal du bruge kommandoen show terminal og kigge efter følgende:
Capabilities: Receives Logging Output
Hvis du ser dette, overvåger du logningsoutput. Hvis den returnerer None for kapaciteter, er overvågningen slået fra.
Bruger du det forkerte logningsniveau
Hvis du ikke kan se logningsoutput, bør du også kontrollere, om du har indstillet niveauet korrekt. Hvis du f.eks. har indstillet konsollogning til nødstilfælde, men du kører debugging, vil du ikke se noget debuggingoutput på konsollen.
For at bestemme det indstillede niveau skal du bruge kommandoen show logging. Husk, at du skal indstille niveauet til et højere tal for at se alle niveauer under det. Hvis du f.eks. indstiller logning tildebugging, vises alle andre niveauer.
Sørg desuden for, at den logningstype, du ønsker at se, passer til det niveau, du konfigurerer. Hvis du konfigurerer monitorlogning til debug, men du er på konsollen, og du har indstillet den til informationel, vil du ikke se debug-udgangen på konsollen.
Visning af forkert tid og dato i logfiler
Du kan se logmeddelelser, der ikke viser den korrekte dato og det korrekte klokkeslæt. Der er en række muligheder for at styre den dato og det klokkeslæt, der vises på logningsoutput (enten til skærmen eller til bufferen). Du kan kontrollere dette ved at bruge følgende kommando:
Router(config)# service timestamps debug ? datetime Timestamp with date and time uptime Timestamp with system uptime
Husk, at mange problemer kræver en eller anden form for historiskallog for at hjælpe med at finde en løsning. Derfor er det vigtigt at sikre, at du har konfigureret logning korrekt, så du kan bruge dine logfiler til at se fortiden.
Misser du en klumme?
Kig i Cisco Routers and SwitchesArchive, og læs David Davis’ seneste klummer.
Vil du lære mere om router- og switchhåndtering? Tilmeld dig automatisk vores gratis nyhedsbrev om Cisco Routers and Switches, der leveres hver fredag!
David Davis har arbejdet i it-branchen i 12 år og er indehaver af flere certificeringer, herunder CCIE, MCSE+I, CISSP, CCNA, CCDA og CCNP. Han er i øjeblikket leder af en gruppe system-/netværksadministratorer for en privatejet detailvirksomhed og udfører netværks-/systemkonsulentarbejde på deltid.
Skriv et svar