Logging and tracing

Description

70-483 C# Flashcards on Logging and tracing, created by Thiago Russo on 28/05/2017.
Thiago Russo
Flashcards by Thiago Russo, updated more than 1 year ago
Thiago Russo
Created by Thiago Russo over 7 years ago
5
0

Resource summary

Question Answer
pq logging and tracing são importantes? Qdo seu aplicativo está sendo executado em um servidor de produção, às vezes é impossível anexar um depurador por causa de restrições de segurança ou a natureza da aplicação. Se o aplicativo é executado em vários servidores em um ambiente distribuído, como o Windows Azure, um depurador regular não irá sempre ajudá-lo a encontrar o erro. Devido a isso, é importante que você implemente uma criação de log e uma estratégia de rastreio desde o início
o que é e pra que serve o tracing? O rastreamento (tracing) é uma maneira para q vc possa monitorar a execução de seu aplicativo enquanto ele estiver sendo executado. Informações de rastreamento podem ser detalhadas; elas podem mostrar em quais métodos entraram, as decisões que foram tomadas e os erros ou avisos que ocorreram enquanto o aplicativo estava sendo executado. O rastreamento (tracing) pode gerar uma grande qtde de informações e é algo que vc possa ativar qdo precisar investigar um problema em um aplicativo de produção.
o que é e pra que serve o logging? Logging está sempre ativado e é usado para reportar erro. Vc pode configurar seu logging para coletar os dados de alguma maneira centralizada. Talvez vc queira um e-mail ou mensagem de texto qdo existe uma questão séria. Outros erros podem ser registrados (logged) em um arquivo ou um banco de dados.
classe Debug Qual namespace? pra que é útil? Exemplo.
classe TraceSource exemplo
classe TraceSource opções diferentes para o enum TraceEventType: Critical Error Warning Information ■ Critical: é a opção mais severa. Ela deve ser usada c/ moderação e apenas para erros mto graves e irreparáveis. ■ Error: Este membro tem uma prioridade ligeiramente inferior a Critical, mas ainda indica q algo está errado no aplicativo. Deve normalmente ser usado p/ sinalizar um problema q tem sido tratado ou recuperado. ■ Warning: indica q algo incomum ocorreu e pode valer a pena investigar mais. Ex: vc percebe q uma determinada operação de repente leva + tempo para processar do q o normal ou vc sinaliza um aviso de q o servidor está com pouca memória. ■ Information: Esse valor indica q o processo está sendo executado corretamente, mas há algumas informações interessantes para incluir no arquivo de saída de rastreamento. Ex: uma informação de um usuário conectado em um sistema ou de q algo foi adicionado ao BD.
classe TraceSource opções diferentes para o enum TraceEventType: Verbose Stop, Start, Suspend, Resume, Transfer Verbose: é o valor mais livre relacionados toda a severidade no enum. Ele deve ser usado para obter informações q não estão indicando nada de errado com a aplicação e é provável que aparecem em grande qtde. Ex: qdo todos os métodos de instrumentação em um tipo rastreiam seu início e fim, é típico para usar o tipo de evento detalhado. ■ Stop, Start, Suspend, Resume, Transfer: esses tipos de eventos não são indicações de gravidade, mas marcam o evento de rastreamento, relacionados com o fluxo lógico do aplicativo. Eles são conhecidos como tipos de atividades de eventos e marcam uma operação lógica de início ou parada, ou transferindo o controle para outra operação lógica.
classe TraceSource 2º e 3º parâmetros O 2º argumento para o método de trace é o número de identificação de evento. Este nº não tem qlq significado predefinido; é apenas uma outra maneira de agrupar os eventos. Vc poderia, por ex, agrupar seu BD com números de chamadas 10000-10999 e suas chamadas de serviço da web como 11000-11999 a mais facilmente dizer de que área da sua aplicação uma entrada de rastreio está relacionada. O 3º parâmetro é uma string que contém a mensagem que deve ser rastreada. Qdo vc estiver usando o método TraceData, vc pode passar argumentos extras q devem estar de saída para o rastreamento.
o que são Listeners para as classes Debug e TraceSource?
configure TraceListener
configurando Listener com arquivo de configuração
O que é um switch (interruptor) no arquivo de configuração? O arquivo de configuração tb define um switch (interruptor), o qual é utilizado por um trace source para determinar se ele deverá fazer alguma coisa com uma msg de rastreio q recebe. Dessa forma, vc pode determinar quais msgs de rastreamento q vc quer ver. Reduzindo a qtde de msgs melhora o desempenho e vai resultar num arquivo de saída menor. Depois de ter encontrado a área particular q deseja focar, vc pode definir o seu switch para um nível mais detalhado. Embora os switches de trabalhem para um source trace completo, um filtro é aplicado a um listener individual. Qdo vc tem vários listeners para um único source trace, vc pode usar filtros para determinar quais eventos de rastreamento sejam transformados pelo listener. Poderia ter um listener q envia msgs de texto apenas para os eventos críticos em uma fonte de rastreamento, por exemplo.
EventLog
os logs do exemplo anterior podem ser visualizados pelo Windows Event Viewer
Reading data from the event log
EntryWritten
Show full summary Hide full summary

Similar

Porova teórica C# mod l
Cursos Professor Jonatã
Linguagem C#
Alex Araujo Furado
Prova teorica C# mo ll
Cursos Professor Jonatã
Entity framework - code first
José Fernandes
Flashcard Módulo 1 - XAMARIN LATINO AMERICA
Marcone Barbosa
Entity framework
José Fernandes
C# and ASP.NET
Kalebi Fiorentini
Linguagens de programação
Rodrigo Barbosa7452
Conceitos do ASP.NET CORE (Incompleto)
José Fernandes Rezende Neto
Dates and times .NET
Felipe Couto Viola
Fluxo Game UC 8
Lucas Coluzzo