domingo, 13 de julio de 2014

Evaluar la performance de la red accediendo a Sharepoint con Message Analyzer

Message Analyzer es el sucesor de Network Monitor. Esta nueva tool es mucho más que un sniffer de red o packet tracing. Les voy a mostrar un par de ejemplos de su uso con Sharepoint 2013 (Sobre WS2012). La idea es hacer una introducción tanto al trace como el análisis de la información con message Analyzer. Tanto el trace como la tool tiene muchisimas opciones y configuraciones, lo cuales no alcanzaría un post para explicar todo. Dividiré el post en 3 sub-posts.

Descargar la herramienta: http://www.microsoft.com/en-us/download/details.aspx?id=40308

PARTE 1 – Parseo de ETW para Sharepoint (acá estamos)

PARTE 2 – Monitoreo de red standart

PARTE 3 – Crear un web part que simule lentitud de Sharepoint

El primer ejemplo será el parseo de ETW (Event Tracing for Windows)

Primero creo una carpeta C:\ETW, y voy hasta ese path en la línea de comandos (cd C:\ETW), después verifico que providers tengo de ETW. Para ello ejecuto en una línea de comandos (run as a administrator): Logman Query Providers > Providers.txt

image

A continuación remuevo los providers los cuales no quiero usar, ej: para IIS quedaría algo así

Para Sharepoint dejaremos los siguientes providers en el archivo txt, borramos las líneas que no queremos

