|dcm|のモニターとトラブルシューティング¶
このトピックでは、DCMのデプロイメントをモニターし、失敗したDCMプランのトラブルシューティングを行う方法について説明します。
|dcm-object|のトラブルシューティング¶
|dcm-object|に不慣れな場合、設定ミスやその他の一般的な落とし穴からエラーが発生する可能性があります。このセクションでは、これらのエラーとその解決方法について説明します。
エラーの一般的な原因¶
次の表に、|dcm-object|の実行におけるエラーの一般的な原因を示します。
エラーカテゴリ |
一般的な原因 |
|---|---|
セカンダリロール |
|
不十分なロール権限 |
|
Jinjaのレンダリングの問題 |
|
プロジェクトの問題 |
|
推奨されるトラブルシューティングステップ¶
|dcm-object|のトラブルシューティングとデバッグを行うには、次の手順に従ってください。
ステップ |
詳細 |
|---|---|
セカンダリロールをなしに設定する |
|
PLANのエラーメッセージを使用する |
|
絞り込み |
|
クライアントの変更 |
|
AI支援のデバッグとしてCortex Codeを使用する |
|
|dcm-object|のデプロイメントのモニターと監査¶
|dcm|は、アカウントインフラストラクチャへのすべての変更に対する完全な透過性と監査トレースを提供するように設計されています。これには、インフラストラクチャのデプロイメントプロセスを設定するための、ソフトウェア開発のいくつかのベストプラクティスに従う必要があります。詳細については、 |dcm-object|デプロイの自動化 をご参照ください。
以下のソースを使用して、以前のデプロイメントを確認します。
|dcm-object|内に格納された:ref:
label-dcm_projects_deployment_artifacts|dcm-object|からの:ref:`label-dcm_projects_event_logging`(ログレベルの設定による)
デプロイメントアーティファクト¶
実行されたすべてのデプロイメントに対して、デプロイメントアーティファクトの不変スナップショットが次の情報とともに|dcm-object|内に保存されます。
マニフェストファイル(
manifest.yml)sources`フォルダ内のすべてのオブジェクト定義とマクロファイル(:file:.sql`ファイル)PLAN操作(
plan_result.json)およびDEPLOY操作(deploy_result.json)の出力。以下を含みます。このデプロイメントで使用されるテンプレート変数
タイムスタンプ、オブジェクト名、クエリIDなどのデプロイメントメタデータ
変更セット
この完全なセットにより、定義された状態のデバッグ、監査、または再デプロイのために、すべてのデプロイメントアクションを再現できるようになります。
次のコマンドは、|dcm-object|の監視と監査に使用できます。
MONITOR権限により、次を実行できます。
|dcm-object|内に格納されているすべてのデプロイメントをリストする。
指定されたデプロイメント内のすべてのファイルをリストする。
そのデプロイメント内の特定のファイルを読み取り、コピー、またはダウンロードする。
OWNERSHIP権限により、機密データが含まれている場合は手動でデプロイメントをドロップできます。
READ権限により、DESCRIBEコマンドを実行して、選択した|dcm-object|の最新のデプロイメント名、エイリアス、およびタイムスタンプを表示できます。
コマンドの例:
デプロイ履歴¶
INFORMATION_SCHEMA関数は、ロールベースのアクセスと低レイテンシの方法を提供し、選択した|dcm-object|の成功したデプロイメントと失敗したデプロイメントを確認できるようにします。
引数``project_name``および``result_limit``はオプションです。
コマンドの例:
イベントログ¶
|dcm-object|オブジェクトに優先するLOG_LEVELを設定するか、親スキーマ、データベース、またはアカウントから定義済みのLOG_LEVELを継承できます。
|dcm-object|のLOG_LEVELが設定されている場合、失敗したPLANおよびDEPLOYの実行は対応するエラーメッセージとともにイベントとしてログに記録され、定義されたイベントテーブルをクエリすることでそれらを確認できます。イベントテーブルとログレベルの設定について詳しくは、:doc:`/developer-guide/logging-tracing/event-table-setting-up`を参照してください。
例:
ナビゲーションメニューで Monitoring » Traces & logs を選択します。
Logs タブを選択します。
適切なイベントテーブルを選択します。
プロジェクトの親データベースまたはスキーマでフィルタリングします。