Azure 中的扩展事件 - 无法将对象添加到事件会话中
Posted
技术标签:
【中文标题】Azure 中的扩展事件 - 无法将对象添加到事件会话中【英文标题】:Extended events in Azure - Object cannot be added to the event session 【发布时间】:2019-10-07 12:09:59 【问题描述】:我正在尝试在 Azure SQL DB 上创建扩展事件。我已按照以下 Azure 文档的说明进行操作:
http://andreas-wolter.com/en/1804-tracing-with-extended-events-in-azure-sql-database/
https://blogs.msdn.microsoft.com/azuresqldbsupport/2018/03/13/extended-events-capture-step-by-step-walkthgrough/
我已成功创建扩展事件会话。当我尝试开始会话时,我收到以下错误消息。
> 标题:Microsoft SQL Server Management Studio
执行 Transact-SQL 语句或批处理时发生异常。 (Microsoft.SqlServer.ConnectionInfo)
其他信息:
目标“5B2DA06D-898A-43C8-9309-39BBBE93EBBD.package0.event_file”在初始化期间遇到配置错误。无法将对象添加到事件会话。操作系统返回错误 5:“访问被拒绝。 ' 同时创建文件 'https://xxxxxxxxxxxxxxxx.blob.core.windows.net/Container/FileName_0_132028925297100000.xel'。 (Microsoft SQL Server,错误:25602)
请注意,我使用 azure 门户创建了容器,并且可以从门户上传文件。
请建议我解决错误。
【问题讨论】:
【参考方案1】:根据我过去的经验,我也面临同样的问题。原因是存储 URL 或容器名称区分大小写。请使用您的 URL 再次验证。或许能解决你的问题。
【讨论】:
好人!我发现容器名称在我传递给存储 event_file 的 URL 中区分大小写,我更正了它,现在它对我有用。非常感谢!【参考方案2】:尝试将扩展事件的目标改为环形缓冲区:
ADD TARGET package0.ring_buffer -- Store events in the ring buffer target
(SET MAX_MEMORY = 4096, max_events_limit = 5000)
WITH (MAX_DISPATCH_LATENCY = 120 SECONDS,
STARTUP_STATE = ON);
Here你会发现如何读取环形缓冲区。
【讨论】:
感谢您的回复。在我当前的项目中,我们的最终目标是将数据存储在 event_file 中并用于进一步分析。以上是关于Azure 中的扩展事件 - 无法将对象添加到事件会话中的主要内容,如果未能解决你的问题,请参考以下文章
发生错误发送事件:Azure 函数输出适配器无法将事件写入 Azure 函数作为流分析作业输出