ASP.NET de voz de soporte técnico

Analizador de registro 2.2 y ASP.NET

Para personalizar esta columna según sus necesidades, queremos invitarle a enviar sus ideas sobre los temas que le interesan y los problemas que desea que se aborde en futuros artículos de Knowledge Base y columnas de Soporte de voz. Puede enviar sus ideas y comentarios con el formulario Solicitarlo. También hay un vínculo al formulario en la parte inferior de esta columna.

Bienvenido a la ASP.NET de voz de soporte técnico. Mi nombre es Rahul Soni y he estado con Microsoft desde hace unos dos años. En la columna de este mes, trataré algunos de los datos sobre el Analizador de registros 2.2. Antes de ir a escenarios específicos, permítanme aprovechar un momento para describir la herramienta Analizador de registro.

Acerca de

El Analizador de registros es una herramienta muy eficaz y versátil que proporciona acceso de consulta universal a datos basados en texto, como archivos de registro, archivos XML y archivos CSV, así como orígenes de datos clave en el sistema operativo Microsoft Windows, como el registro de eventos, el registro, el sistema de archivos y el servicio de directorio de Active Directory. Haga
clic aquí para descargar la herramienta. En esta versión, puede analizar los siguientes archivos muy fácilmente desde la herramienta Analizador de registro:

IISW3C, NCSA, IIS, IISODBC, BIN, IISMSID, HTTPERR, URLSCAN, CSV, TSV, W3C, XML, EVT, ETW, NETMON, REG, ADS, TEXTLINE, TEXTWORD, FS y COM. Estoy de acuerdo en que la interfaz de la línea de comandos no es muy intuitiva y la encontrará tan pronto como instale y ejecute la herramienta. Pero lo que la herramienta no tiene en la sensación intuitiva está siendo parcheado por la documentación proporcionada para la herramienta. Le proporcionaré un pequeño consejo aquí: No permita que la interfaz de la línea de comandos le aleje tan pronto. Esta herramienta es imprescindible en el kit de herramientas de un friki y le ayuda mucho, especialmente si desea solucionar problemas desde una perspectiva de rendimiento.

No voy a discutir "cómo" usar la herramienta Analizador de registro porque la documentación es bastante buena y la carpeta de instalación también contiene una carpeta "Muestras\Consultas" que contiene bastantes ejemplos.

Por lo tanto, una vez que haya terminado con mi parte de promoción de la herramienta Analizador de registros, permítanme volver a los escenarios de los que estaba hablando.

Escenario 1: Analizar archivos de texto grandes para un texto específico

Un pequeño fondo del problema

El cliente experimenta un problema de "Acceso denegado" cuando hizo algo. Le recomendamos que use otra herramienta brillante denominada
Filemon y que reproduzca el problema. Si se trata de un problema con las ACL de recursos, la herramienta Filemon podrá detectar el error. Ahora, le pide al cliente que le envíe el archivo de registro de Filemon guardado. Esta es la parte desafortunada. Obtiene el archivo (por ejemplo, Filemon.log) pero encuentra que el tamaño es enorme (Filemon registra una gran cantidad de datos). El Bloc de notas parecerá que se colgará y será muy lento para encontrar las líneas "Acceso denegado" en el archivo de registro. Microsoft Office Excel se negará a abrir el archivo por completo. ¿Ahora qué?

Respuesta: Abra la ventana de comando Analizador de registro y use el siguiente comando:

LOGPARSER "Seleccionar texto de C:\Filemon.log donde texto como '%Access Denied%'" -i:TEXTLINE -q:Off Lo que le estamos diciendo a la herramienta Analizador de registro es analizar cada línea (Texto) del archivo determinado (C:\Filemon.log) donde la línea contiene "Acceso denegado". El modificador de línea de comandos -i:TEXTLINE especifica el formato de entrada y el modificador de línea de comandos -q:Off indica que sea detallado (-q[:ON| OFF]:modo silencioso;). Si activa el modificador de línea de comandos -q, las estadísticas que se muestran y el nombre del campo (Texto) en el resultado siguiente estarán ausentes.

Salida de ejemplo

