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

关键词:DDL监控

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

【1】概念

  事件通知是特殊类型的数据库对象,用于将有关服务器和数据库实践的信息发送到 Service Broker服务。

  执行事件通知可对各种T-SQL数据定义语言DDL语句和SQL跟踪事件作出响应,采取的响应方式是将这些事件的相关信息发送到Service Broker服务。

【2】设计事件通知

  必须定义通知的作用域、引发事件通知的T-SQL语句或语句组!

  (1)定义通知作用域:

      用户可以将事件通知指定为响应针对【当前数据库】或【sql server实例中的所有对象执行的语句】。

      针对Queue_activation 和 Broker_queue_disabled 事件指定的时间通知的作用域限定为单个队列。并发所有事件都可以在任何作用域级别执行。

      比如Create_database 事件仅可以在服务器实例级别执行。

      相反,针对Alter_table 时间创建的时间通知可以通过编程,针对数据库或服务器实例中的所有表执行。

  (2)指定T-SQL语句或语句组:

      可以创建时间通知响应以下内容

      特定的DDL语句、SQL跟踪事件或Service Broker事件。  预定义的DDL语句组或SQL跟踪事件组。

  (3)选择特定的DDL语句及SQL跟踪引发事件通知

      事件可以设计为运行特定的T-SQL语句或存储过程之后执行,如后面例子中事件通知在alter——table事件之后执行。

      相关引发事件通知的列表可以参考相关事件,还可以查询 sys.event_notification_event_types 目录视图获取。

      注意,SQL跟踪事件仅可在服务器实例作用域执行。

  (4)选定特定的Service Broker 事件引发事件通知

      事件通知可以设计为在 Queue_activation 或 Broker_Queue_disabled Service Broker事件之后激发。

      当队列有消息要处理时,将发生Queue_Activation事件。

      但队列状态设置为 Off 时,将发生Broker_Queue_Disabled 事件。

  (5)

猜你喜欢

转载自www.cnblogs.com/gered/p/10944007.html