CMDB Query BuilderIssue CMDB クエリビルダーを使用すると、複数の CMDB クラスにまたがり、さまざまな関係で接続されている多くの CI が関与する、複雑なインフラストラクチャおよびサービスクエリを簡単にビルドできます。 ユーザーは、左側のメニューで「CMDB クエリビルダー」を検索することで、クエリビルダーにアクセスできます。このモジュールは、CI 名のマルチレベルの関係をエクスポートできます。これは UI のみの機能であり、モバイルインターフェイスはありません。スケジュールを作成し、クエリ結果をメールレポートで受信する機能があります。この機能をサポートする REST API は公開されていません。この機能は、ドメインセパレーションされた CMDB をサポートしています。すべての結果は、システムの ACL ルールに従ってユーザーに表示されます。CMDB クエリビルダーには、クエリに含める CI クラスとその他のアーティファクトをドラッグするキャンバスが用意されています。それから、CI クラス間に関係、AND/OR 演算子を追加し、クエリ対象の関係プロパティを定義します。 保存されたクエリを使用して、CMDB グループに CI を追加すると、スクリプト可能な API を使用して CI リストを取得し、グループ内のすべての CI にアクションを一括して適用できます。CMDB クエリとサービスマッピングクエリの 2 つのクエリタイプがあり、これらを組み合わせてクエリを作成できます。Related LinksFAQ1.クエリの処理に時間がかかりすぎる場合、どのようにデバッグすればよいですか? システムプロパティ「glide.cmdb.logger.use_syslog.QueryBuilderProcessor' を値 - * を指定して実行すると、詳細なデバッグをオンにして、何が起こったのかを判断できます。処理時間とエラーメッセージは、ソース名 QueryBuilderProcessor でログに記録されます。既定では、クエリ バッチごとに処理に 5 分間のタイムアウトがあります。 2.この機能で使用できるシステムプロパティは何ですか?https://docs.servicenow.com/csh?topicname=cmdb-querybldr-sysproprties.html&version=latest3.クエリの「開始ノード」の重要性は何ですか?なぜ私は時々1つを選ぶように促されるのですか? 背景が灰色のノードは、「開始ノード」を示します。これは、クエリを開始するノードです。デフォルトでは、キャンバスにドロップされる最初のノードが開始ノードです。 クエリグラフには開始ノードを 1 つだけ含めることができます。このノードはオペレーターの共通側にある必要があり、可能であれば、着信接続を持たせないでください。開始ノードがオペレーターの複数の辺にあるか、着信直線接続がある場所にグラフが描画された場合、ユーザーは新しい開始ノードを選択するように求められます。 4.2 つのクラス間で提案された関係のドロップダウンはどのように定義されますか?2つのクラス間に新しい関係を追加したばかりなのに、なぜその関係タイプがオプションとして表示されないのですか? 提案された関係は、有効な結果を返すクエリを作成する際にユーザーをガイドするために追加されます。CI 関係テーブルは、スケジュールに基づいて (30 分ごとに) 解析され、クラスの各ペア間の既存の関係タイプのリストが作成されます。結果はcmdb_class_relationshipsテーブルに保存されます。新しく作成された関係タイプが表示されるまで 30 分待ちたくない場合は、cmdb_class_relationshipsテーブルのエントリを削除できます。クエリビルダー UI を再度ロードすると更新されます。 5.サービスクエリの提案された関係が表示されないのはなぜですか? サービスマップでは、ユーザーはサービス間の正確な関係タイプを表示できません。そのため、ユーザーは要素間の正確な関係タイプを常に認識できるとは限りません。 6.一部のクエリでは、「クエリの実行中に問題が発生しました。エッジの解析中にエラーが発生しました。なぜ? クエリエンジンは、演算子を使用してファンアウトまたはファンインするクエリを解析できます。オペレーターの複数の側のノードを共有する 2 つのオペレーターを含むクエリーは、このリリースではサポートされていません。有効なクエリと無効なクエリの例を次に示します。 7.サポートされていない他の種類のクエリはありますか? ループのあるクエリはサポートされていません。サービスクエリを作成するには、サービスマッピングプラグインが必要ですか?はい。サービスクエリは、サービスマッピングサービスマップでのみ機能します。 8. サービスマッピングクエリで接続線が点線になっているのはなぜですか? サービスでは、要素間のレベル 1 の関係だけを見るわけではありません。サービスの境界がわかっているので、要素が接続されているかどうかを調べるために n レベルの関係を探し続けます。これが線が点線になっている理由です。 9.クエリ結果をエクスポートすると、ファイルはCSV形式になります。結果を他の形式でエクスポートできますか? いいえ (エクスポート用の CSV 形式のみ)。 10.この機能にはどのようなアクセス制御がありますか? この機能にアクセスするには、ユーザーにcmdb_query_builderロールが必要です。 11.クエリのCMDB_CIクラスを削除することはできますか? はい、しかし、そうしないことをお勧めします。親 cmdb_ci クラスのクエリは、実行に時間がかかります。 12.クエリの追加ログ記録を有効にするにはどうすればよいですか? 詳細なログ記録をオンにできるシステムプロパティがあります。 ログソースは QueryBuilderProcessor と QueryBuilderOutput です名前:glide.cmdb.logger.use_syslog。QueryBuilderProcessor。価値-*名前:glide.cmdb.logger.use_syslog。QueryBuilderOutput です。価値-* 13.CMDB クエリの使用時に ACL は優先されますか? はい、例えば、そうです。「Xyz」と同じ新しいテストクエリを作成し、Nameという列を追加すると、正常に機能するはずです。 列を追加すると、テストクエリ「Xyz」は結果を表示する代わりに「クエリの実行中に問題が発生しました」をスローします。したがって、問題は、ユーザーが関連するクラスのフィールドの参照テーブルにアクセスする権限を持っていないことです。 問題の原因となった列を絞り込み、結果に列を追加するか、クエリから列を削除して機能させる場合は、ACL を修正します。スタックトレースから、テーブル参照を読み取るときに例外が発生することもわかります。ベストプラクティスは、結果に表示する必要がある列のみを追加することです。