事件预过滤
预过滤是由性能模式完成的,并具有适用于所有用户的全局效果。可以将预过滤应用于事件处理的生产者或消费者阶段:
要在生产者阶段配置预过滤,可以使用几个表:
setup_instruments
指示可用的仪器。不管其他与生产相关的设置表的内容如何,在该表中禁用的仪器均不会产生任何事件。允许该表中启用的工具产生事件,但要视其他表的内容而定。setup_objects
控制性能模式是否监视特定的表和存储的程序对象。threads
指示是否为每个服务器线程启用监视。setup_actors
确定新前台线程的初始监视状态。
- 要在使用者阶段配置预过滤,请修改
setup_consumers
表。这确定了事件发送到的目的地。setup_consumers
也隐式影响事件的产生。如果给定事件不会被发送到任何目的地(即不会被使用),那么性能架构将不会生成该事件。
对这些表中任何一个的修改都会立即影响监视,但对该setup_actors
表的修改仅影响在修改之后创建的前台线程,而不影响现有线程。
更改监视配置时,性能架构不会刷新历史记录表。已经收集的事件将保留在当前事件和历史记录表中,直到被新事件取代。如果禁用了工具,则可能需要等待一会儿,然后才能用新的感兴趣的事件取代它们的事件。或者,使用TRUNCATE TABLE
清空历史记录表。
更改工具后,您可能希望截断摘要表。通常,效果是将摘要列重置为0或NULL
,而不是删除行。这使您可以清除收集的值并重新开始聚合。例如,在更改运行时配置之后,这可能会很有用。截断行为的例外情况在各个摘要表部分中都有说明。
以下各节描述了如何使用特定的表来控制性能模式预过滤。