Text7447 1:49:24 p.m. explorer.exe:1200 DIRECTORIO 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?

Respuesta: Use el parámetro -rtp:-1 en las consultas.

Este será un parámetro necesario en caso de que desee redirigir el resultado a un archivo. Además, al escribir en STDOUT, los registros de salida se muestran en lotes de un número de filas igual al valor especificado para este parámetro. Una vez que se haya mostrado un lote de filas, se pedirá al usuario que presione una tecla para mostrar el siguiente lote de filas. Especificar "-1" para este parámetro deshabilita por completo el procesamiento por lotes.

Usar archivos de consulta

Otra forma de lograr los mismos resultados de una forma más limpia es crear un archivo de consulta. De esta forma, puede ajustar fácilmente el archivo de consulta y ejecutarlo desde la línea de comandos de la herramienta Analizador de registros. Además, puede crear fácilmente una GUI según su gusto. La GUI carga la consulta SQL y ejecuta la consulta con la herramienta Analizador de registro.

Si desea lograr el mismo efecto (que en el escenario 1) desde SQL consultas, puede proporcionar el siguiente comando:

LOGPARSER -i:TEXTLINE file:C:\LPQ\SearchAnyTextfile.sql -q:offC:\LPQ\SearchAnyTextFile.sql contiene la siguiente información: Nota Crear una carpeta

LPQ en su C:\ para usar los ejemplos que se muestran en esta columna.

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

Si se da cuenta, la consulta ahora es mucho más limpia y tiene más sentido. De esta forma, también puede crear consultas más complejas y más grandes, y todo cabe en la línea de comandos porque usa el archivo . SQL archivo en lugar de toda la consulta. No es posible caber más de 260 caracteres en la línea de comandos de todos modos.

Manteniendo las ventajas de usar archivos de consulta, usaré este método en los siguientes escenarios. Tengo todas mis consultas guardadas en C:\LPQ con una extensión .sql (puede usar las suyas propias).

Escenario 2: Buscar los 10 archivos más grandes de una carpeta específica, incluidas sus subcarpetas

Un pequeño fondo del problema

Tiene una carpeta y hay bastantes subcarpetas y archivos en ella. Desea averiguar los 10 archivos más grandes de esa carpeta, incluidas sus subcarpetas.

Sé que, para una carpeta específica, simplemente puede cambiar la vista (en el menú Ver, hacer clic en Detalles)en el Explorador de Windows y ordenar la vista por tamaño. Pero el problema aquí es que también debe tener en cuenta el contenido de la subcarpeta.

Respuesta: Abra la ventana de comandos de la herramienta Analizador de registro y use el siguiente comando:

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

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

Aquí -i:FS significa que estamos consultando el sistema de archivos. Puede ver la lista completa de campos de formato de entrada FS en la documentación y enmarcar la consulta en consecuencia.

-Recurse:-1 implica que queremos incluir todas las subcarpetas. Si no desea todas las subcarpetas o quiere limitar la recursividad, use 0, 1, 2, etc. El número implica la profundidad a la que irá el analizador. 0 significa que no hay recursividad, 2 significa que el analizador se repite hasta la profundidad 2, etc.

Salida de ejemplo

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


EstadísticasElementos procesados: salida de 1000
elementos: 10
Tiempo de ejecución: 0,42 segundos

Escenario 3: Buscar las 20 páginas más lentas de su sitio web

Un pequeño fondo del problema

Está usando Microsoft Internet Information Services (IIS) 6, tiene algunos ASP.NET web y no está realmente satisfecho con el rendimiento. Desea ajustar el servidor y conocer las 20 páginas principales que tardan más tiempo en servir desde el servidor web. No es como si determina las páginas que tardan más tiempo, las corrige y los problemas se resuelven. Desafortunadamente, no hay viñetas de plata para resolver problemas de rendimiento. Al menos debería haber una forma de empezar. ¿Correcto?

Respuesta: Abra la ventana de comando Analizador de registro y use el siguiente comando:

LOGPARSER -i:ARCHIVO IISW3C:C:\LPQ\Slowest20FilesInIIS.sql -o:DataGrid -q:offSlowest20FilesInIIS.sql contiene el siguiente código de ejemplo.

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

