prohlížení protokolů Live in Windows

ve světě řešení problémů s aplikacemi jsou protokoly aplikace vaším nejlepším přítelem. Někdy víte, kdy se vaše chyba děje, ale někdy potřebujete vědět, až do okamžiku, kdy se chyba objeví v souborech protokolu. Jinými slovy, někdy chcete zobrazit všechny aktualizace protokolu přesně tak, jak k nim dochází. Pokud pracujete v systému Windows a ocitnete se v této pozici, zde je rychlý přehled mých oblíbených způsobů živého zobrazení souborů protokolu.
pro tyto příklady používám instanci Sitecore, ale tyto metody fungují pro prohlížení všech textových protokolů, nejen protokolů Sitecore.

Metoda 1: Windows PowerShell

v prostředí Windows PowerShell je základním příkazem pro živé zobrazení aktualizací souboru:

Get-Content {MyFile} -Wait -Tail 30

použití:

cd C:\inetpub\wwwroot\MySitecoreInstance\Data\logsGet-Content Log.20160706.txt -Wait -Tail 30

v případě Sitecore a pravděpodobně mnoha dalších řešení je Naposledy upraveným souborem aktivní protokol. Zde je příkaz, který jsem napsal, abych automaticky získal obsah v Naposledy upraveném souboru (který odpovídá protokolu Sitecore.*.txt pattern) v adresáři:

cd C:\inetpub\wwwroot\MySitecoreInstance\Data\logsgci -Filter log.*.txt | sort LastWriteTime | select -last 1 | Get-Content -Wait -Tail 30
powershell get-content

sledování Sitecore spin up z protokolu…

výhodou této metody je její dostupnost v jakémkoli systému, který má nainstalovaný PowerShell, a PowerShell je ve výchozím nastavení nainstalován v systémech se systémem Windows 7 a vyšším. Menší nevýhodou, když jsem spustil tento příkaz na systémech Win7, je nízká obnovovací frekvence. Zdá se, že to bylo opraveno ve Win8u.

Metoda 2: Baretail.exe

pojmenovaný po příkazu „tail“ ze světa Unix/Linux, Baretail je svobodný, lehký, samostatný spustitelný soubor. Baretail je jedním úkolem je live-view log souborů, a to také sportovní některé pěkné funkce, jako je barevné kódování. Když jsem použil tuto aplikaci, to sloužilo svému účelu docela pěkně. Baretail inherentní nevýhodou je, že některé systémy budou více uzamčeny (číst: výrobní servery), a to znamená, že neběží .exe soubory, které jste stáhli z Internetu. To je důvod, proč Metoda 1 je pro mě běžnější; existuje mnohem větší šance, že PowerShell bude na serveru. Za zmínku také stojí, že Baretail neviděl novou verzi vydanou od roku 2006,ale aplikace se stále zdá být kompatibilní s nejnovější verzí systému Windows 10.

baretail

řekl jsem Baretail, aby zvýraznil řádky obsahující „chyba“.

slyšel jsem Doc Monitor plugin pro Notepad++ zmínil jako řešení podobné Baretail.exe, ale sám jsem to nezkoušel. Předpokládám, že to bude čelit podobným nevýhodám: bude to použitelné pouze v systémech, kde je nainstalován Poznámkový blok++.

Metoda 3: Příkaz ocasu

to bude vzácný případ, ale házím to pro rozmanitost. Předpokládejme, že pracujete na systému, který má subsystém Windows pro Linux*, Cygwin nebo něco jiného, co poskytuje shell podobný Unixu v systému Windows. Pokud jste součástí tohoto případu edge, máte k dispozici příkaz Tail, který existuje po celá desetiletí a je velmi slušný. Podobně jako příkaz PowerShell, který jsem napsal, pomocí tohoto příkazu* * ve vašem shellu vytáhne aktuální protokol Sitecore a bude následovat:

tail -f `ls -t /mnt/c/inetpub/wwwroot/MySitecoreInstance/Data/logs/log.* | head -n1`
ocas běží na WSL

ocas běží na Windows subsystému pro Linux.

*od 7/6/16 je systém Windows Subsystem pro Linux stále v beta verzi a je k dispozici pouze pro uživatele systému Windows 10, kteří jsou součástí programu Windows Insider a povolili rychlé aktualizace vyzvánění. To se samozřejmě v budoucnu změní.
* * ve WSL je jednotka C mapována na /mnt / c/ . V Cygwinu je jednotka C mapována na /cygdrive/c/ .

Čestné uznání: Sitecore Log Analyzer

pro vás vývojáři Sitecore, musím to hodit, protože je to tak cenný nástroj a vidím tolik vývojářů Sitecore, kteří ani nevědí, že existuje: Sitecore Log Analyzer (SCLA). I když to neumožňuje zobrazit soubory protokolu naživo, SCLA poskytuje podrobnou analýzu souborů protokolu, což usnadňuje sledování trendů chyb, časových os a dalších. SCLA považuji za základní nástroj pro podporu Sitecore.

o autorovi

Jacob King je Senior technický konzultant pro Perficient, specializující se na Sitecore řešení. Žije v Indianapolis se svou ženou a synem.

Více od tohoto autora

Leave a Reply

Vaše e-mailová adresa nebude zveřejněna.