ASP.NET Events                           {AFF081FE-0247-4275-9C4E-021F3DC1DA35}
IIS: WWW Global                          {D55D3BC9-CBA9-44DF-827E-132D3A4596C2}
IIS: WWW Isapi Extension                 {A1C2040E-8840-4C31-BA11-9871031A19EA}
IIS: WWW Server                          {3A2A4E84-4C21-4981-AE10-3FDA0D9B0F83}
IISConfigurator                          {753DC014-8B03-40D0-9EA9-1AF6B3084E0A}
IISHost                                  {7F3D17A3-0A3D-43F1-BBF2-80E3BB04D54D}
Local Security Authority (LSA)           {CC85922F-DB41-11D2-9244-006008269001}
Microsoft-JScript                        {57277741-3638-4A4B-BDBA-0AC6E45DA56C}
Microsoft-Office Server-Search           {6AA8A41D-229D-42E8-A45E-49DD4F7F6E09}
Microsoft-ServiceBus-Client              {A307C7A2-A4CD-4D22-8093-94DB72934152}
Microsoft-SharePoint Products-Access Services {5311B1CA-DDE7-408B-A097-F7A1BF5BB170}
Microsoft-SharePoint Products-Access Services 2010 {4CB0A010-80C2-4CDF-BB9D-8B7E923FAC8F}
Microsoft-SharePoint Products-Business Connectivity Services {252BB337-A7F5-413F-9B03-F36FA4F18EF8}
Microsoft-SharePoint Products-Document Conversions {6FB10E7F-F8EF-44A7-9678-25744648F92C}
Microsoft-SharePoint Products-Document Management Server {F78D66EC-09A9-42A2-AC7A-5EE2062DE7E4}
Microsoft-SharePoint Products-eApproval  {E0E675CD-EA07-450D-9841-786EAC9A9812}
Microsoft-SharePoint Products-Education  {B9499A35-DB34-421A-94FC-5A8DBBBC4228}
Microsoft-SharePoint Products-Excel Services Application {278E40D0-FDAA-4EB4-AB6B-9E0AD6BDBE79}
Microsoft-SharePoint Products-InfoPath Forms Services {A3499A35-DB34-421A-94FC-4D76522BEAB3}
Microsoft-SharePoint Products-Office Automation Services {137DEDCF-DAEC-4E65-A6BC-02212AECD32F}
Microsoft-SharePoint Products-PerformancePoint Service {A7CD5295-CBBA-4DCA-8B67-D5BE061B6FAE}
Microsoft-SharePoint Products-Secure Store Service {73541538-24DA-4282-AE1C-3A6321C23FB8}
Microsoft-SharePoint Products-Services Infrastructure {4F33CA13-30A4-4AF2-AEB7-DE59AA6C2563}
Microsoft-SharePoint Products-Shared     {BAFFAE3D-E80A-4219-B41F-5760B7CEC473}
Microsoft-SharePoint Products-SharePoint Foundation {6FB7E0CD-52E7-47DD-997A-241563931FC2}
Microsoft-SharePoint Products-SharePoint Foundation Search {1C415899-58B3-4BFC-9236-105E7FD38719}
Microsoft-SharePoint Products-SharePoint Portal Server {8B3DDD3D-2B09-4669-BF81-E2D6921FEEEA}
Microsoft-SharePoint Products-SharePoint Server {C33B4F2A-64E9-4B39-BD72-F0C2F27A619A}
Microsoft-SharePoint Products-SharePoint Server Search {C8263AFE-83A5-448C-878C-1E5F5D1C4252}
Microsoft-SharePoint Products-SharePoint Translation Services {C8A9829C-C62B-46CD-AACF-95788DE23730}
Microsoft-SharePoint Products-Visio Graphics Service {38BB51E9-CF75-40CA-92CC-49E22F935F65}
Microsoft-SharePoint Products-Web Content Management {0119F589-72D7-4EC3-ADF5-1F082061E832}
Microsoft-SharePoint Products-Word Automation Services {C544CCCA-DCAA-416D-B91B-E639B8B28589}
Microsoft-Windows Server AppFabric Caching {A77DCF21-545F-4191-B3D0-C396CF2683F2}
Microsoft-Windows-Application Server-Workflow Management Service {C821412B-1624-4ABE-A845-50B2C98C2405}
Microsoft-Windows-AuthenticationProvider {DDDC1D91-51A1-4A8D-95B5-350C4EE3D809}
Microsoft-Windows-Dhcp-Client            {15A7A4F8-0072-4EAB-ABAD-F98A4D666AED}
Microsoft-Windows-DNS-Client             {1C95126E-7EEA-49A9-A3FE-A378B03DDB4D}
Microsoft-Windows-Fabric                 {751C9DC0-4F51-44F6-920A-A620C7C2D13E}
Microsoft-Windows-Http-SQM-Provider      {F5344219-87A4-4399-B14A-E59CD118ABB8}
Microsoft-Windows-HttpEvent              {7B6BC78C-898B-4170-BBF8-1A469EA43FC5}
Microsoft-Windows-HttpService            {DD5EF90A-6398-47A4-AD34-4DCECDEF795F}
Microsoft-Windows-IIS-APPHOSTSVC         {CAC10856-9223-48FE-96BA-2A772274FB53}
Microsoft-Windows-IIS-Configuration      {DC0B8E51-4863-407A-BC3C-1B479B2978AC}
Microsoft-Windows-IIS-FTP                {AB29F35C-8531-42FF-810D-B8552D23BC92}
Microsoft-Windows-IIS-IisMetabaseAudit   {BBB924B8-F415-4F57-AA45-1007F704C9B1}
Microsoft-Windows-IIS-IISReset           {DA9A85BB-563D-40FB-A164-8E982EA6844B}
Microsoft-Windows-IIS-W3SVC              {05448E22-93DE-4A7A-BBA5-92E27486A8BE}
Microsoft-Windows-IIS-W3SVC-PerfCounters {90303B54-419D-4081-A683-6DBCB532F261}
Microsoft-Windows-IIS-W3SVC-WP           {670080D9-742A-4187-8D16-41143D1290BD}
Microsoft-Windows-IIS-WMSVC              {23108B68-1B7E-43FA-94FB-EC3066805744}
Microsoft-Windows-Network-and-Sharing-Center {6A502821-AB44-40C8-B32F-37315D9D52E0}
Microsoft-Windows-NetworkStatus          {7868B0D4-1423-4681-AFDF-27913575441E}
Microsoft-Windows-NTLM                   {AC43300D-5FCC-4800-8E99-1BD3F85F0320}
Microsoft-Windows-WAS                    {524B5D04-133C-4A62-8362-64E8EDB9CE40}
Microsoft-Windows-WAS-ListenerAdapter    {D60ACC81-2608-4617-BFB7-2452BF002430}
Microsoft-Windows-WebAuth                {DB6972B6-DDDF-4820-84B1-2ED6AC0B96E5}
Microsoft-Windows-WebIO                  {50B3E73C-9370-461D-BB9F-26F32D68887D}
Microsoft-Windows-WebServices            {E04FE2E0-C6CF-4273-B59D-5C97C9C374A4}
Microsoft-Windows-Websocket-Protocol-Component {CBA5F63C-E2CF-4B36-8305-BDE1311924FC}
Microsoft-Windows-WinHttp                {7D44233D-3055-4B9C-BA64-0D47CA40A232}

