Seznamte se s možnostmi protokolování v systému Cisco IOS
On 28 září, 2021 by adminZnalost správného používání protokolování je nezbytnou dovedností každého správce sítě. Je nezbytné, abyste věděli, jak protokolování používat, když přijde čas začít s řešením problémů.
Systém Cisco IOS nabízí velké množství možností pro protokolování. Abychom vám usnadnili orientaci v problematice, probereme, jak konfigurovat protokolování, prozkoumáme, jak zobrazit protokol a jeho stav, a podíváme se na tři běžné chyby při protokolování.
Příkaz logování v globálním konfiguračním režimu a příkaz show logging v privilegovaném režimu jsou dva jednoduché, ale výkonné nástroje pro konfiguraci a zobrazení všech možností protokolování systému Cisco IOS. Podívejme se na ně blíže.
Konfigurace protokolování v systému Cisco IOS
Při konfiguraci protokolování je nejdůležitější znát příkaz logging, který se používá v režimu globální konfigurace. Zde je příklad tohoto příkazu a jeho možností.
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
Ačkoli nám rozsah tohoto článku neumožňuje prozkoumat každou z těchto možností, podívejme se na ty nejběžnější.
Směrovač můžete nakonfigurovat tak, aby odesílal protokolování událostí do vyrovnávací paměti. (Restartováním směrovače dojde ke ztrátě všech událostí uložených ve vyrovnávací paměti.) Zde je příklad:
Router(config)# logging buffered 16384
Události směrovače můžete také odesílat na syslog server. jedná se o externí server běžící v síti. S největší pravděpodobností je syslogserver spuštěn na serveru Linux nebo Windows. Protože je externí vůči směrovači, má další výhodu: uchovává události i v případě, že směrovač ztratí napájení. Server syslog také zajišťuje centralizované protokolování pro všechna síťovázařízení.
Pro konfiguraci protokolování syslog stačí použít příkaz logging a název hostitele nebo IPadresu serveru syslog. Chcete-li tedy nakonfigurovat zařízení Cisco tak, aby používalo server asyslog, použijte následující příkaz:
Router(config)# logging 10.1.1.1
Chcete-li se dozvědět více o používání protokolu syslog se systémem Cisco IOS, podívejte se na tento dokument TechRepublic ke stažení: „Usesyslog to monitor and troubleshooting Cisco devices.“
Systém Cisco IOS ve výchozím nastavení umožňuje protokolování na konzolu, monitor asyslog. Má to však háček:
Existuje osm různých úrovní protokolování.
- 0-nehody
- 1-upozornění
- 2-kritické
- 3-chyby
- 4-upozornění
- 5-oznámení
- 6-informační
- 7-odstraňování
Výchozí úroveň pro konzolu, monitoru a syslogu je ladění.Příkaz logging on je výchozí. Chcete-li zakázat veškeré protokolování, použijte příkaz nologging on.
Ve výchozím nastavení směrovač protokoluje vše na úrovni laděnía vyšší. To znamená, že protokolování probíhá od úrovně 7 (ladění) až poúroveň 0 (nouzové situace). Pokud chcete omezit, co systém protokoluje, použijteněco jako příkaz logging consolenotifications.
Ve výchozím nastavení navíc směrovač nepovoluje protokolování do systémové vyrovnávací paměti. Proto jej musíte povolit pomocí příkazu logging buffered.
Zobrazení stavu logování a samotného logování
Chcete-li zobrazit stav logování a také logování v místní vyrovnávací paměti, použijte příkaz show logging. Zde je příklad:
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
Všimněte si, že tento směrovač má povoleno protokolování syslogu a odesílá jej na hostitele 10.1.1.1. Kromě toho je protokolování konzoly na úrovni ladění a nastavení pro protokolování v místní vyrovnávací paměti je 10 000 000 bajtů.
Dejte si pozor na tyto běžné chyby protokolování
Logování může být někdy frustrující. Abychom předešli některým z těchto frustrací, podívejme se na tři běžné chyby.
Nenastavení terminálu na monitorování protokolování
Pokud se připojíte pomocí Telnetu ke směrovači a nevidíte některé z očekávaných protokolů, zkontrolujte, zda jste nastavili terminál na monitorování protokolování. Tuto funkci můžete povolit příkazem terminalmonitor. Chcete-li ji zakázat, použijte příkaz terminálmonitor.
Chcete-li zjistit, zda jste monitorování povolili, použijte příkaz show terminal a vyhledejte následující údaje:
Capabilities: Receives Logging Output
Pokud je vidíte, monitorujete výstup logování. Pokud se pro možnosti vrátí None, pak je monitorování vypnuto.
Používáte nesprávnou úroveň logování
Pokud nevidíte výstup logování, měli byste také zkontrolovat, zda jste nastavili správnou úroveň. Pokud jste například nastavili logování konzoly na nouzové stavy, ale máte spuštěné ladění, neuvidíte na konzole žádný výstup ladění.
Pro zjištění nastavené úrovně použijte příkaz show logging. Mějte na paměti, že musíte nastavit úroveňna vyšší číslo, abyste viděli všechny úrovně pod ní. Například při nastavení logging atdebugging se zobrazí každá další úroveň.
Dále se ujistěte, že typ logování, který chcete vidět, odpovídá nastavované úrovni. Pokud nakonfigurujete monitorovánílogování na ladění, ale jste na konzole a nastavili jste jej na informační, neuvidíte výstup ladění na konzole.
Zobrazování nesprávného času a data v protokolech
Můžete vidět zprávy protokolu, které nevykazují správné datum a čas. Existuje celá řada možností, jak kontrolovat datum a čas, kterése zobrazují na výstupu protokolů (buď na obrazovku, nebo do vyrovnávací paměti). Pro tuto kontrolu použijte následující příkaz:
Router(config)# service timestamps debug ? datetime Timestamp with date and time uptime Timestamp with system uptime
Pamatujte, že mnoho problémů vyžaduje nějaký druh historickéhozáznamu, který pomůže najít řešení. Proto je důležité se ujistit, že jste správně nakonfigurovali protokolování, abyste mohli použít protokoly k nahlédnutí do minulosti.
Zmeškali jste sloupek?
Podívejte se do Archivu směrovačů a přepínačů Cisco a dohledejte nejnovější sloupky Davida Davise.
Chcete se dozvědět více o správě směrovačů a přepínačů? Automaticky se přihlaste k odběru bezplatného zpravodaje Cisco Routers and Switches, který vám bude doručován každý pátek!
David Davis pracuje v oboru IT již 12 let a je držitelem několika certifikátů, včetněCCIE, MCSE+I, CISSP, CCNA, CCDA a CCNP. V současné době řídí skupinu systémových/síťových administrátorů pro soukromou maloobchodní společnost a na částečný úvazek provádí síťové/systémové poradenství.
Napsat komentář