【监控笔记】【1.3】监控事件系列——SQL Trace(黑盒跟踪 BlackBox Trace)
【1】它跟踪了哪些事件?
(1.1)存储过程执行(SP:Strating)
(1.2)T-SQL执行(SQL:BatchString)
(1.3)错误和警告(Exception,Attention)
~~对于这些事件,下面的信息会被跟踪
(1.1)执行的查询或错误信息。
(1.2)执行的日志和时间
(1.3)执行查询或存储过程的用户
(1.4)事件发生的数据库
(1.5)发送查询或导致错误的服务器或工作站
(1.6)实施查询的应用程序名
【2】黑盒跟踪的作用
sql server黑盒跟踪有用大量运行数据的记录。它记录了发送到sql server所有查询以及类似错误信息的有用记录,可以帮助诊断间歇性服务器崩溃,或者再CPU飙高之前发生了什么错误。
【3】定义与使用
declare @TraceId int
declare @maxFilesize bigint
declare @filecount int
set @filecount=3
set @maxFilesize =200
--sp_trace_create联机丛书
exec sp_trace_create
@TraceId output,
@options=8,
@tracefile=null, --该跟踪无法指定文件路径参数
@maxfilesize=@maxFilesize,
@stoptime=null,
@filecount=@filecount exec sp_trace_setstatus @TraceId,1 --0为禁用,2为停止,1为启用
print @traceId
--select * from sys.traces --查看所有跟踪
【4】查阅与分析
--使用select * from sys.traces 来寻找新建的跟踪,或上门的输出,找到路径 select databasename,objectName,hostname,textdata,
applicationName,sessionLoginName,loginName,spid,Starttime,eventclass,t2.name
from sys.fn_trace_gettable('\\?\D:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\blackbox.trc',default) t1
join sys.trace_events t2 on t1.eventclass=t2.trace_event_id


