Beruflich Dokumente
Kultur Dokumente
Monitoreo
Utilizando DMV, Extended Events y Service Broker
http://sql-javier-villegas.blogspot.com.ar/
2
Agenda
3
Analizando la actividad de SQL Server
dbo.SP_DBA_CurrentlyExec
http://1drv.ms/1j9es6f
4
dbo.SP_DBA_CurrentlyExec
Ejemplo
Bloqueos
5 5
dbo.SP_DBA_CurrentlyExec
dbo.SP_DBA_CurrentlyExec @info=1
6 6
dbo.SP_WhoIsActive
7 7
sp_server_diagnostics
8 8
sp_server_diagnostics
Create_Time
Timestamp de creacin del registro
Component_Type
Tipo de Componente
Component_Name
Informa el componente involucrado o del nombre de un Availability Group de AlwaysOn
State
Informa el estado del componente, los valores pueden ser 0, 1, 2 o 3
State_Desc
Descripcin del estado de lo que ha sido informado en State , los valores pueden ser
Unknown, Clean, Warning, Error
Data
Registro XML con los datos recopilados del componente en cuestin
9 9
sp_server_diagnostics
System
Datos de utilizacin de CPU, Dumps, Pages, etc.
Resource
Datos de memoria
Query_processing
Datos de procesamientos de Queries (Tasks, Wait Stats, bloques, etc.)
IO_subsystem
Datos de I/O
Events
Datos de los eventos del server
Availability Group
Datos relacionados al Availability Group en caso de que la instancia utilice AlwaysOn
10 10
sp_server_diagnostics
Ejemplos
11 11
Analizando la actividad de SQL Server
Otras herramientas
Performance Monitor
Activity Monitor
SQL Server Performance Dashboard
https://www.microsoft.com/en-us/download/details.aspx?id=29063
SQL Profiler *
Extended Events
12 12
Monitoreo Continuo utilizando Extended Events
Extended Events
Sistema de control de eventos general
Correlacin de base de datos y sistema operativo
Herramienta de seguimiento (Performance Monitor / SQL Trace)
Configuracin de control de eventos basado en T-SQL
til para realizar troubleshooting sin impactar la performance (Carga adicional mnima)
Recolectar datos desde cualquier lado
I/O
Waits
Parmetros de un Query
Plan de Ejecuciones
Lock
13 13
Monitoreo Continuo utilizando Extended Events
14 14
Monitoreo Continuo utilizando Extended Events
Extended Events
Podemos realizar los mismos tipos de capturas que con SQL Profiler
Mucho mas gil que SQL Profiler.
Fcil de manipular.
15 15
DEMO
Extended Events
Errores de SQL
Deadlocks
Statements que se ejecutan por tiempo prolongado
16 16
Monitoreo Proactivo utilizando DMV y PowerShell
Recoleccin continua y de informacin importante relacionada con los signos vitales del
entorno
Versin, Edicin de SQL y Windows
MAXDOP
Cluster
Database Mirroring/AlwaysOn
Network
Transacciones Activas
Transacciones por segundo
Conexiones Numero de Requerimientos por Segundo
Contadores de Performance Monitor relacionados con I/O utilizando PowerShell
Latencias de IO
17 17
Monitoreo Proactivo utilizando DMV y PowerShell
Adicionalmente
SQL Job que se ejecuta cada minuto y realiza las siguientes tareas
Ejecuta currently executing. Almacena el resultado solo si hay bloqueos o si hay algn Statement
ejecutndose por mas de 2 minutos.
Enva email con reportes de bloqueos (configurable)
La tabla utilizada para guardar la salida de Currently Executing es til cuando tenemos que investigar problemas
de performance en el pasado.
Detecta Statements corriendo por mas de N minutos (Enva email con reporte)
Chequea utilizacin del porcentaje de uso del transaction log de todas las bases (Enva email con
reporte)
Espacio libre en los discos (enva email cuando quedan menos de 1 GB o 7 % del total)
Detecta transacciones abiertas por mas de N minutos
Detecta SQL Dumps
Detecta errores crticos en el SQL Error Log
Utilizacin de los discos utilizado contadores de PerfMon
Reporte de Latencia de los discos
18 18
Auditoria
Utilizando Service Broker podemos realizar un sistema de que nos permitir auditar la
manipulacin de objetos dentro de una base de datos de usuario,
Tendremos un registro identificando el CREATE , DROP o ALTER
Cada registro nos informara lo siguiente:
TimeStamp del Evento
Tipo de Evento
CREATE_PROCEDURE, DROP_TABLE, etc.
Login con el que se realizo dicho evento
Esquema y Nombre de Objeto
Tipo de Objeto
Session ID con el que se realizo el evento
HostName (*)
Detalle del Evento XML
19 19
Monitoreo Proactivo utilizando DMV y PowerShell
20 20
Monitoreo Proactivo utilizando DMV y PowerShell
21 21
Monitoreo Proactivo utilizando DMV y PowerShell
22 22
Monitoreo Proactivo utilizando DMV y PowerShell
23 23
Monitoreo Proactivo utilizando DMV y PowerShell
24 24
DEMO
Monitoreo Proactivo
Auditoria
25 25
Preguntas?
Gracias por asistir
Follow @pass24hop