Log Parser 2.2 and ASP.NET

Lavora ovunque da qualsiasi dispositivo con Microsoft 365

Eseguire l'aggiornamento a Microsoft 365 per lavorare in qualsiasi luogo con le funzionalità e gli aggiornamenti più recenti.

Aggiorna adesso

ASP.NET voce del supporto tecnico

Log Parser 2.2 and ASP.NET

Per personalizzare questa colonna in base alle proprie esigenze, è possibile invitare gli utenti a inviare idee su argomenti di proprio interesse e sui problemi che si desidera consultare negli articoli della Knowledge Base futuri e nelle colonne del Supporto vocale. È possibile inviare idee e feedback usando il modulo Ask For It. Nella parte inferiore della colonna è presente anche un collegamento alla maschera.

Benvenuto nella colonna ASP.NET Voce del supporto tecnico. Il mio nome è Ratul Soni e sono stato con Microsoft da circa due anni. Nella colonna di questo mese discuterò di alcuni fatti relativi a Log Parser 2.2. Prima di passare a scenari specifici, è opportuno descrivere più dettagliatamente lo strumento Analisi log.

Informazioni

Log Parser è uno strumento molto potente e versatile che fornisce l'accesso universale alle query ai dati basati su testo, ad esempio file di log, file XML e file CSV, nonché alle origini dati principali del sistema operativo Microsoft Windows, ad esempio il log eventi, il Registro di sistema, il file system e il servizio directory Active Directory. Fai
clic qui per scaricare lo strumento. In questa versione è possibile analizzare molto facilmente i file seguenti dallo strumento Analisi log:

IISW3C, NCSA, IIS, IISODBC, BIN, IISMSID, HTTPERR, URLSCAN, CSV, TSV, W3C, XML, EVT, ETW, NETMON, REG, ADS, TEXTLINE, TEXTWORD, FS e COM. Accetto che l'interfaccia della riga di comando non sia molto intuitiva e lo scoprirai non appena installi ed esegui lo strumento. Ma ciò che manca nell'esperienza intuitiva dello strumento è la documentazione fornita per lo strumento. Ecco un piccolo consiglio: Non lasciare che l'interfaccia della riga di comando ti metta così presto in stato di interruzione. Questo strumento è un must nel toolkit di un utente e consente di ottenere molto aiuto, soprattutto se si vuole risolvere i problemi dal punto di vista delle prestazioni.

Non si tratta di "come" usare lo strumento Analisi log perché la documentazione è abbastanza buona e la cartella di installazione contiene anche una cartella "Samples\Queries" contenente diversi esempi.

Quindi, dopo aver finito di promuovere lo strumento Analisi log, posso tornare agli scenari di cui stavo parlando.

Scenario 1: Analisi di file di testo di grandi dimensioni per un testo specifico

Una piccola parte del problema

Il cliente ha avuto un problema di "accesso negato" quando ha fatto qualcosa. Si consiglia al cliente di usare un altro strumento brillantino denominato
Filemon che riproduce il problema. Se si tratta di un problema con gli ACL delle risorse, lo strumento Filemon sarà in grado di rilevare l'errore. Ora chiedi al cliente di inviarti il file di log di Filemon salvato. Ecco la parte più importante. Si ottiene il file, ad esempio Filemon.log, ma le dimensioni sono enormi. Filemon registra una grande quantità di dati. Blocco note si blocca e può trovare le righe "Accesso negato" nel file di log. Microsoft Office Excel si rifiuta di aprire il file completamente. E ora?

Risposta: Aprire la finestra di comando di Analisi log e usare il comando seguente:

LOGPARSER "Selezionare testo da C:\Filemon.log dove testo come '%Access Denied%'" -i:TEXTLINE -q:OffWhat we're telling the Log Parser tool is to parse through each line (Text) from the given file (C:\Filemon.log) where the line contains 'Access Denied'. L'opzione della riga di comando -i:TEXTLINE specifica il formato di input e l'opzione della riga di comando -q:Off indica che è dettagliata (-q[:ON| OFF]:modalità non interattiva;). Se si attiva l'opzione della riga di comando -q, le statistiche visualizzate e il nome del campo (Testo) nell'output seguente non saranno presenti.

Output di esempio

Text7447 1:49:24 PM explorer.exe:1200 DIRECTORY C:\ Access Denied StatisticsElements processed: 640444
Elements output: 1
Execution time: 12.75 seconds How to avoid pressing ENTER multiple

