ASP.NET tukiäänisarake
Log Parser 2.2 ja ASP.NET
Jotta voit mukauttaa tämän sarakkeen tarpeittesi mukaan, haluamme kutsua sinut lähettämään ideoita sinua kiinnostavista aiheista ja ongelmista, joita haluat tarkastella tulevissa Knowledge Base -artikkeleissa ja Tukiääni-sarakkeissa. Voit lähettää ideasi ja palautteesi Kysy sitä -lomakkeella. Tämän sarakkeen alareunassa on myös linkki lomakkeeseen.
Tervetuloa ASP.NET Tukiääni-sarakkeeseen. Nimeni on Rahul Soni, ja olen ollut Microsoftin kanssa jo noin kaksi vuotta. Tämän kuun kolumnissa keskustelen joistakin lokiparser 2.2:n faktoista. Ennen kuin siirrymme tiettyihin skenaarioihin, käytän hetken log parser -työkalun kuvaamiseen.
Noin
Log Parser on erittäin tehokas ja monipuolinen työkalu, joka tarjoaa yleisen kyselykäyttöoikeuden tekstipohjaisiin tietoihin, kuten lokitiedostoihin, XML-tiedostoihin ja CSV-tiedostoihin, sekä Microsoft Windows -käyttöjärjestelmän tärkeisiin tietolähteisiin, kuten tapahtumalokiin, rekisteriin, tiedostojärjestelmään ja Active Directory -hakemistopalveluun. Lataanapsauttamalla tätä. Tässä versiossa voit jäsentää seuraavat tiedostot helposti Lokin jäsennin-työkalulla:
työkaluIISW3C, NCSA, IIS, IISODBC, BIN, IISMSID, HTTPERR, URLSCAN, CSV, TSV, W3C, XML, EVT, ETW, NETMON, REG, ADS, TEXTLINE, TEXTWORD, FS ja COM. Olen samaa mieltä siitä, että komentoriviliittymä ei ole kovin intuitiivinen, ja saat sen selville heti, kun asennat ja suoritat työkalun. Työkalun intuitiivisesta tunteesta puuttuu kuitenkin korjaus työkalun käyttöohjeiden avulla. Annan pienen neuvon: Älä anna komentorivin käyttöliittymän lykätä sinua näin pian. Tämä työkalu on pakollinen nörtin työkalupakissa ja auttaa sinua paljon, varsinkin jos haluat tehdä vianmäärityksen suorituskyvyn näkökulmasta.
En aio keskustella Lokin jäsennystyökalun käyttämisestä, koska dokumentaatio on melko hyvä ja asennuskansio sisältää myös Mallit\Kyselyt-kansion, joka sisältää melko paljon näytteitä. Joten kun olen lopettanut log parser -työkalun mainostamisen, anna minun palata skenaarioihin, joista puhuin.Skenaario 1: Tietyn tekstin suurten tekstitiedostojen jäsentäminen
Pieni tausta ongelmasta
Asiakkaasi kokee Käyttö estetty -ongelman, kun hän teki jotain. Suosittelemme, että asiakas käyttää toista loistavaa työkalua, jonka nimiFilemon, ja toistaa ongelman. Jos kyseessä on resurssin käyttöoikeusluetteloihin liittyvä ongelma, Filemon-työkalu pystyy huomaamaan virheen. Pyydät nyt asiakasta lähettämään sinulle tallennetun Filemon-lokitiedoston. Tässä tulee valitettava osa. Saat tiedoston (esimerkiksi Filemon.log), mutta huomaat, että koko on valtava (Filemon kirjaa paljon tietoja!). Muistio näyttää jumiutuvan, ja lokitiedoston Käyttö estetty -rivien löytäminen on tuskallisen hidasta. Microsoft Office Excel kieltäytyy avaamasta tiedostoa kokonaan. Mitä nyt? Vastaus: Avaa Log Parser -komentoikkuna ja käytä seuraavaa komentoa:
onLOGPARSER "Select Text from C:\Filemon.log where Text like '%Access Denied%'" -i:TEXTLINE -q:OffMitä log parser -työkalua pyydetään jäsentämään jokainen rivi (teksti) annetusta tiedostosta (C:\Filemon.log), jossa rivi sisältää "Käyttö estetty". -i:TEXTLINE-komentorivivalitsin määrittää syöttömuodon, ja -q:Off-komentorivivalitsin kertoo sen olevan yksityiskohtainen (-q[:ON|EI KÄYTÖSSÄ]:hiljainen tila;). Jos otat -q-komentorivivalitsimen käyttöön, näkyviin tulevat tilastotiedot ja alla olevan tulosteen kentän nimi (Teksti) puuttuvat.
Esimerkkitulos
Text7447 13:49:24 explorer.exe:1200 DIRECTORY C:\ Käyttö estettyjä tilastoja -ohjeet käsitelty: 640444
Elementtien tulos: 1 Suoritusaika: 12,75 sekuntia Miten vältät ENTER-näppäimen painamisen useita kertoja, jos kyselyn palauttamien tietueiden määrä on suurempi kuin 10? Vastaus: Käytä -rtp:-1-parametria kyselyissäsi! Tämä on välttämätön parametri siltä varalta, että haluat ohjata tulosteen uudelleen tiedostoon. Kun kirjoitat KESKIHAJONTA-funktioon, tulostietueet näytetään erissä, jotka koostuvat riveistä, jotka vastaavat tälle parametrille määritettyä arvoa. Kun rivierä on näytetty, se kehottaa käyttäjää painamaan näppäintä, jotta seuraava rivierä tulee näkyviin. Jos määrität tälle parametrille "-1", erät poistetaan käytöstä kokonaan!Kyselytiedostojen käyttäminen
Toinen tapa saada samat tulokset selkeämmin on luoda kyselytiedosto. Tällä tavalla voit helposti muokata kyselytiedostoa ja suorittaa sen Lokin jäsentäjä -työkalun komentoriviltä. Sen lisäksi voit helposti luoda GUI-tunnuksen makusi mukaan. GUI lataa tallennetun SQL-kyselyn ja suorittaa kyselyn Lokin jäsentäjä -työkalun avulla.
Jos haluat saada saman tehosteen (kuin skenaariossa 1) SQL-kyselyistä, voit antaa seuraavan komennon:LOGPARSER -i:TEXTLINE-tiedosto:C:\LPQ\SearchAnyTextfile.sql -q:offC:\LPQ\SearchAnyTextFile.sql sisältää seuraavat tiedot:
Huomautus Kansion LPQ:n luominen C:\:ssa -kansiossa, jos haluat käyttää tässä sarakkeessa näkyviä näytteitä.
Select Text as LineFromFile
FROM C:\Filemon.log
WHERE Text
LIKE '%Access Denied%'
Jos huomaat, kysely näyttää nyt paljon puhtaammalta ja järkevämmältä. Näin voit luoda myös monimutkaisempia ja suurempia kyselyjä, ja kaikki mahtuu komentoriville, koska käytät .-komentoa. SQL-tiedosto koko kyselyn sijaan. Komentoriville ei kuitenkaan voi sovittaa yli 260 merkkiä!
Kyselytiedostojen käytön edut säilyvät, ja käytän tätä menetelmää seuraavissa tilanteissa. Kaikki kyselyni on tallennettu C:\LPQ:hen .sql-tunnisteella (voit käyttää omaasi).Skenaario 2: 10 suurimman tiedoston etsiminen tietystä kansiosta, mukaan lukien sen alikansiot
Pieni tausta ongelmasta
Sinulla on kansio, ja siinä on melko paljon alikansioita ja tiedostoja. Haluat selvittää kansion 10 suurinta tiedostoa, mukaan lukien sen alikansiot.
Tiedän, että tietyssä kansiossa voit vain muuttaa näkymää (valitse Näytä-valikossaTiedot) Resurssienhallinnassa ja lajitella näkymän koon mukaan. Ongelmana on kuitenkin se, että sinun on otettava huomioon myös alikansion sisältö. Vastaus: Avaa Log Parser -työkalun komentoikkuna ja käytä seuraavaa komentoa:LOGPARSER -i:FS-tiedosto:C:\LPQ\Top10Files.sql -q:off -Recurse:-1Top10Files.sql sisältää seuraavat:
SELECT TOP 10
Path,
Name,
Size,
Attributes
FROM 'C:\Program Files\Microsoft Office\*.*'
ORDER BY Size DESC
Tässä -i:FS tarkoittaa, että kyselemme tiedostojärjestelmästä. Voit tarkastella täydellistä luetteloa FS-syöttömuotokentistä dokumentaatiossa ja kehystää kyselyn vastaavasti.
-Recurse:-1 tarkoittaa, että haluamme sisällyttää kaikki alikansiot. Jos et halua kaikkia alikansioita tai haluat rajoittaa toistumista, käytä 0, 1, 2 jne. Luku viittaa jäsentimen syvyyteen. 0 tarkoittaa, että rekursiota ei ole, 2 tarkoittaa, että parser toistuu syvyys 2 asti jne.Esimerkkitulos
Path Name Size Attributes
------------------------------------------------------------ ------------ -------- ----------
C:\Program Files\Microsoft Office\Office10\WINWORD.EXE WINWORD.EXE 10738448 -A--R----
C:\Program Files\Microsoft Office\Office10\EXCEL.EXE EXCEL.EXE 9358096 -A--R----
C:\Program Files\Microsoft Office\Office10\OUTLLIB.DLL OUTLLIB.DLL 6326984 -A-------
C:\Program Files\Microsoft Office\Office10\POWERPNT.EXE POWERPNT.EXE 6093584 -A--R----
C:\Program Files\Microsoft Office\Office10\MSOWC.DLL MSOWC.DLL 3041880 -A-------
C:\Program Files\Microsoft Office\Office10\CLIPPIT.ACS CLIPPIT.ACS 2904417 -A-------
C:\Program Files\Microsoft Office\Office10\GRAPH.EXE GRAPH.EXE 2144824 -A-------
C:\Program Files\Microsoft Office\Office10\1033\OUTLLIBR.DLL OUTLLIBR.DLL 1977032 -A-------
C:\Program Files\Microsoft Office\Office10\1033\XLMAIN10.CHM XLMAIN10.CHM 1646072 -A-------
C:\Program Files\Microsoft Office\Office10\MSOWCW.DLL MSOWCW.DLL 1200177 -A-------
Tilastotiedot Käsitelty: 1000 Elementtien tulos: 10 Suoritusaika: 0,42 sekuntia
Skenaario 3: Sivuston 20 hitaimman sivun etsiminen
Pieni tausta ongelmasta
Käytössäsi on Microsoft IIS (IIS) 6, sinulla on muutama ASP.NET-sivusto, etkä ole tyytyväinen suorituskykyyn. Haluat muokata palvelinta ja tietää 20 ylintä sivua, jotka vievät eniten aikaa palvella verkkopalvelimesta. Ei ole niin, että määrittäisit korkeimmat aikaa vievät sivut, korjaisit sen, ja ongelmasi ratkeavat. Valitettavasti suorituskykyongelmien ratkaisemiseen ei ole hopeisia luettelomerkkejä. Ainakin pitäisi olla keino aloittaa. Oikea?
Vastaus: Avaa Log Parser -komentoikkuna ja käytä seuraavaa komentoa:LOGPARSER -i:IISW3C-tiedosto:C:\LPQ\Slowest20FilesInIIS.sql -o:DataGrid -q:offSlowest20FilesInIIS.sql sisältää seuraavan esimerkkikoodin.
Select Top 20
LogRow as [Line Number],
date as [Date],
time as [Time],
c-ip as [Client-IP],
s-ip as [Server IP],
s-port as [Server Port],
cs-method as [Request Verb],
cs-uri-stem as [Request URI],
sc-bytes as [Bytes sent],
sc-status as [Status],
sc-substatus as [Sub-status],
sc-win32-status as [Win 32 Status],
time-taken as [Time Taken]
From
C:\ex060813.log
Order by time-taken desc
Tässä -i:IISW3C tarkoittaa, että kyselemme IIS W3C -lokeista. Voit tarkastella täydellistä luetteloa IISW3C-syöttömuotokentistä dokumentaatiossa ja kehystää kyselyn vastaavasti.
-o:DataGrid tarkoittaa, että tulos on näytettävä tietoruudukossa seuraavasti: Huomautus Jos haluat käyttää tätä kyselyä, sinun on käytettävä IISW3C-lokiin kirjaamista ja sinulla on oltava käytössä Lokiin kirjaamisen lisäominaisuudet. (Avaa sivuston ominaisuudet, napsauta Verkkosivusto-välilehteä, valitse Ota kirjaaminen käyttöön ja määritä sitten Aktiivinen lokimuoto W3C Extended Log File Format -muotoon. Valitse Ominaisuudet, valitse Lisäasetukset-välilehti ja valitse sitten kaikki asetukset napsauttamalla.)Skenaario 4: Sivuston 20 yleisimmin käytetyn .aspx-sivun etsiminen
Pieni tausta ongelmasta
Käytät IIS 6:ta, sinulla on muutama ASP.NET-sivustoja ja haluat tietää useimmin käytetyt .aspx-tiedostot niin, että jos säädät näiden sivujen suorituskykyä, saat lopulta koko verkkosivuston tai palvelimen edut. On aina parempi käyttää aikaa eniten käytettyjen sivujen muokkaamiseen säästeliäästi käytettyjen sivujen sijaan. (Vaikka tähän sääntöön voi olla poikkeuksia. Oletetaan, että säästeliäästi käytetty sivu on todella huono sivu, joka aiheuttaa suurta suoritinkäyttöä!) Jos huomaat, että tietyn sivun palveleminen kestää kauan (skenaario 3) ja sivu on yksi yleisimmin käytetyistä sivuista, sinun on aina vahvistettava, että sivu toimii hyvin stressaantunut.
Vastaus: Avaa Log Parser -työkalun komentoikkuna ja käytä seuraavaa komentoa:LOGPARSER -i:IISW3C-tiedosto:C:\LPQ\Popular20FilesInIIS.sql -chartType:Bar3D -groupSize:640x480 -view:onPopular20FilesInIIS.sql sisältää seuraavan esimerkkikoodin.
Select Top 20
cs-uri-stem as [Request URI],
COUNT(*) AS Hits
INTO MyChart.gif
FROM C:\ex060813.log
Group by cs-uri-stem ORDER BY Hits DESC
Tässä tapauksessa -chartType:Bar3D kertoo Log Parser -työkalulle, millaisen kaavion haluat valmistella. -groupSize-parametri määrittää kohdekuvan leveyden ja korkeuden kuvapisteinä. Käytettävissä olevat kaaviolajit määräytyvät paikalliseen tietokoneeseen asennetun Microsoft-Office Web Components version mukaan.
Tuloste näyttää tältä: Kuten olet jo nähnyt, log-jäsennystyökalusta voi olla hyötyä useiden eri lokien tietojen analysoimisessa. Vain luovuus on raja täällä! On lähes rajattomia tapoja, joilla tiedot voivat näyttää sinulle paljon paremman kuvan, ja voit toimia sen mukaan. Kosketimme vain jäävuoren huippua! Voit käyttää myös korkean tason kieliä, kuten Microsoft Visual C#, Microsoft Visual Basic .NET jne., luodaksesi hyödyllisiä ohjelmia Lokin jäsennin-työkalun avulla. Tutustu alla olevaan Resurssit-osioon.Resursseja
-
Log Parser 2.2:n uudet ominaisuudet
http://www.microsoft.com/technet/scriptcenter/tools/logparser/lpfeatures.mspx
-
Log Parser 2.2:n toiminta
-
Microsoft Log Parser Toolkit – lokiparserin kirja!
http://www.microsoft.com/technet/scriptcenter/tools/logparser/default.mspx
Haluaisin keskustella lokin jäsennystyökalun uusista skenaarioista ja olen luonut blogiini uuden osan vain Lokin jäsentäjä -työkalua varten. Jos sinulla on ehdotuksia skenaarioista tai Lokin jäsennystyökalukyselyistä, jotka haluat jakaa, lähetä minulle sähköpostiarahulso@microsoft.com , ja julkaisen sen mahdollisimman pian seuraavassa verkkosivustossa:
https://learn.microsoft.com/archive/blogs/rahulso/
Kuten aina, voit vapaasti lähettää ideoita aiheista, joita haluat käsitellä tulevissa sarakkeissa tai Knowledge Base -tietokannassa Kysy sitä -lomakkeen avulla.
Tämän artikkelin käsittelemät kolmannen osapuolen tuotteet ovat Microsoftista riippumattomien yritysten valmistamia. Microsoft ei anna mitään oletettuja tai muita takuita näiden tuotteiden suorituskyvystä tai luotettavuudesta.