【5】生产环境下的自启配置
use master;
go
create procedure StartBlackBoxTrace
as
begin
declare @TraceId int
declare @maxFilesize bigint
declare @filecount int
set @filecount=3
set @maxFilesize =200 exec sp_trace_create
@TraceId output,
@options=8,
@tracefile=null,
@maxfilesize=@maxFilesize,
@stoptime=null,
@filecount=@filecount exec sp_trace_setstatus @traceId,1 --0为禁用,2为关闭,1为启用
end go
--服务启动时自动启动
exec sp_procoption
'StartBlackBoxTrace','startup','on'
参考文件
其他参阅:联机丛书--事件
相关参考:深入了解跟踪
【监控笔记】【1.3】监控事件系列——SQL Trace(黑盒跟踪 BlackBox Trace)的更多相关文章
- 【监控笔记】【1.1】监控事件系列——SQL Server Profiler
声明:本系列是书目<sql server监控与诊断读书笔记> 联机丛书监控:https://docs.microsoft.com/en-us/sql/relational-database ...
- 【监控笔记】【1.2】监控事件系列——SQL Trace(默认跟踪与自定义跟踪)
目录: [1.1]概念与使用 [1.2]跟踪的基本操作 --[1.2.1]查看默认跟踪是否在运行 --[1.2.2]开启默认跟踪 --[1.2.3]关闭默认跟踪 --[1.2.4]查看跟踪文件/查看跟 ...
- 【监控笔记】【2.4】SQL Server中的 Ring Buffer 诊断各种系统资源压力情况
SQL Server 操作系统(SQLOS)负责管理特定于SQL Server的操作系统资源. 其中相关的动态管理试图sys.dm_os_ring_buffers将被标识为仅供参考.不提供支持.不保证 ...
- 【监控笔记】【1.5】事件通知(event Notification)
关键词:DDL监控 [监控笔记][1.5]事件通知(event Notification) 注意,只能通过删除新建来修改事件. [1]概念 事件通知是特殊类型的数据库对象,用于将有关服务器和数据库实践 ...
- Java系列笔记(4) - JVM监控与调优【转】
Java系列笔记(4) - JVM监控与调优[转] 目录 参数设置收集器搭配启动内存分配监控工具和方法调优方法调优实例 光说不练假把式,学习Java GC机制的目的是为了实用,也就是为了在 ...
- 【监控笔记】【1.4】Pssdiag和Sqldiag管理器
--没有实操过,有点复杂,先写上以后有用到再深入研究 统计与诊断数据是任何 SQL故障修复工作的关键所在. 如果没有掌握这些数据,就无法确定数据性能问题的根源.数据表的瓶颈可能并不是由索引问题造成的: ...
- 菜鸟的Xamarin.Forms前行之路——按钮的按下抬起事件的监控(可扩展至其他事件)
提问:监控按钮的点击事件,可以通过按钮的Click事件,或者Command绑定,那么如何监控按钮的按下与抬起,或者移动,长按,双击等事件? 解决方法:各个平台自定义渲染依赖注入. 共享项目PCL: 1 ...
- Prometheus监控学习笔记之Prometheus监控简介
0x00 Prometheus容器监控解决方案 Prometheus(普罗米修斯)是一个开源系统监控和警报工具,最初是在SoundCloud建立的.它是一个独立的开放源码项目,并且独立于任何公司.不同 ...
- 11-MySQL DBA笔记-MySQL的监控
第11章 MySQL的监控 为什么我们需要监控呢?因为如果没有了监控,那么我们的服务可用性就无从度量,我们也无法及时地发现问题和处理问题.一个完善的监控体系,不仅需要进行实时的监控,也需要分析历史的监 ...
随机推荐
- SpringCloud微服务面试题
spring data是spring用于简化spring开发中数据访问操作的项目spring Dataspring Data为我们提供了使用统一的API来对数据访问层进行操作,这主要是Spring D ...
- mysql——二级索引(辅助索引)
二级索引:叶子节点中存储主键值,每次查找数据时,根据索引找到叶子节点中的主键值,根据主键值再到聚簇索引中得到完整的一行记录. 问题: 1.相比于叶子节点中存储行指针,二级索引存储主键值会占用更多的空间 ...
- 10.django的一些方法理解
django get_object_or_404 get_object_or_404是django的django shortcuts的方法,用来查询数据,或者抛出一个DoesNotExist的异常 用 ...
- #418 Div2 Problem B An express train to reveries (构造 || 全排列序列特性)
题目链接:http://codeforces.com/contest/814/problem/B 题意 : 有一个给出两个含有 n 个数的序列 a 和 b, 这两个序列和(1~n)的其中一个全排列序列 ...
- mini-batch
我们在训练神经网络模型时,最常用的就是梯度下降,梯度下降有一下几种方式: 1.Batch gradient descent(BGD批梯度下降) 遍历全部数据集算一次损失函数,然后算函数对各个参数的梯度 ...
- Springboot(八):emoji表情保存到mysql出错的解决办法
emoji表情保存到mysql出错的解决办法 今天,在前端的说明信息中输入emoji表情的时候,插入数据库会报错 百度了一下,是因为mysql数据库的字符编码集不正确,utf8无法存入表情字符,只能将 ...
- [BZOJ4804]欧拉心算:线性筛+莫比乌斯反演
分析 关于这道题套路到不能再套路了没什么好说的,其实发这篇博客的目的只是为了贴一个线性筛的模板. 代码 #include <bits/stdc++.h> #define rin(i,a,b ...
- Pyhton实用的format()格式化函数
Python2.6 开始,新增了一种格式化字符串的函数 str.format(),它增强了字符串格式化的功能. 基本语法是通过 {} 和 : 来代替以前的 % . format 函数可以接受不限个参数 ...
- 你的第一个Quartz程序
package org.quartz.examples.example1; import java.util.Date; import org.slf4j.Logger; import org.slf ...
- Git - grafted 和 shallow update not allowed
一般人对开源的模板进行修改是总会进行这样的一条龙操作 # 克隆最近一次提交 git clone xxx --depth 1 # 修改修改修改 提交提交提交 vim xxx git commit -am ...