times if the number of records returned by your query is larger than 10?

Risposta: Usare il parametro -rtp:-1 nelle query.

Questo sarà un parametro necessario nel caso in cui si voglia reindirizzare l'output in un file. Inoltre, quando si scrive in STDOUT, i record di output vengono visualizzati in batch costituito da un numero di righe uguale al valore specificato per questo parametro. Una volta visualizzato un batch di righe, all'utente verrà richiesto di premere un tasto per visualizzare il batch di righe successivo. Se si specifica "-1" per questo parametro, l'impostazione del batch viene disabilitata.

Uso dei file di query

Un altro modo per ottenere gli stessi risultati in modo più pulito è creare un file di query. In questo modo, è possibile ottimizzare facilmente il file di query ed eseguirlo dalla riga di comando dello strumento Log Parser. Oltre a questo, è possibile creare facilmente un'interfaccia utente grafica in base ai propri gusti. La GUI carica la query SQL ed esegue la query usando lo strumento Analisi log.

Per ottenere lo stesso risultato (come nello scenario 1) da query SQL dati, è possibile fornire il comando seguente:

LOGPARSER -i:TEXTLINE file:C:\LPQ\SearchAnyTextfile.sql -q:offC:\LPQ\SearchAnyTextFile.sql contiene le informazioni seguenti: Nota: Creare una cartella

LPQ in C:\ per usare gli esempi mostrati in questa colonna.

Select Text as LineFromFile
FROM C:\Filemon.log
WHERE Text
LIKE '%Access Denied%'

Se si nota, la query ora è molto più pulita e più sensato. In questo modo è possibile creare anche query più complesse e più grandi e tutti gli elementi si adattano alla riga di comando perché si usa la . SQL file invece dell'intera query. Non è comunque possibile inserire più di 260 caratteri nella riga di comando.

Mantenendo i vantaggi dell'uso dei file di query, userò questo metodo negli scenari seguenti. Ho tutte le mie query salvate in C:\LPQ con estensione sql (puoi usare la tua).

Scenario 2: Ricerca dei 10 file più grandi di una cartella specifica, incluse le relative sottocartelle

Una piccola parte del problema

Si dispone di una cartella e contiene diversi file e sottocartelle. Si vogliono individuare i primi 10 file più grandi della cartella, incluse le relative sottocartelle.

Per una cartella specifica, si può semplicemente modificare la visualizzazione (nel menu Visualizza fare clic su Dettagli)in Esplora risorse e ordinare la visualizzazione in base alle dimensioni. Tuttavia, il problema è che è necessario account anche per il contenuto della sottocartella.

Risposta: Aprire la finestra di comando dello strumento Analisi log e usare il comando seguente:

LOGPARSER -i:FS file:C:\LPQ\Top10Files.sql -q:off -Recurse:-1Top10Files.sql contiene:

SELECT TOP 10 
Path,
Name,
Size,
Attributes
FROM 'C:\Program Files\Microsoft Office\*.*'
ORDER BY Size DESC

Qui -i:FS indica che stiamo eseguendo una query sul file system. È possibile visualizzare l'elenco completo dei campi del formato di input FS nella documentazione e strutturare la query di conseguenza.

-Recurse:-1 implica che si vogliono includere tutte le sottocartelle. Se non si vogliono limitare tutte le sottocartelle o la ricorsione, usare 0, 1, 2 e così via. Il numero indica la profondità a cui andrà il parser. 0 indica nessuna ricorsione, 2 indica che il parser ricorre fino a profondità 2 e così via.

Output di esempio

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-------


StatisticsElements elaborato: 1000
elementi output: 10
Execution time: 0.42 seconds

Scenario 3: Individuazione delle 20 pagine più lente nel sito Web

Una piccola parte del problema

Si usa Microsoft Internet Information Services (IIS) 6, si hanno alcuni siti Web ASP.NET e non si è soddisfatti delle prestazioni. Si vuole ottimizzare il server e conoscere le 20 pagine principali che stanno occupando il tempo più alto per essere servite dal server Web. Non è come se si determinano le pagine che occupano più tempo, si correggino e i problemi vengono risolti. Purtroppo, non sono disponibili punti elenco argento per risolvere i problemi di prestazioni. Almeno dovrebbe esserci un modo per iniziare. Corretto?

