4.3 diagnóstico e logging _ channel 9

3
09/01/14 Diagnóstico e logging | Channel 9 channel9.msdn.com/posts/Diagnstico-e-logging 1/3 Follow Us @Ch9 Subscribe to Channel 9 Sign In Search this site BROWSE FORUMS CODING4FUN EVENTS 1,888 Views (1) Diagnóstico e logging Posted: Mar 14, 2012 at 7:20 AM By: Vinícius Souza Blogs Avg Rating: 5 reddit Tweet 0 1 Like Suporte a log na nuvem é uma das maiores preocupações da comunidade de desenvolvimento, com IDE (Integrated Development Enviroment) de alta interatividade como o Visual Studio e runtime como o Framework .NET você pode identificar um problema em seu código mesmo em ambientes de produção locais (on-premise). No entando, o domínio do Visual Studio é limitado para o acesso que ele possui para a runtime de execução. O Visual Studio se comunica com o ambiente a runtime do ambiente em execução para recuperar dados de debug da aplicação, a aplicação por sua vez, deve ter informações de debug na runtime para o Visual Studio realizar o debug. A fábrica de implantação do Windows Azure precisa ter acesso o runtime do ambiente local, assim você pode realizar o debug da sua aplicação Windows Azure local, como qualquer outra aplicação .NET adicionando breakpoints (pontos de parada). Essa seria uma ótima notícia, mas infelizmente o Visual Studio não pode acessar a runtime do Windows Azure diretamente. Uma vez que o serviço é implantado no Windows Azure, ele é totalmente gerenciado pelo Windows Azure e você não tem acesso a runtime dele. O time de desenvolvimento percebeu essa limitação e acrescentou a capacidade de log para a runtime do Windows Azure, assim como suporte a IntelliTrace (somente disponível no Visual Studio Ultimate edition). O serviço de diagnóstico é executado ao longo da instância da sua Role, coletando dados de diagnóstico que podem ser salvos utilizando o serviço de armazenamento do Windows Azure (necessita configuração), assim ficando a uma chamada REST de distância. Você pode também comunicar com o serviço de diagnóstico remotamente de uma aplicação local, ou ainda configurar para armazenar os dados de acordo com um período pré-determinado. Os serviços de diagnósticos suportam realizar log dos os seguintes tipos de dados: Windows Azure Trace logs : Estes são os logs gerados a partir da aplicação, e podem conter qualquer tipo de mensagem enviado do seu código. Logs de diagnóstico de infraestrutura: logs de infraestrutura recuperados pelo serviço de diagnósgtico; Logs de eventos do Windows : Estes são os logs de eventos do Windows gerado na máquina que a instância da Role está executando. Contadores de performance do Windows : Estes se referem aos contadores de performance da máquina que a instância da Role está sendo executada; IIS Logs e trace de falhas de requisições : Logs gerados pelo IIS da instância da Role; Dumps de quebra da aplicação: São os dados de dump gerado quando a aplicação quebra. O serviço de diagnóstico agrega todos os tipos de logs citados anteriormente juntos e depois os transferem para o local de armazenamento apropriado. Não se esqueça que as instância das roles são stateless e por essa razão, você pode perder dados armazenados localmente durante operação de reciclagem. Veja abaixo uma tabela com a lista de dados de log disponíveis nas instâncias das roles do Windows Azure e seus respectivos locais de armazenamento. Windows 8 App for Channel 9 now available Ping 61: Azure Apps, Windows Live Essentials, E3, Cloud Cover Episode 21 - Your Questions Answered Cloud Cover Episode 20 - Visual Studio Tools with… Related posts

Upload: destroyer2004

Post on 16-Dec-2015

217 views

Category:

Documents


4 download

DESCRIPTION

Diagnóstico

