拡張イベントセッションでライブデータを監視できない


9

PCでSQL Server 2014 Developer Editionを実行しています。system_healthセッションでデータを表示しようとしています。SSMSでは、データベースに接続し、サーバー/管理/拡張イベント/セッションを拡張しました。AlwaysON_health(停止)とsystem_health(実行中)が表示されます。

system_healthセッションを右クリックすると、次のエラーが発生します。

ストレージは、提供されたパラメーターを使用して初期化できませんでした。(Microsoft.SqlServer.XEventStorage)「system_health」という名前の拡張イベントセッションが見つかりませんでした。セッションが存在し、開始されていることを確認してください。(Microsoft SQL Server、エラー:25728)

system_healthを展開すると、ターゲットのpackage0.event_fileおよびpackage0.ring_bufferが表示されます。いずれかのターゲットを右クリックして[ターゲットデータの表示]を選択すると、次のエラーが発生します。

ストレージは、提供されたパラメーターを使用して初期化できませんでした。(Microsoft.SqlServer.XEventStorage)関数 'fn_MSXe_read_event_stream'が存在しないか、権限がないため、表示できません。(Microsoft SQL Server、エラー:15151)

関数は存在します。私はそれを実行できます:

select * from fn_MSXe_read_event_stream('system_health', 0);

実行すると、次のエラーが発生します。

Msg 25728, Level 16, State 10, Line 6
The Extended Events session named "system_health" could not be found. Make  sure the session exists and is started.

system_healthセッションがあることを知っています。私はセッションのリストに表示されます:

select * from sys.dm_xe_sessions

address name       name
------------------ ------------- 
0x00000001FF6510C1 system_health

私は自分のカスタムイベントセッションでこれを試しました。ライブデータも見られない。

からsystem_healthリングバッファターゲットデータをクエリできますsys.dm_xe_session_targets

拡張イベントセッションのライブデータを見ることができないのはなぜですか?

(この問題にはMicrosoftフィードバック項目があることに注意してください。)


1
これを別のインスタンスで(SSMSの同じコピーを使用して)、またはこのインスタンスでSSMSの別のコピー(たとえば、別のマシン)からテストできますか?Windows認証とsaの両方を試しましたか?インスタンスの問題のように聞こえますが、常に組み合わせを除外するのに適しています。
アーロンバートランド

答えを見つけました。ログインのデフォルトデータベースは、の代わりに通常使用するデータベースに設定されましたmaster。デフォルトのデータベースを設定してmasterエラーを解決しました。
ポールウィリアムズ

オブジェクトエクスプローラーでセッションを右クリックすると、SQL Serverは、既定のデータベースに関係なく、どこにあるかを知る必要があります。
アーロンバートランド

@AaronBertrandはい、同意します!SSMSは、デフォルトのデータベースに関係なく、イベントセッションに接続する方法を知っている必要があります。Microsoft Connectアイテムを質問にリンクしました。誰かが投票したり、コメントしたりする必要がある場合です。
ポールウィリアムズ

どのログインを使用していますか?Windows authまたはSQL auth?彼らはどのような役割を果たしていますか?
アーロンバートランド

回答:


15

問題が見つかりました。ログインには、データベースとは異なるデフォルトデータベースがありましたmaster。デフォルトのデータベースをに変更するmasterと、エラーはなくなり、拡張イベントセッションでライブデータを見ることができました。

デフォルトのデータベースを変更するために、SSMSでサーバー、セキュリティ、ログインを拡張しました。ユーザー資格情報を右クリックしました。ユーザーの[ログインのプロパティ]ページで、[デフォルトのデータベース]をに変更しましたmaster。SSMSオブジェクトエクスプローラーで接続を閉じて再度開くと、エラーは発生しなくなりました。

2018-12-11を編集

、この問題のためのフィードバックリンク、カールFasick可能性が高いソリューションを投稿しました:

オブジェクトエクスプローラーがマスターデータベースに接続されていません...修正-オブジェクトエクスプローラーの接続を解除-再接続しますが、接続プロパティに移動し、マスターを明示的に選択します。


1
この正確なバグには接続項目があります。MSはそれを「再現できなかった」としてクローズしました: connect.microsoft.com/SQLServer/feedback/details/893993/… 私が行ったのと同じ方法でここに来た場合は、投票してください(エラーについてグーグル-私の場合は2016に対して)インスタンス)。
マイケルKキャンベル

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.