【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.1】监控事件系列——SQL Server Profiler

    声明:本系列是书目<sql server监控与诊断读书笔记> 联机丛书监控:https://docs.microsoft.com/en-us/sql/relational-database ...

  2. 【监控笔记】【1.2】监控事件系列——SQL Trace(默认跟踪与自定义跟踪)

    目录: [1.1]概念与使用 [1.2]跟踪的基本操作 --[1.2.1]查看默认跟踪是否在运行 --[1.2.2]开启默认跟踪 --[1.2.3]关闭默认跟踪 --[1.2.4]查看跟踪文件/查看跟 ...

  3. 【监控笔记】【2.4】SQL Server中的 Ring Buffer 诊断各种系统资源压力情况

    SQL Server 操作系统(SQLOS)负责管理特定于SQL Server的操作系统资源. 其中相关的动态管理试图sys.dm_os_ring_buffers将被标识为仅供参考.不提供支持.不保证 ...

  4. 【监控笔记】【1.5】事件通知(event Notification)

    关键词:DDL监控 [监控笔记][1.5]事件通知(event Notification) 注意,只能通过删除新建来修改事件. [1]概念 事件通知是特殊类型的数据库对象,用于将有关服务器和数据库实践 ...

  5. Java系列笔记(4) - JVM监控与调优【转】

    Java系列笔记(4) - JVM监控与调优[转]   目录 参数设置收集器搭配启动内存分配监控工具和方法调优方法调优实例     光说不练假把式,学习Java GC机制的目的是为了实用,也就是为了在 ...

  6. 【监控笔记】【1.4】Pssdiag和Sqldiag管理器

    --没有实操过,有点复杂,先写上以后有用到再深入研究 统计与诊断数据是任何 SQL故障修复工作的关键所在. 如果没有掌握这些数据,就无法确定数据性能问题的根源.数据表的瓶颈可能并不是由索引问题造成的: ...

  7. 菜鸟的Xamarin.Forms前行之路——按钮的按下抬起事件的监控(可扩展至其他事件)

    提问:监控按钮的点击事件,可以通过按钮的Click事件,或者Command绑定,那么如何监控按钮的按下与抬起,或者移动,长按,双击等事件? 解决方法:各个平台自定义渲染依赖注入. 共享项目PCL: 1 ...

  8. Prometheus监控学习笔记之Prometheus监控简介

    0x00 Prometheus容器监控解决方案 Prometheus(普罗米修斯)是一个开源系统监控和警报工具,最初是在SoundCloud建立的.它是一个独立的开放源码项目,并且独立于任何公司.不同 ...

  9. 11-MySQL DBA笔记-MySQL的监控

    第11章 MySQL的监控 为什么我们需要监控呢?因为如果没有了监控,那么我们的服务可用性就无从度量,我们也无法及时地发现问题和处理问题.一个完善的监控体系,不仅需要进行实时的监控,也需要分析历史的监 ...

随机推荐

  1. SQL优化之表连接方式

    1.嵌套循环(DESTED LOOPS) Note:嵌套循环被驱动表必须走索引,而且索引只能走INDEX UNIQUE SCAN或者INDEX RANGE SCAN SQL> select /* ...

  2. python实例31[生成随即的密码]

    代码: import random import string import time # strong.high = 3  #random for the whole passwd #storng. ...

  3. 系统命令模块subprocess

    系统命令 可以执行shell命令的相关模块和函数有: os.system os.spawn* os.popen* --废弃 popen2.* --废弃 commands.* --废弃,3.x中被移除 ...

  4. Dw 表单制作 与 dedecms 结合实现提交效果

    Dw 表单制作 与 dedecms 结合实现提交效果 自定义表单的用处 1.教育类网站的学员报名 2.企业网站的在线订单 3.普通网页上的一些和用户交互的小功能 实现原理:首先添加表单:核心-频道模型 ...

  5. spring自带工具类

    在spring-core.jar包中,org.springframework.util package下有很多工具类,这些工具类十分具有参考意义.

  6. Introduction-to-Psychology Slides

    最近在网易公开课学习耶鲁大学Paul Bloom教授的<心理学导论>,英文水平有限,视频中一直没有出现PPT,无意中找到一份课件,现分享于此,大家自取! 链接:https://pan.ba ...

  7. DVWA--CSP Bypass

    0x01看到标题,是否有点疑惑 CPS 是什么东东.简单介绍一下就是浏览器的安全策略,如果 标签,或者是服务器中返回 HTTP 头中有 Content-Security-Policy 标签 ,浏览器会 ...

  8. 【Python】学习笔记三:序列

    sequence(序列) sequence(序列)是一组有序的元素的集合,序列可以有任何元素,也可以没有元素 元组与表的区别:一旦建立,tuple的各个元素不可再变更,而list的各个元素可以再变更 ...

  9. js中的 for, for in, for of foreach,filter使用

    下面是对数组进行循环 var array = [ { id: , name: 'ohzri', birth: '1999.09.09', city: '湖北', salary: }, { id: , ...

  10. 关于Tomcat重启和关闭后重启session变化

    ,当页面第一次访问,session的attribute还未赋值,为null 当页面第二次访问时,这时当前的session的attribute有值了! 到了本文章的点题时刻!! 如果我是直接点击serv ...