TRANSCRIPT

  • 09/01/14 Diagnstico e logging | Channel 9

    channel9.msdn.com/posts/Diagnstico-e-logging 1/3

    Follow Us @Ch9 Subscribe to Channel 9 Sign In

    Search this siteBROWSE FORUMS CODING4FUN EVENTS

    1,888 Views(1)

    Diagnstico e logging

    Posted: Mar 14, 2012 at 7:20 AM

    By: Vincius Souza

    Blogs

    Avg Rating: 5

    reddit Tweet 0 1Like

    Suporte a log na nuvem uma das maiores preocupaes da comunidade de desenvolvimento,

    com IDE (Integrated Development Enviroment) de alta interatividade como o Visual Studio e

    runtime como o Framework .NET voc pode identificar um problema em seu cdigo mesmo em

    ambientes de produo locais (on-premise). No entando, o domnio do Visual Studio limitado

    para o acesso que ele possui para a runtime de execuo.

    O Visual Studio se comunica com o ambiente a runtime do ambiente em execuo para recuperar

    dados de debug da aplicao, a aplicao por sua vez, deve ter informaes de debug na runtime

    para o Visual Studio realizar o debug.

    A fbrica de implantao do Windows Azure precisa ter acesso o runtime do ambiente local,

    assim voc pode realizar o debug da sua aplicao Windows Azure local, como qualquer outra

    aplicao .NET adicionando breakpoints (pontos de parada).

    Essa seria uma tima notcia, mas infelizmente o Visual Studio no pode acessar a runtime do

    Windows Azure diretamente. Uma vez que o servio implantado no Windows Azure, ele

    totalmente gerenciado pelo Windows Azure e voc no tem acesso a runtime dele. O time de

    desenvolvimento percebeu essa limitao e acrescentou a capacidade de log para a runtime do

    Windows Azure, assim como suporte a IntelliTrace (somente disponvel no Visual Studio

    Ultimate edition).

    O servio de diagnstico executado ao longo da instncia da sua Role, coletando dados de

    diagnstico que podem ser salvos utilizando o servio de armazenamento do Windows Azure

    (necessita configurao), assim ficando a uma chamada REST de distncia. Voc pode tambm

    comunicar com o servio de diagnstico remotamente de uma aplicao local, ou ainda configurar

    para armazenar os dados de acordo com um perodo pr-determinado.

    Os servios de diagnsticos suportam realizar log dos os seguintes tipos de dados:

    Windows Azure Trace logs: Estes so os logs gerados a partir da aplicao, e podem

    conter qualquer tipo de mensagem enviado do seu cdigo.

    Logs de diagnstico de infraestrutura: logs de infraestrutura recuperados pelo servio de

    diagnsgtico;

    Logs de eventos do Windows: Estes so os logs de eventos do Windows gerado na

    mquina que a instncia da Role est executando.

    Contadores de performance do Windows: Estes se referem aos contadores de

    performance da mquina que a instncia da Role est sendo executada;

    IIS Logs e trace de falhas de requisies: Logs gerados pelo IIS da instncia da Role;

    Dumps de quebra da aplicao: So os dados de dump gerado quando a aplicao quebra.

    O servio de diagnstico agrega todos os tipos de logs citados anteriormente juntos e depois os

    transferem para o local de armazenamento apropriado. No se esquea que as instncia das roles

    so stateless e por essa razo, voc pode perder dados armazenados localmente durante

    operao de reciclagem.

    Veja abaixo uma tabela com a lista de dados de log disponveis nas instncias das roles do

    Windows Azure e seus respectivos locais de armazenamento.

    Windows 8

    App for

    Channel 9 now

    available

    Ping 61: Azure

    Apps,

    Windows Live

    Essentials, E3,

    Cloud Cover

    Episode 21 -

    Your

    Questions

    Answered

    Cloud Cover

    Episode 20 -

    Visual Studio

    Tools with

    Related posts

  • 09/01/14 Diagnstico e logging | Channel 9

    channel9.msdn.com/posts/Diagnstico-e-logging 2/3

    Fonte de dados Tipo de destino no Windows Azure Storage

    Windows Azure trace Logs Table Storage

    Logs de diagnstico de infraestrutura Table Storage

    IIS Logs Blog Storage

    Contadores de performance Table Storage

    Windows event log Table Storage

    IIS falhas de requisio Blob Storage

    Dumps de quebra de aplicao Blob Storage

    Habilitando o servio de diagnstico em sua aplicao

    1. No arquivo ServiceDefinition.csdef, adicione o elemento import do mdulo de

    Diagnstico. Veja exemplo de XML abaixo.

    2. Abra o arquivo ServiceConfiguration.cscfg e adicione as seguintes linhas de cdigo

    XML.

    Onde AccountName o nome da conta de armazenamento do Windows Azure, e AccountKey a

    chave de acesso da conta de armazenamento. Se voc estiver usando o emulador de

    armazenamento, defina o valor como UseDevelopmentStorage=true.

    Rastreando o fluxo do seu aplicativo

    Se voc pretende recuperar as mensagens de trace includos no cdigo do seu cdigo, voc vai

    precisar incluir um novo listener (TraceListener) na configurao do seu aplicativo.

    Quando utilizado Trace, Debug e TraceSource, voc precisa de um mecanismo para coletar e

    armazenar as mensagens que so enviadas. As mensagens de Trace so recebidas por listeners, a

    funo de um listener de coletar, armazenar, e direcionar mensagens de trace. Listeners

    direcionam a sada do trace para um determinado local, como log, janela, ou ainda um arquivo

    texto. No Windows Azure Diagnostics, a classe DiagnosticMonitorTraceListener utilizada,

    mas antes para utiliz-la necessrio ter habilitado o servio de diagnstico do Windows Azure,

    veja tpico anterior.

    Para configurar o listener de trace, realiza a seguinte configurao no seu arquivo Web.config ou

    App.config.

    123456789101112131415

  • 09/01/14 Diagnstico e logging | Channel 9

    channel9.msdn.com/posts/Diagnstico-e-logging 3/3

    Espero que voc tenha compreendido o funcionamento do mecanismo de diagnstico do

    Windows Azure, um excelente exerccio seria aplicar essas alteraes no projeto de migrao

    abordado no mdulo 3 do curso de Azure no MVA - Microsoft Virtual Academy.

    Obrigado,

    Vincius.

    Follow the Discussion

    Comments Closed

    Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the

    conversation, please create a new thread in our Forums,

    or Contact Us and let us know.

    Tags: Azure, Brazilian Portuguese, Diagnostics, logging

    1011121314

    Subscribe to Channel 9Follow Us @Ch9Feedback

    Privacy StatementTerms Of UseCode Of ConductContact Us

    2014 Microsoft. Except where designated as licensed by

    Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 License,

    Microsoft reserves all rights associated with the materials on this site.