Risposta: Aprire la finestra di comando di Analisi log e usare il comando seguente:

LOGPARSER -i:IISW3C file:C:\LPQ\Slowest20FilesInIIS.sql -o:DataGrid -q:offSlowest20FilesInIIS.sql contiene il codice di esempio seguente.

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

Qui , -i:IISW3C indica che stiamo effettuando query nei log W3C di IIS. È possibile visualizzare l'elenco completo dei campi del formato di input IISW3C nella documentazione e strutturare la query di conseguenza.

-o:DataGrid implica che l'output deve essere visualizzato in una griglia dati nel modo seguente:testo alternativoNota Per usare questa query, è necessario usare registrazione


IISW3C e avere abilitato le proprietà di registrazione
avanzata. Aprire le proprietà del sito Web, fare clic sulla scheda Sito Web, selezionare Abilita registrazione e quindi impostare il formato di log attivo su Formato file di log esteso W3C. Fare clicsu Proprietà, fare clic
sulla scheda Avanzate e quindi selezionare tutte le opzioni.

Scenario 4: Individuazione delle 20 pagine ASPX più usate nel sito Web

Una piccola parte del problema

Si usa IIS 6, si dispone di alcuni siti Web ASP.NET e si vogliono conoscere i file ASPX di uso più comune, in modo che, se si ottimizzano le prestazioni di queste pagine, alla fine l'intero sito Web/server trarrà vantaggio. È sempre meglio dedicare tempo a ottimizzare le pagine più usate invece che a quelle usate con parsimonio. Anche se potrebbero esserci eccezioni a questa regola. Si say the sparingly used page is a really bad page that causes high CPU utilization for that matter!) Ora, se si trova che una determinata pagina richiede molto tempo per essere servita (Scenario 3) e la pagina è una delle pagine più usate, è consigliabile verificare sempre che la pagina si comporti bene sotto stress.

Risposta: Aprire la finestra di comando dello strumento Analisi log e usare il comando seguente:

LOGPARSER -i:IISW3C file:C:\LPQ\Popular20FilesInIIS.sql -chartType:Bar3D -groupSize:640x480 -view:onPopular20FilesInIIS.sql contiene il codice di esempio seguente.

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

In questo caso, -chartType:Bar3D indica lo strumento Analisi log del tipo di grafico da preparare. Il parametro -groupSize specifica la larghezza e l'altezza dell'immagine di destinazione, in pixel. Il set di tipi di grafico disponibili dipende dalla versione del grafico Microsoft Office Web Components installato nel computer locale.

Ecco l'aspetto dell'output:testo alternativoCome è stato già visto, esistono diversi modi in cui lo strumento Analisi log può rivelarsi molto utile per analizzare i dati da diversi



log. Solo la creatività è il limite! Esistono modi quasi illimitati in cui i dati potrebbero rispecchiare un'immagine migliore e potrebbe essere qualcosa su cui si può agire. Quello che abbiamo toccato è solo la punta dell'iceberg. È anche possibile usare lingue di alto livello come Microsoft Visual C#, Microsoft Visual Basic .NET e così via, per creare programmi utili con la potenza dello strumento Analisi log. Vedere la sezione "Risorse" di seguito.

Risorse

Voglio discutere di altri scenari per lo strumento Analisi log e ho creato una nuova sezione nel blog solo per lo strumento Analisi log. Se si hanno suggerimenti per gli scenari o le query dello strumento Log Parser da condividere, inviare un messaggio di posta elettronica all'indirizzo rahulso@microsoft.com e pubblicarlo appena possibile sul sito
Web seguente:

http://blogs.msdn.com/rahulso/archive/category/14624.aspx

Come sempre, è possibile inviare idee su argomenti da affrontare nelle colonne future o nella Knowledge Base usando il modulo
Ask For It.

I prodotti di terze parti descritti in questo articolo sono realizzati da società indipendenti da Microsoft. Microsoft non rende alcuna garanzia, implicita o di altro tipo, in relazione alle prestazioni o all'affidabilità di questi prodotti.

Serve aiuto?

Amplia le tue competenze
Esplora i corsi di formazione
Ottieni in anticipo le nuove caratteristiche
Partecipa a Microsoft Insider

Queste informazioni sono risultate utili?

Grazie per il feedback!

Grazie per il tuo feedback! Potrebbe essere utile metterti in contatto con uno dei nostri operatori del supporto di Office.

×