Anda di halaman 1dari 3

09/01/14

Diagnstico e logging | Channel 9


Follow Us @Ch9

BROWSE

FORUMS

CODING4FUN

EVENTS

Subscribe to Channel 9

Sign In

Search this site

Blogs

Diagnstico e logging
Posted: Mar 14, 2012 at 7:20 AM
By: Vincius Souza
(1)

1,888 Views

reddit

Tw eet

Like

Avg Rating: 5

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.

Related posts
Windows 8
App for
Channel 9 now
available

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

Ping 61: Azure


Apps,
Windows Live
Essentials, E3,

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

Cloud Cover
Episode 21 Your
Questions
Answered

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.

Cloud Cover
Episode 20 Visual Studio
Tools with

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.

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

1/3

09/01/14

Diagnstico e logging | Channel 9


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.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

<?xml version="1.0" encoding="utf-8"?>


<ServiceDefinition name="MyHostedService" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition
<WebRole name="WebRole1">
<Imports>
<Import moduleName="Diagnostics" />
</Imports>
</WebRole>
</ServiceDefinition>

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


XML.

1
2
3
4
5
6
7

<ConfigurationSettings>
<Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString"
value="DefaultEndpointsProtocol=https;AccountName=AccountName;AccountKey=AccountKey"
</ConfigurationSettings>

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.
1
2
3
4
5
6
7
8
9

<system.diagnostics>
<trace>
<listeners>
<add type="Microsoft.WindowsAzure.Diagnostics.DiagnosticMonitorTraceListener,
Microsoft.WindowsAzure.Diagnostics,
Version=1.0.0.0,
Culture=neutral,
PublicKeyToken=31bf3856ad364e35"
name="AzureDiagnostics">

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

2/3

09/01/14

Diagnstico e logging | Channel 9


10
11
12
13
14

<filter type="" />


</add>
</listeners>
</trace>
</system.diagnostics>

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.

Tags: Azure, Brazilian Portuguese, Diagnostics, logging

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.

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.

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

Feedback
Contact Us

Follow Us @Ch9

Code Of Conduct

Subscribe to Channel 9

Terms Of Use

Privacy Statement

3/3

Anda mungkin juga menyukai