Database Watcher を使用して Azure SQL ワークロードを監視する (プレビュー)
適用対象: Azure SQL データベース Azure SQL Managed Instance
Database Watcher は、Azure SQL ファミリのデータベース サービス用のマネージド監視ソリューションです。 Azure SQL データベースと Azure SQL Managed Instance がサポートされています。
Database Watcher は、データベースのパフォーマンス、構成、正常性の詳細ビューを提供するために、ワークロード監視データを詳細に収集します。 選択したデータベース、Elastic Pool、および SQL Managed Instance からの監視データは、Azure サブスクリプションの中央データ ストアに収集されます。 Azure portal のダッシュボードでは、Azure SQL 資産の単一ウィンドウ ビューと、各データベース、Elastic Pool、および SQL Managed Instance の詳細なビューが提供されます。
SQL 監視データを格納して分析するために、データベース ウォッチャーは Azure Data Explorer または Microsoft Fabric の Real Time Analytics を使用できます。 Azure Data Explorer は、フル マネージドで拡張性の高いデータ サービスであり、時系列の監視データに対する高速なインジェストと分析を目的として構築されています。 1 つの Azure Data Explorer クラスターは、数千の Azure SQL リソースからの監視データをサポートするようにスケーリングできます。 Real Time Analytics では、Microsoft Fabric 内の SaaS オファリングと同じコア エンジンが使用されます。
KQL または T-SQL を使用して Azure Data Explorer または Real Time Analytics データベース内のデータに対してクエリを実行したり、Azure Data Explorer ダッシュボード、Power BI または Grafana を使用してカスタム視覚化を構築したり、Excel でデータを分析したりできます。 データベースまたはテーブルごとにデータ保持ポリシーを設定し、Azure Data Explorer クラスターを自動的にまたは手動でスケーリングして、最適な価格/パフォーマンス比を実現できます。
Azure SQL リソースの監視を開始するには、Azure サブスクリプションにWatcher リソースを作成します。 監視するデータ ストアと、監視するデータベース、Elastic Pool、または SQL Managed Instanceのセット (SQL ターゲットと呼ぶ) を選択して、監視を構成します。 ウォッチャーにターゲットへのアクセス権を付与し、ウォッチャーを開始します。
すぐに開始する手順については、「クイックスタート: データベース ウォッチャーを使用して Azure SQL を監視する」を参照してください。 セットアップと構成の詳細については、「データベース ウォッチャーの作成と構成」を参照してください。
よくあるご質問に対する回答については、「Database Watcher に関するよくあるご質問」を参照してください。
Database Watcher のビデオ概要については、Data Exposed エピソードをご覧ください。
Note
Database Watcher は現在プレビューの段階です。 プレビュー機能は、限定された機能でリリースされますが、お客様が早期アクセスをしてフィードバックを提供できるように、プレビュー ベースで利用できます。 プレビュー機能は別の補足プレビュー条項の対象であり、SLA の対象ではありません。 サポートは特定の場合にベスト エフォートとして提供されます。 ただし、Microsoft サポートはプレビュー機能に関するフィードバックを必要としているため、場合によってはベスト エフォートのサポートを提供する場合があります。 プレビュー機能には、制限された機能または制限付き機能があり、選択した地理的領域でのみ使用できる場合があります。
サポートされている Azure SQL ターゲット
データベース ウォッチャーでは、Azure SQL データベースと Azure SQL Managed Instance のすべてのサービス レベル、コンピューティング レベル、およびサービス対象がサポートされます。 これには、仮想コアと DTU の購入モデル、プロビジョニング済みコンピューティング レベルとサーバーレス コンピューティング レベル、単一データベースと Elastic Pool、Hyperscale が含まれます。
データベース ウォッチャーでは、高可用性レプリカ、geo レプリカ、Hyperscale の名前付きセカンダリ レプリカなど、すべての種類のセカンダリ読み取り可能レプリカを監視できます。
特定のウォッチャーの場合、SQL ターゲットは、同じ Microsoft Entra ID テナント内の任意のサブスクリプションにある可能性があります。
データベース ウォッチャーの価格
データベース ウォッチャーのコストは、次のような個々のコンポーネントによって発生します。
コンポーネント | 価格 | メモ |
---|---|---|
ウォッチャー | Free | |
ダッシュボード | Free | |
Azure Data Explorer クラスター* | 価格の詳細 | 最適なクラスター SKU は、監視ターゲットの数とクラスター クエリ ワークロードによって異なります。 クラスターのサイズ設定に関する考慮事項については、「Azure Data Explorer クラスターの管理」を参照してください。 |
Microsoft Fabric の Real Time Analytics | Power BI Premium ワークスペースの従量課金モデルに含まれています。 使用ごとの課金です。 | Azure Data Explorer か Real Time Analytics のいずれかを使用します。 これらのオファリングの 1 つだけが必要です。 |
Azure Key Vault のコンテナー | 価格の詳細 | 既定の Microsoft Entra 認証ではなく、オプションの SQL 認証が使用される場合にのみ必要です。 |
Azure ネットワーク帯域幅 | 価格の詳細 | ウォッチャー、ウォッチャーのターゲット、およびウォッチャーのデータ ストアが同じ Azure リージョンにデプロイされている場合、コストは発生しません。 |
*サービス レベル アグリーメントが不要で、無料クラスター容量仕様がクエリのパフォーマンスとストレージの要件を満たしている場合は、無料の Azure Data Explorer クラスターを使用できます。 無料クラスターの試用期間は 1 年間であり、自動的に延長することができます。
監視対象の Azure SQL リソースまたはユーザーごとに料金は発生しないため、データベース ウォッチャーは、より大規模な Azure SQL 環境やより大規模なチーム向けの安価な監視ソリューションになります。
リージョン別の提供状況
現時点では、次の Azure リージョンにデータベース ウォッチャーを作成できます。
Azure 地域 | Azure リージョン |
---|---|
アジア太平洋 | オーストラリア中部 |
アジア太平洋 | オーストラリア東部 |
アジア太平洋 | オーストラリア南東部 |
アジア太平洋 | 西日本 |
アジア太平洋 | 韓国中部 |
アジア太平洋 | 東南アジア |
カナダ | カナダ中部 |
カナダ | カナダ東部 |
ヨーロッパ | ドイツ中西部 |
ヨーロッパ | 北ヨーロッパ |
ヨーロッパ | 英国南部 |
ヨーロッパ | スウェーデン中部 |
ヨーロッパ | 西ヨーロッパ |
米国 | 米国中部 |
米国 | 米国東部 |
米国 | 米国東部 2 |
米国 | 米国中北部 |
米国 | 米国西部 |
ヒント
ある Azure リージョンのウォッチャーは、別のリージョンのターゲットを監視できます。 同様に、ウォッチャーとそのデータ ストアは、異なるリージョンに配置できます。
可能であれば、ウォッチャー、ウォッチャーのターゲット、およびウォッチャーのデータ ストアは同じリージョンに配置してください。 データベース ウォッチャーがリージョンでまだ使用できない場合は、同じ Azure 地域のリージョンを選択してください。 すると、Azure ネットワーク帯域幅のコストを削減できます。
制限
ウォッチャーあたりの SQL ターゲットの数とサブスクリプションあたりのウォッチャーの数には制限があります。 これらの制限を超えるデプロイはサポートされません。
パラメーター | なし |
---|---|
ウォッチャーあたりの SQL ターゲット1 | 100 |
サブスクリプションあたりのウォッチャー数 | 20 |
1データベース、Elastic Pool、または SQL Managed Instance の高可用性レプリカは、その親レプリカとは別に監視され、別のターゲットと見なされます。
Note
プレビューでは、制限は変更されることがあります。
ダッシュボード
データベース ウォッチャーでは、Azure Workbooks を使用して、資産レベルとリソース レベルで監視ダッシュボードを提供します。
資産ダッシュボードのデータベース CPU 使用率ヒートマップの例を次に示します。 各六角形は SQL ターゲットを表します。 論理サーバーは 2 つあり、1 つはデータベースが 6 つあり、1 つはデータベースが 3 つあります。 高可用性セカンダリ レプリカは、別のターゲットとしてヒートマップに表示されます。 画像を選択すると、データ インジェストの統計情報など、追加の詳細が表示されます。
Azure SQL データベース ダッシュボードの [パフォーマンス] タブの部分ビューの例を次に示します。 画像を選択すると細部が拡大します。
次の表には、Azure portal のデータベース ウォッチャー ダッシュボードの機能を記載しています。
機能 | 説明 |
---|---|
資産ダッシュボード | 複数の監視対象リソースの高レベルの監視データを共通ビューで視覚化します。 ヒートマップを使用して、データベース、Elastic Pool、または SQL Managed Instance を消費する上位のリソースを検索します。 上位クエリビューを使用すると、Azure SQL 資産全体でリソースの使用量の上位のクエリを見つけ、CPU、期間、実行数などでクエリをランク付けできます。 サブスクリプション、リソース グループ、リソース名フィルターを使用して、Azure SQL 資産のサブセットにフォーカスします。 特定のリソースの詳細なダッシュボードにドリルスルーします。 |
リソースのダッシュボード | 次のようなデータベース、Elastic Pool、または SQL Managed Instance の詳細な監視データを視覚化します。 - アクティブなセッション - バックアップ履歴 - 一般的なパフォーマンス カウンター - 接続プローブ - データベースとインスタンスのプロパティと構成 - geo レプリケーション - インデックス メタデータ、使用状況の統計情報、警告、および提案 - リソースの使用状況 - セッションと接続の統計情報 - SQL Agent ジョブの状態と履歴 - ストレージの使用量とパフォーマンス - テーブル メタデータ - 上位のクエリ - 待機統計 リソース ドロップダウンを使用すると、あるリソースから別のリソースにすばやく切り替わります。 資産リンクを使用すると、資産ダッシュボードに縮小します。 |
時間の範囲でフィルター | 各ダッシュボードで、目的の期間にフォーカスするように時間の範囲を設定します。 標準またはカスタムの時間範囲を使用します。 "ブラッシング" するか、グラフの上にマウス カーソルをドラッグして、より短い時間の範囲を選択することで、時間の範囲を目的の間隔に絞り込みます。 |
履歴データ | データセットに応じて、ダッシュボードには、選択した期間の概要またはその期間で収集された最新のサンプルが表示されます。 最新のビューと履歴ビューを切り替えて、選択した時間範囲の前のデータ サンプルを確認します。 たとえば、現在アクティブなセッションを見るのではなく、リソース使用量の急増が発生したときに収集された過去のアクティブなセッションのサンプルを確認できます。 |
セカンダリ レプリカ | 資産ダッシュボード上の高可用性 (HA) セカンダリ レプリカなど、すべての種類のレプリカを監視します。 リソース ダッシュボードでプライマリ レプリカとその HA セカンダリ レプリカの表示を切り替えます。 |
Excel へのダウンロード データ | グラフやグリッドからデータを csv ファイルとしてダウンロードし、さらなる分析のために Excel で開くことができます。 |
データ更新 | ダッシュボードを開いたとき、タブを切り替えたときに、監視データ ストアから最新のデータを取得します。ダッシュボードを一定時間開いた後に手動で更新して最新のデータを表示するか、ダッシュボードの自動更新を有効にすることができます。 |
アドホック KQL クエリ | 各ダッシュボードのリンクを使用して、Azure Data Explorer Web UI を開き、KQL を使用して監視データのクエリを実行します。 詳細については、「データセット」および「KQL を使用して監視データを分析する」を参照してください。 |
説明 | [説明の表示] パラメーターを切り替えると、表示されたデータを解釈するのに役立ち、関連するドキュメント リンクが含まれた説明が表示されます。 |
ツールヒント | フィールド上をホバーすると、表示されたデータのさらなる詳細とコンテキストが表示されます。 |
インジェスト統計情報 | [インジェスト統計情報] リンクを使用すると、データセットごとのデータ インジェスト待機時間とその他のインジェスト統計情報が表示されます。 |
ダーク モード | Azure portal の外観をダーク テーマを使用するように切り替えると、データベース ウォッチャー ダッシュボードにダーク モードが使用されるようになります。 |
Note
プレビューでは、ダッシュボードの視覚化と機能は変更されることがあります。
SQL 監視データ
データベース ウォッチャーは、70 を超える SQL カタログ ビューと動的管理ビュー (DMV) から監視データを収集します。 1 つまたは複数の関連ビューのデータがデータセットに変換されます。 たとえば、sys.dm_exec_sessions、sys.dm_exec_requests、その他のビューからのデータは、アクティブ セッション データセットを形成します。 各データセットには、Azure Data Explorer または Real Time Analytics データベースに個別のテーブルがあります。
データベース ウォッチャーには、データベース、Elastic Pool、および SQL Managed Instance の個別のデータセット グループがあります。 各グループには 10 から 30 個のデータセットがあり、Azure SQL リソースのデータベースのパフォーマンス、構成、正常性の詳細なビューが提供されます。
詳細については、「データベース ウォッチャーのデータ収集とデータセット」を参照してください。
ネットワーク接続
データベース ウォッチャーは、ネットワーク経由でターゲット、データ ストア、およびキー コンテナーに接続するリモート データ収集エージェントを使用します。 ネットワーク セキュリティ要件と Azure リソースの構成に応じて、データベース ウォッチャーはプライベート接続またはパブリック接続のいずれかを使用できます。 データベース ウォッチャーから Azure リソースへのネットワーク接続は、常に完全に制御できます。
Azure SQL でのネットワーク接続の詳細については、「Azure SQL データベースの接続アーキテクチャ」と「Azure SQL Managed Instance の接続アーキテクチャ」に関するページを参照してください。
プライベート接続
プライベート接続を提供するために、データベース ウォッチャーは Azure Private Link を使用します。 ウォッチャーを構成するときに、マネージド プライベート エンドポイントを作成して、ウォッチャーが論理サーバー上のデータベースとElastic Pool、または SQL Managed Instance に接続できるようにします。 Azure Data Explorer クラスター用、および SQL 認証情報を格納するキー コンテナー用のプライベート エンドポイントを作成することもできます。 現時点では、Microsoft Fabric の Real Time Analytics への接続でプライベート接続はできません。
リソース所有者は、データベース ウォッチャーが使用する前に、プライベート エンドポイントを承認する必要があります。 逆に、リソース所有者は、任意のデータベース ウォッチャー プライベート エンドポイントをいつでも削除して、データ収集を停止できます。
Azure リソースのプライベート エンドポイントを作成して承認すると、リソースのパブリック接続が有効なままでも、ウォッチャーとリソース間のすべてのネットワーク トラフィックでプライベート接続が使用されます。
Azure SQL のプライベート エンドポイントの詳細については、「Azure SQL データベースの Azure Private Link」と「Azure SQL Managed Instance の Azure Private Link」に関するページを参照してください。
パブリック接続
プライベート接続が必要ない場合、データベース ウォッチャーはパブリック接続を使用して Azure リソースに接続できます。 ウォッチャーが Azure SQL データベース論理サーバー上のデータベースや Elastic Pool に接続できるようにするには、 サーバーへのパブリック アクセスを有効にする必要があり、IP ベースのファイアウォールですべての Azure サービスからの接続を許可する必要があります。
ウォッチャーがパブリック接続を使用して SQL Managed Instanceに接続できるようにするには、インスタンスのパブリック エンドポイントが有効になっている必要があります。 さらに、マネージド インスタンス サブネットへの TCP ポート 3342 上の受信トラフィックを許可するネットワーク セキュリティ グループ (NSG) 規則には、そのソースが AzureCloud
に設定されている必要があります。 詳細については、「Azure SQL Managed Instance でパブリック エンドポイントを構成する」を参照してください。
ウォッチャーがパブリック接続を使用して Azure Data Explorer クラスターまたはキー コンテナーに接続できるようにするには、クラスターまたはコンテナーですべてのネットワークからのネットワークアクセスが有効になっている必要があります。
データ アクセス
ネットワーク接続と同様に、データベースへのデータベース ウォッチャー アクセスを完全に制御できます。 アクセス権を付与するには、論理サーバーと SQL Managed Instance に専用のデータベース ウォッチャー ログインを作成し、SQL システム ビューから監視データを収集するための特定の制限付きアクセス許可を付与します。
ウォッチャー認証
データベース ウォッチャーでは、Microsoft Entra 認証 (旧称 Azure Active Directory 認証) がサポートされています。 これは、ウォッチャーが SQL ターゲットに対して認証するための推奨される好ましい方法です。 監視するすべての論理サーバーと SQL Managed Instanceで、ウォッチャーのマネージド ID の Microsoft Entra 認証ログインを作成します。
データベース ウォッチャーでは、パスワード ベースの SQL 認証もサポートされています。 Azure SQL リソースで Microsoft Entra 認証が有効になっていない場合は、SQL 認証を使用できます。 詳細については、「SQL 認証を使用するための追加の構成」を参照してください。
ウォッチャーの承認
監視データを収集するには、次の表に示すように、データベース ウォッチャーには各監視ターゲットへの特定の制限付きアクセスが必要です。 これらのロールのメンバーシップとアクセス許可により、システム監視データへの必要なアクセス権がウォッチャーに付与されますが、データベース内の他のデータにはアクセスできません。
Azure SQL データベース | Azure SQL Managed Instance |
---|---|
次のすべてのサーバー ロールのメンバーシップ: ##MS_ServerPerformanceStateReader## ##MS_DefinitionReader## ##MS_DatabaseConnector## |
次のサーバー権限:CONNECT SQL CONNECT ANY DATABASE VIEW ANY DATABASE VIEW ANY DEFINITION VIEW SERVER PERFORMANCE STATE msdb データベース内の次のテーブルに対する SELECT アクセス許可:dbo.backupmediafamily dbo.backupmediaset dbo.backupset dbo.suspect_pages dbo.syscategories dbo.sysjobactivity dbo.sysjobhistory dbo.sysjobs dbo.sysjobsteps dbo.sysoperators dbo.syssessions |
重要
ウォッチャーは、Azure SQL リソースに接続すると、保持している SQL アクセス許可を検証します。 付与されたアクセス許可が不十分な場合、または 不要なアクセス許可が付与されている場合、ウォッチャーは切断されます。 この結果、ウォッチャーはシステム監視データを収集できますが、データベース内の他のデータへのアクセス権が誤って付与されることはありません。
SQL ターゲットへのウォッチャー アクセスを構成する場合は、必ず指定されたスクリプトを使用して専用ログインを作成してください。 ウォッチャー ログインまたはユーザーを SQL ロールに追加したり、表に記載されているもの以外の SQL アクセス許可を付与したりしないでください。
データベース ウォッチャーのログインまたはユーザー、あるいはデータベース ウォッチャーのログイン またはメンバーとしてのユーザーを持つロール (public
データベース ロールなど) に必要なアクセス許可を 拒否 した場合、そのデータベース ウォッチャーは監視データを収集しないことがあります。 拒否される権限によっては、一部またはすべてのデータセットに影響する可能性があります。
逆に、データベース ウォッチャーのログインまたはユーザー、あるいはデータベース ウォッチャーのログインまたはメンバーとしてのユーザーを持つロールに不要なアクセス許可を 付与 した場合、データベース ウォッチャーは、一部またはすべてのデータセットに対して監視データを収集しないことがあります。 同様に、データベース ウォッチャーのログインまたはユーザーを、組み込みのサーバーまたはデータベース ロールに追加すると、データが収集されない場合があります。
新機能
このセクションでは、最近のデータベース ウォッチャーの修正、変更、および機能強化について説明します。
期間 | 変更点 |
---|---|
2024 年 11 月 | - オーストラリア中部、オーストラリア南東部、カナダ東部、米国中部、ドイツ中西部、西日本、韓国中部、米国中北部 の Azure リージョンでデータベース ウォッチャーを有効にします。 - ウォッチャーあたりの SQL ターゲット数の制限を 50 から 100 に増やします。 |
2024 年 10 月 | - 無効なテーブル参照を持つビュー、または複数の列チェック制約を持つテーブルがある場合に、Table メタデータ データセットが収集されないバグを修正します。 - ウォッチャー ID としてユーザー割り当て ID を使用するためのサポートを追加します。 詳細については、「ウォッチャー ID の変更」を参照してください。 - SQL 認証を使用する SQL ターゲットを追加するときに、ウォッチャーにキー コンテナー シークレットへのアクセス権を自動的に付与します。 - 既存のウォッチャーにデータ ストアを追加するときに、ウォッチャーに Azure Data Explorer データベースへのアクセス権を自動的に付与します。 - 概要ページおよびその他のページに [フィードバック] ボタンを追加します。 |
2024 年 9 月 | - セッション統計 データセット内のユーザー論理セッション数が、MARS 論理セッションが使用された場合でも、常にユーザー セッションの数と同じであったバグを修正しました。 - Hyperscale Elastic Pool の Elastic Pool ストレージの使用率が正しく報告されないバグを修正しました。 - 特定のデータセットにおいて、ウォッチャーの再起動後に収集された最初のサンプルには、再起動前に既に収集されていたデータが含まれている可能性がある問題を解決しました。 - テーブル メタデータ データセットのタイムアウトを回避するために、コレクション クエリのパフォーマンスを向上させます。 - SQL Managed Instance 上のクエリ ランタイム統計およびクエリ待機統計データセットにおけるコレクションの信頼性が向上しました。 - SQL Managed Instance のデータベース レプリカ データセットにフェールオーバー関連する列を追加しました。 - インデックス操作に関する統計の列を インデックス メタデータ データセットに追加しました。 - [SQL ターゲットの追加] ブレードで複数の Azure SQL データベースを選択するためのサポートを追加しました。 |
2024 年 8 月 | - 米国中部、米国東部 2、北ヨーロッパ、およびスウェーデン中部 Azure リージョンのデータベース ウォッチャーを有効にします。 - 資産ダッシュボードにサブスクリプションとリソース グループ フィルターを追加しました。 |
2024 年 7 月 | - パフォーマンス カウンター データセットが、大文字と小文字を区別するカタログ照合順序を持つデータベース、または大文字と小文字を区別するデータベース照合順序を持つマネージド インスタンスから収集されなかったバグを修正しました。 - SQL メタデータ内のデータベース名の大文字と小文字が Azure Resource Manager (ARM) メタデータのデータベース名と異なる場合に、データが収集されなかったバグを修正しました。 - クエリ ランタイム統計および Query 待機統計データセットが、大量の新しいクエリとクエリ プランがクエリ ストア テーブルに挿入されたデータベースで収集されなかったバグを修正しました。 - Geo レプリカ および レプリカ データセットが Hyperscale データベースから収集されなかった問題を解決しました。 - subscription_id と resource_group_name の共通列 をすべてのデータセットに追加しました。 一度、ウォッチャーの再起動が必要です。- resource_id 共通列をすべてのデータセットに追加します。 2024 年 7 月以降に追加された SQL ターゲットのデータが表示されます。 既存の SQL ターゲットのデータを表示するには、ターゲットを削除して再度追加し、Watcher を再起動します。 |
2024 年 6 月 | - Bicep または ARM テンプレートを使用して追加された一部の SQL ターゲットからデータが収集されなかったバグを修正しました。 - 一部の Azure SQL データベースでバックアップ履歴データセットが収集されなかったバグを修正しました。 - インスタンスに Managed Instance リンクを使用するデータベースがある場合に、マネージド インスタンスのレプリカの種類が geo レプリケーション フォワーダーとして誤って決定されるバグを修正しました。 同じバグにより、この場合、クエリ ランタイム統計とクエリ待機統計データセットが収集されません。 - ユーザーが SQL ターゲットのサブスクリプションにアクセス権がない場合、またはサブスクリプションが削除されている場合に、Azure portal の [SQL ターゲット] ブレードでターゲットの読み込みに失敗するエラーの原因となったバグを修正しました。 - Azure portal でウォッチャーを作成するときに既定で作成された Azure Data Explorer データベースのリテンション期間とキャッシュ期間がそれぞれ 365 日と 31 日ではなく無制限に設定されていたバグを修正しました。 - マネージド プライベート エンドポイントの作成や削除などの特定の管理操作が失敗しても、Azure portal で成功として報告されるバグを修正しました。 - SQL 論理サーバーに 1,000 を超えるデータベースが 含まれている場合、SQL データベースターゲットに対して、ドロップダウン内のデータベースの一覧が不完全であったバグを修正しました。 - データ ストアとして Azure Data Explorer データベースを選択すると、同じリソース グループ内の別のウォッチャーがこのデータベースに対して持っていたアクセス権が削除されるバグを修正しました。 - Azure portal でウォッチャー ARM テンプレートのエクスポートを有効にします。 - Microsoft.Network リソース プロバイダーがウォッチャー用に選択されたサブスクリプションに登録されていない場合に、ウォッチャーの作成時に警告を追加しました。 - リソース スコープに削除ロックがあるためにウォッチャーまたはマネージド プライベート エンドポイントの削除が失敗した場合に、詳細なエラーを追加しました。 |
2024 年 4 月 | - オーストラリア東部と英国南部の Azure リージョンでデータベース ウォッチャーを有効にします。 - 同じウォッチャーに対して複数のプライベート エンドポイントが短時間で追加された場合に、マネージド プライベート エンドポイントを追加できない問題を修正します。 - 完全バックアップを含むように、SQL データベースのバックアップ履歴データセットを修正します。 - インデックス メタデータ、クエリ実行時間統計、クエリ待機統計、テーブル メタデータ のデータセットのタイムアウトを回避するために、コレクション クエリのパフォーマンスを向上させます。 - データベースがバックアップから復元された後に特定のデータセットのデータが収集されなかったバグを修正します。 - インデックスに 多くのキーまたは含まれる列がある場合、またはこれらの列の名前が長い場合に、インデックス メタデータのデータセットが収集されなかったバグを修正します。 - SOS スケジューラ データセットを追加します。 - [上位クエリ] ダッシュボードから選択したクエリ プランをダウンロードするボタンを追加します。 - Bicep または ARM テンプレートを使用してウォッチャーを作成および構成するためのクイック スタート サンプル を追加します。 |
制限事項
このセクションでは、データベース ウォッチャーの制限事項について説明します。 利用できる場合は回避策を提示します。
制限事項 | 回避策 |
---|---|
Dev/test や Extra small などのより小規模な Azure Data Explorer SKU を使用している場合、一部のダッシュボード クエリは、"調整のために中止されました" というエラーで断続的に実行に失敗する可能性があります。 | ダッシュボードをリロードするか、Azure Data Explorer クラスターを次の上位 SKU にスケールアップします。 |
Azure portal でデータベース ウォッチャー UI から無料の Azure Data Explorer クラスターを作成した場合、Azure Data Explorer Web UI でクラスターにアクセスしようとすると、"クラスターに接続できませんでした。403-Forbidden" というエラーが発生する可能性があります。 | この問題は、https://aka.ms/kustofreeを使用して無料のクラスターを作成する場合には発生しません。 Azure portal から無料クラスターを既に作成している場合は、次の手順に従ってください。 Azure Data Explorer Web UI で、メイン バーにあるプロフィール名を選択してアカウント マネージャーを開き、[ディレクトリの切り替え] を選択します。 Microsoft アカウント以外のディレクトリを選択し、[切り替え] を選択します。 これで、作成した無料の Azure Data Explorer クラスターが表示されます。 または、編集 (鉛筆) ボタンを使用して Azure Data Explorer Web UI でクラスター接続を編集し、同様にディレクトリを切り替えることができます。 |
データベース、Elastic Pool、または SQL Managed Instance の CPU 使用量が 100% 近くで維持される場合は、残りの CPU リソースがデータベース ウォッチャー データ収集クエリに対して不十分となり、収集されたデータに抜けが生じる可能性があります。 | データベース、Elastic Pool、または SQL Managed Instance による高い CPU 使用率に関連するデータの抜けが見られた場合は、信頼性の高い監視ができるように、アプリケーション ワークロードをチューニングして CPU 消費量を減らすか、仮想コアまたは DTU の数を増やすことを検討してください。 |
既知の問題
プレビューでは、データベース ウォッチャーには次の既知の問題があります。
問題点 | 軽減策または回避策 |
---|---|
エラー (たとえば、SQL ターゲットやデータ ストアへのアクセス権が不十分) のためにデータ収集を開始または続行できない場合、エラーが表示されません。 | トラブルシューティングを行うには、「データが収集されない」を参照してください。 |
サーバーレス データベースで自動一時停止が有効になっていて、データベース ウォッチャー ターゲットとして追加されている場合は、想定どおりに自動一時停止されない場合があります。 無料オファー データベースでは、この結果、毎月の無料クレジットが想定よりも早く使い果たされる場合があります。 | 自動一時停止機能を保持する必要がある場合は、現時点ではサーバーレス データベースを監視するのにデータベース ウォッチャーを使用しないでください。 |
Azure SQL Managed Instance で、読み取り可能な高可用性レプリカから、または SQL 認証を使用している場合は geo レプリカからデータが収集されません。 | 回避策は 2 つあります。 1. Microsoft Entra ID 認証 (推奨) を使用します。 2. パスワード ポリシー チェックを無効にします。 ALTER LOGIN [database-watcher-login-placeholder] WITH CHECK_POLICY = OFF; を実行し、database-watcher-login-placeholder をウォッチャーの SQL 認証ログインの名前に置き換えます。 プライマリ レプリカと、ある場合は geo レプリカで、このコマンドを実行します。 |
Azure SQL Managed Instance では、sys.xp_msver システム ストアド プロシージャに対する EXECUTE アクセス許可が取り消されたか、public ロールに対して拒否された場合、データは収集されません。 |
EXECUTE での sys.xp_msver アクセス許可を Database Watcher のログインに対して許可します。Database Watcher のターゲットとして追加されたすべての SQL Managed Instance で、 USE master; CREATE USER [database-watcher-login-placeholder] FOR LOGIN [database-watcher-login-placeholder]; GRANT EXECUTE ON sys.xp_msver TO [database-watcher-login-placeholder]; を実行して、database-watcher-login-placeholder をDatabase Watcher のログインの名前に置き換えます。 |
停止している SQL マネージド インスタンスに接続するためにウォッチャーのマネージド プライベート エンドポイントを作成するときに、プライベート エンドポイントのプロビジョニング状態は "失敗" と報告され、ウォッチャーをインスタンスに接続できません。 | [失敗] のプロビジョニング状態のマネージド プライベート エンドポイントを削除して、SQL マネージド インスタンスを開始します。 障害が発生したプライベート エンドポイントが削除され、インスタンスが実行されたら、マネージド プライベート エンドポイントを再び作成します。 |
データ ストアとして Real Time Analytics のデータベースを使用し、OneLake 可用性オプションが有効になっている場合に、データが収集されません。 | OneLake 可用性オプションを無効にし、ウォッチャーを再起動してデータ収集を再開します。 |
Bicep または ARM テンプレートを介した Database Watcher のデプロイは羃等ではありません。 ウォッチャー、SQL ターゲット、マネージド プライベート エンドポイントが既に存在する場合、デプロイは失敗します。 | 条件付きデプロイを使用して、既存のリソースのデプロイをスキップします。 詳細については、「if 式を使用した Bicep での条件付きデプロイ」および「ARM テンプレートでの条件付きデプロイ」を参照してください。 |
Azure SQL Database の既知の問題により、データベース カタログの照合順序が既定の SQL_Latin1_General_CP1_CI_AS 以外の場合、Azure SQL データベースのバックアップ履歴データセットのデータは収集されません。 |
"現時点ではありません。" |
トラブルシューティング
このセクションでは、一般的な問題を解決するために実行できる手順について説明します。 このセクションの手順で問題が解決しない場合は、サポート ケースを開いてください。
データが収集されない
新しいウォッチャーを作成しても、ダッシュボードやデータ ストアに監視データが表示されない場合、または古いデータのみが表示される場合は、このセクションを参照してください。
ウォッチャーの [概要] ページで、ウォッチャーが実行されているかどうか [状態] フィールドをチェックします。 実行されていない場合は、同じページの [開始] ボタンを使用してデータ収集を開始します。 新しいウォッチャーは自動的には開始されません。
ウォッチャーに データ ストアへのアクセス権 があることを確認します。
データ ストアとして Azure Data Explorer データベースを使用する場合は、Azure Data Explorer クラスターが開始されていることをチェックします。 詳細については、「停止状態のAzure Data Explorer クラスター」を参照してください。
ウォッチャーに、特定の、制限付きの SQL ターゲットへのアクセス権 があることを確認します。 さらに、任意のターゲットに対して SQL 認証を使用する場合は、ウォッチャーのキー コンテナーへのアクセス権を確認するか、推奨される Microsoft Entra 認証を代わりに使用します。
ウォッチャーが Microsoft Entra 認証を使用して SQL ターゲットに接続する場合は、データベース ターゲットおよび Elastic Pool ターゲットをホストしている論理サーバーとマネージド インスタンス ターゲットで Microsoft Entra 認証が有効になっていることを確認します。
ウォッチャー用のプライベート エンドポイントを作成した場合は、それがリソース所有者によって承認されていることを確認します。
パブリック接続を使用している場合は、ウォッチャーがターゲット、データ ストア、およびキー コンテナーに接続できるようにするための要件が満たされていることを確認します。
Azure Data Explorer クラスターまたはデータベース、または Real Time Analytics データベースは、ウォッチャー用のデータ ストアとして選択された後に削除されている可能性があります。 クラスターとデータベースに移動し、それらが存在することを確認します。
無料の Azure Data Explorer クラスターを使用している場合は、クラスターのストレージ容量に達していないことを確認してください。 詳細については、「無料の Azure Data Explorer クラスター」を参照してください。
トラブルシューティングの一環としてウォッチャーのアクセス権または接続に変更を加えた場合は、変更を有効にするためにウォッチャーを停止して再起動することが必要になる場合があります。
ダッシュボードが空白です
ウォッチャーの [ダッシュボード] ページを選択しても、ページに SQL ターゲットの概要が表示されない場合は、[データ ストア] セクションを開きます。 「接続できません...」エラーが表示される場合は、このセクションを確認してください。
データ ストアへのアクセス権がない場合があります。 詳細については、「データ ストアへのアクセス権をユーザーやグループに与える」を参照してください。
データ ストアへのネットワーク接続がない可能性があります。 たとえば、ブラウザーから Azure Data Explorer クラスターへの接続でパブリック接続を使用しているが、クラスターへのパブリック アクセスができない場合に発生します。 その場合は、Kustoエクスプローラーまたは Azure Data Explorer Web UI からクラスターに接続することもできません。
これを解決するには、データ ストアへのプライベート接続に書かれている、マシンから Azure Data Explorer クラスターへのプライベート接続を確立します。
アクセス権があり、データ ストアに接続できること、およびデータ ストア データベースが存在することを検証するには、次の手順に従います:
ウォッチャーの [ダッシュボード] ページで、[データ ストア] セクションを展開し、Kusto クエリ URI の値をコピーします。 URI 文字列全体を確実にコピーしてください。 Kusto データベース の値も書き留めます。
Azure Data Explorer Web UI を開きます。 求められた場合は、サインインします。
[追加]、[接続] の順に選択し、コピーした URI を [接続 URI] として入力します。
[追加] を選択して、新しい接続を作成します。
新しい接続エントリが追加されたら、展開してデータベースを表示します。
ウォッチャーの [ダッシュボード] ページで [Kusto データベース] として参照されているデータベースを選択し、タブ バーの + サインオンを選択して、このデータベースに接続されている新しいクエリ タブを開きます。
次の KQL コマンドを実行します:
.show database principals;
ユーザー アカウントまたはユーザー アカウントを含む Microsoft Entra ID グループに対して、閲覧者 以上の特権ロールの行が存在することを確認します。
フィードバックを送信する
マイクロソフトのデータベース ウォッチャー チームは、コメントと提案を受け付けています。 製品フィードバックは、次のいずれかの方法で送信できます。
- SQL フィードバック フォーラムに新しいアイデアを投稿する。 [新しいアイデアの投稿] ページで、フォーラムに SQL を使用し、Azure SQL グループを選択し、タイトルに「データベース ウォッチャー」を入れます。 フィードバック フォーラムで送信したフィードバックは公開されます。 他のコミュニティ メンバーは、あなたのアイデアや提案に賛成票を投じたり、コメントしたりすることができます。 コミュニティの投票とコメントは、データベース ウォッチャー チームが製品の改善を計画し、優先順位を付けるのに役立ちます。
- Azure portal のデータベース ウォッチャー ページの 1 つにある [フィードバック] ボタンを使用する。 たとえば、ウォッチャーの概要ページ、または更新ボタンの横のダッシュボードに [フィードバック] ボタンがあります。 この方法で送信したフィードバックは公開されません。 フィードバックを送信するときに、オプションで、マイクロソフトがフォローアップと明確化のためにこのフィードバックに関する電子メールを送信できるようにすることができます。
データベース ウォッチャーの問題を解決するテクニカル サポートまたはヘルプについては、サポート ケースを開いてください。