IMPORTANTE: agregue varios providers para el ejemplo, es recomendable iniciar con unos pocos, debido a que afecta considerablemente la performance del servicio. Les recomiendo que evaluen que quieren monitorear, y usar el provider o providers’s correcto. Ej: para monitorear http.sys debemos usar Microsoft-Windows-HttpService. También al tener muchos providers, el tamaño del trace crecerá considerablemente

Ahora debemos hacer agregar en cada línea, lo siguiente 0xFFFFFFFF    0x5  separados por un TAB. Esto indica que área se hará el trace (0xFFFFFFFF = todas las áreas) y el tipo de nivel de verbosity (0x5 = full verbose mode). También hay que sacar la descripción del provider Ej:

{d55d3bc9-cba9-44df-827e-132d3a4596c2}    0xFFFFFFFF    0x5

Lo hacemos para cada línea, y guardamos el archivo txt.

image

Ahora ejecutamos lo siguiente en una línea de comando (run as a administrator)

Logman -start MyTrace -pf Providers.txt -o sharepoint.etl -ets

Revisa que se haya creado en el Performance Monitor

image

Ejecutamos las consultas de http que necesitamos evaluar, o algún servicio de windows (Ej: AppFabric) que tenga que ver con networking.

Dejamos unos 10 minutos ejecutando el trace, y después ejecutamos lo siguiente

Logman –stop MyTrace –ets

Si tienes problemas para detener el trace, hazlo de la consola de PerformanceMonitor. Click derecho Stop.

image

Ahora toca revisar este trace y evaluar los resultados.

Si tienes problemas con el trace, trata de aumentar el buffer

image

Primero vemos que se haya grabado bien el trace con Windows Performance Analyzer

image

image

Ahora evaluemos el trace con Message Analyzer, abrimos el archivo ewl

image

Y analizamos la información

image

Claramente, veremos información de todo tipo, y se complicará mucho evaluar el estado de la red en el acceso a Sharepoint, ya que esté etl tendrá información de todo tipo.

IMPORTANTE: evaluen bien que provider quieren usar (Ej: todos los relacionados a IIS) y basen sus análisis sobre esos providers. Ej:

Microsoft-Windows-IIS-W3SVC              {05448E22-93DE-4A7A-BBA5-92E27486A8BE}
Microsoft-Windows-IIS-W3SVC-PerfCounters {90303B54-419D-4081-A683-6DBCB532F261}

IIS: WWW Isapi Extension                 {A1C2040E-8840-4C31-BA11-9871031A19EA}
IIS: WWW Server                          {3A2A4E84-4C21-4981-AE10-3FDA0D9B0F83}

En el caso que tengas Windows Server 2012 R2, podrán generar los archivos ETW directamente desde los logs del IIS, lo que facilita increiblemente el parseo de logs de IIS.

image

image

Este primer post es una introducción de Message Analyzer. En los próximos post nos dedicaremos más a la tool, y sus resultados.

Referencias:

Logman: http://technet.microsoft.com/en-us/library/bb490956.aspx

BCS ETW: http://technet.microsoft.com/en-us/library/ff463594(v=office.14).aspx

ETW para AppFabric: http://developers.de/blogs/damir_dobric/archive/2010/06/06/dealing-with-etw-events-in-appfabric.aspx

http://blogs.msdn.com/b/ntdebugging/archive/2009/12/11/test.aspx

No hay comentarios:

Publicar un comentario