Aquí, -i:IISW3C significa que estamos consultando los registros W3C de IIS. Puede ver la lista completa de campos de formato de entrada IISW3C en la documentación y enmarcar la consulta en consecuencia.

-o:DataGrid implica que el resultado debe mostrarse en una cuadrícula de datos de la siguiente manera:texto alternativoNota Para usar esta consulta, debe usar registro


de IISW3C y debe haber habilitado las propiedades registro
avanzado. (Abra las propiedades del sitio web, haga clic en la pestaña Sitio web, haga clic para seleccionar Habilitar registro y, a continuación, establezca el formato registro activo como Formato de archivo de registro extendido W3C. Haga clic en Propiedades,haga clic
en la pestaña Avanzadas y, a continuación, haga clic para seleccionar todas las opciones).

Escenario 4: Buscar las 20 páginas .aspx más usadas en su sitio web

Un pequeño fondo del problema

Está usando IIS 6, tiene algunos sitios web de ASP.NET y desea conocer los archivos .aspx más usados para que, si ajusta el rendimiento de esas páginas, con el tiempo todo el sitio web o las ventajas del servidor. Siempre es mejor dedicar tiempo a ajustar las páginas más usadas en lugar de las páginas que se usan con moderación. (Aunque puede haber excepciones a esta regla. Diga que la página usada con moderación es una página realmente mala que causa un uso elevado de la CPU en ese caso). Ahora, si se da cuenta de que una página determinada tarda mucho tiempo en servirse (escenario 3) y la página es una de las páginas más usadas, siempre debe confirmar que la página se comporta bien bajo tensión.

Respuesta: Abra la ventana de comandos de la herramienta Analizador de registro y use el siguiente comando:

LOGPARSER -i:IISW3C file:C:\LPQ\Popular20FilesInIIS.sql -chartType:Bar3D -groupSize:640x480 -view:onPopular20FilesInIIS.sql contiene el código de ejemplo siguiente.

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

En este caso, -chartType:Bar3D indica a la herramienta Analizador de registros qué tipo de gráfico preparar. El parámetro -groupSize especifica el ancho y el alto de la imagen de destino, en píxeles. El conjunto de tipos de gráfico disponibles depende de la versión de Microsoft Office Web Components instalados en el equipo local.

Este es el aspecto del resultado:texto alternativoComo ya ha visto, puede haber varias formas en las que la herramienta Analizador de registros podría resultar realmente útil para analizar los datos de varios



registros. Solo la creatividad es el límite aquí. Hay formas casi ilimitadas en las que los datos podrían reflejar una imagen mucho mejor para usted, y podría ser algo sobre lo que puede actuar. Lo que hemos tocado es solo la punta del iceberg. También puede usar idiomas de alto nivel como Microsoft Visual C#, Microsoft Visual Basic .NET, etc. para crear programas útiles con la potencia de la herramienta Analizador de registros. Consulte la sección "Recursos" a continuación.

Resources

Me gustaría analizar más escenarios para la herramienta Analizador de registros y he creado una nueva sección en mi blog solo para la herramienta Analizador de registros. Si tiene alguna sugerencia para escenarios o consultas de herramientas de analizador de registro que desea compartir, envíeme un correo electrónico a rahulso@microsoft.com y lo publicaría lo antes posible en el siguiente sitio
web:

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

Como siempre, no dude en enviar ideas sobre los temas que desea abordar en columnas futuras o en la Base de conocimiento mediante el
formulario Preguntar por él.

Los productos de terceros que se debate en este artículo son fabricados por empresas independientes de Microsoft. Microsoft no ofrece ninguna garantía, implícita o de otro tipo, respecto al rendimiento o la confiabilidad de estos productos.

¿Necesita más ayuda?

Ampliar sus conocimientos
Explorar los cursos
Obtener nuevas características primero
Unirse a Microsoft Insider

¿Le ha sido útil esta información?

¿Cómo de satisfecho está con la calidad de la traducción?
¿Qué ha afectado a tu experiencia?

¡Gracias por sus comentarios!

×