Modulo 5
http://blogs.msdn.com/wcamb/
Aspectos gerais sobre
− Debugging & Troubleshooting sobre desenvolvimento
− Designing & Configuring para disponibilidade
− Usar o Visual Studio Debugging com o AppFabric
para Monitoring, Persistence & Configuration
− Monitorar serviços em execução na produção
− Configurar serviços para troubleshooting otimizado
em ambiente de produção
− Gerenciar a resiliência de serviços em produção
− Usar as funcionalidades do AppFabric Monitoring,
Persistence & Configuration
− Passo-a-Passo gráfico
− Definição de Breakpoints
− Examinar variáveis locais, por meio das janelas
Watch & Immediate
− Monitoração sobre o histórico de chamadas para
serviços WCF
− Monitoração sobre o histórico de eventos
executadas em workflows WF
− Monitoração sobre o histórico de workflows WF
persistidos pela aplicação
6
− Administrative Tools / Performance Monitor
7
− AppFabric Caching:Secondary Host
− AppFabric Caching:Cache
− AppFabric Caching:Host
8
− Administrative Tools / Event Viewer
9
− Application Server-Applications
− Application Server-System
Services
Admin
10
11
− WCF trace events e WF tracking events.
− Health monitoring
− Troubleshooting
− Maior visibilidade sobre as operações de serviços.
Workflow Service
Monitoring
Tools
WCF
Trace
Tracking
Participant
ETW
Tracking
Profile
Event
Collector
Service
Monitoring
Database
Windows Server AppFabric
> Event Collector Service
>
>
− ETW
−
−
−
−
Próposito geral
Alta velocidade
Tracing com buffers
Disponibilizado pelo sistema operacional
− Observação através do Event Viewer
− Enable Diagnostic & Debug logs
− Possui algumas limitações para maior throughput
− 64 KB Payload Size
− Pode perder alguns registro sobre carga intensa de
eventos
Cliente
AppFabric
Server
AppFabric
Server
15
16
17
− Recebe eventos ETW & escreve em tabelas de apoio na base SQL
(por default)
− SQL agent job processa esses evento, resultados visíveis no IIS
− Interface Dashboard
− Tracked Events (Tracked Events Query Editor)
− Volume e fontes (Source) de eventos
− Track variable & argument values
− Ainda escreve em arquivos svclog
− Workflow Instance
− Activity State (track variable)
− Custom Tracking, Activity Scheduled, Cancel Requested,
Fault Propagation, Bookmark Resumption
machine.config
− Web.config no projeto de WCF Services ou WCF Workflow Services
− Troubleshooting, End to End, Health Monitoring, Errors
Only, Off
20
21
Controla o tracking
profile usado para
eventos WF e registro
de eventos WCF
Health Monitoring é o
único nível onde
eventos WCF agregados
são logados
22
23
24
Opções de configuração
para tracing de serviços
WCF e workflows WF
Configura o arquivo para
loggin de eventos WCF
25
Aspectos de monitoração para
WorkflowServiceHost
Workflow Service
Extensions
AppFabric oferece o
SqlWorkflowInstanceStore
que usa o SQL Server
Scheduler
Persistence Provider
Tracking Participant
Custom Extension
Podemos construir um
PersistenceProvider próprio para
outras bases de dados
Host: IIS | AppFabric
EtwTrackingParticipant
Runtime
Config
TrackingProfile
Workflow
Event Collector Service
Extensions
Persistence Provider
Events logados:
• Workflow status
• Activity status
• Custom user data
• Exceptions
ETW Tracking Participant
Controle o tamanho da base para
persisência, através da compressão
de instâncias e descarte de
instâncias completadas
Habilita o Host AppFabric
para controlar instâncias
(Abandon, Cancel, Run,
Resume, Suspend,
Terminate)
Controla quanto
agressivamente o AppFabric
tenta persistir e descarregar
instâncias da memória
Capturando eventos do
workflow
32
− Armazenado dentro da base de monitoração
− Para instâncias persistidas por default
− Atualizando valores de propriedades resulta em
novos registros na base
− Escrita quando o evento é gerado
− Suporte via interface AppFabric UI
− Simples para configuração (a partir das atividades
de workflow e serviços).
− Armazenadas dentro da base de monitoração
− Configurado com tracking profiles
− Os valores somente estão disponíveis quando o
evento relacionado é capturado
− Suporte para consultas via interface AppFabric
− Armazenados dentro da base de persistência
− Removido quando a instância persistida é
completada (pode default)
− Atualização de valores não resulta em novos
registros
− Escrita quando a instância é persistida
− Sem suporte via UI AppFabric
− Configuração complexa (comportamento
controlado por serviço)
35
− Clear -ASMonitoringSqlDatabase
− Set-ASMonitoringSqlDatabaseArchiveConfiguration
− Inicializar o Worker Process antes da primeira
mensagem ser recebida pelo serviço ou
workflow.
Initializes the worker process before the first message is received
Define o pattern para o
intervalo de tempo
(exponencial ou linear) entre
tentativas antes da falha para
lock de instâncias
Por quanto tempo o
host mantem o lock
Controla o intervalo entre
sucessivas tentativas
Monitoração e Administração via
− Administrative Tools / Windows PowerShell
41
42
43
Limpando as bases do AppFabric
import-module applicationserver
$ConfirmPreference = "None"
Remove-ASPersistenceSqlDatabase
-Force -Database "AppFabricPersistenceDB“ -Server ".\SQLEXPRES"
Initialize-ASPersistenceSqlDatabase -Admins
$env:computername\AS_Administrators -Readers
$env:computername\AS_Observers -Users "BUILTIN\IIS_IUSRS"
-Database "AppFabricPersistenceDB" -Server ".\SQLEXPRES "
Clear-ASMonitoringSqlDatabase -Database "AppFabricMonitoringDB"
-Server ".\SQLEXPRES “
Exemplos de comandos
para monitoração da
saúde do AppFabric
Caching Services
Health Monitoring Tools (Windows Server AppFabric Caching)
http://msdn.microsoft.com/en-us/library/ff921010.aspx
45
 WebFarm é um cenário suportado, mas não possui
tooling ou interface gráfica
 Configuração por script para
 Aplicar configuração em todas as máquinas do farm
 Aplicar configuração para todo novo nó
 Obter o conteúdo através do WebDeploy
 Package para todo o servidor
 Aplicações IIS individuais
 Script deployment
46
Monitoração integrada através do
− http://www.microsoft.com/downloads/en/details.aspx?Fa
milyID=7E870C9A-0B5B-4CCA-8D8C42A66B8C9741&amp%3Bdisplaylang=en
48
Hands-On Lab
Download

Monitoração - Center