コンテンツ バリデータは LookML で Looker コンテンツで参照されているモデル、Explore、フィールド名を検索します。これは LookML 参照を検証したり、変更を加えた後に LookML でエラーを修正したり、プロジェクト全体で LookML 要素の名前を更新したりするときに非常に便利なツールです。
コンテンツ バリデータを使用するには、develop
権限が必要です。
コンテンツ バリデータを開くには、[Develop] メニューから [Content Validator] を選択します。
ここから、次の 2 つの方法でコンテンツ バリデータを使用できます。
- [検証] ボタンをクリックして、LookML モデルの変更に起因するエラーを検出して修正します。
- [Find &Replace in All Content] ボタンをクリックすると、エラーがあるかどうかにかかわらず、Looker のコンテンツ全体でモデル、Explore、フィールド名を検索して置換できます。
コンテンツ バリデータを使用する前に
コンテンツ検証を使用して変更を加える場合は、特に注意が必要です。コンテンツ バリデータには元に戻す機能がなく、こちらの Explore のほか、多くの Look やダッシュボードに影響する可能性があります。間違えた場合は、できるだけ早く修正して、影響のある Look を特定しやすくするために変更してください。
また、コンテンツ バリデータを使用するタイミングも考慮してください。開発変更を本番環境に push するときは、影響を受ける Look とタイルをほぼ同時に修正して、最小限の時間で壊れるようにする必要があります。Look とタイルを修正したタイミングが早すぎると、開発モードでの作業に基づいてそれらを push するまでユーザーに表示されなくなります。同様に、変更のプッシュまで Look とタイルの修正を遅らせると、修正するまで Look とタイルがユーザーに表示されます。
コンテンツ バリデータを使用してダッシュボードでフィルタとして機能するフィールド名を変更した場合は、ダッシュボードのスケジュールの [フィルタ] セクションを確認し、必要に応じてフィルタを更新して変更を反映します。スケジュールされたダッシュボードの配信に、機能しなくなったフィルタが含まれている場合(たとえば、参照先のフィールドが変更された場合)、スケジュールされた配信は失敗し、スケジュールの所有者はフィルタが無効であるというエラー メッセージを受け取ります。
コンテンツ バリデータはマージされた結果のダッシュボード タイルで使用されている Explore に変更を加える際に、コンテンツ バリデータを使用する際に注意する必要があります。コンテンツ バリデータにより、マージされた結果タイルに含まれるすべての Explore に変更が適用されるためです。たとえば、コンテンツ バリデータを使用して、マージされた結果タイルに含まれる 1 つの Explore に含まれるモデル名を変更するには、マージされた結果に含まれるすべての Explore 内でモデル名を変更する必要があります。
コンテンツ バリデータを使用してエラーを修正する
コンテンツ バリデータは、LookML の変更に起因するエラーを検出して修正するうえで役立つツールです。たとえば、フィールド名を customer
から user
に変更すると、customer
フィールドを含む Look またはダッシュボード タイルは機能しなくなります(alias
パラメータを使用した場合を除く)。コンテンツ バリデータは customer
フィールドへの参照を一覧表示し、エラーを修正する簡単な方法も提示します。
コンテンツ バリデータを実行すると、Look とダッシュボードから LookML のモデル、Explore、ビュー、フィールドが参照されるすべてのものが検証され、コンテンツで不明な LookML オブジェクトを参照している場合はエラーが表示されます。
コンテンツ バリデータでは、次のエラーは表示されません。
develop
権限のないコンテンツ。コンテンツ 検証ツールのスコープは自分の権限に設定されているため、コンテンツ バリデータはdevelop
権限(Looker IDE で表示可能なモデル)を持つコンテンツでのみ使用できます。モデルの権限については、ロールのドキュメントをご覧ください。- 削除済みのファイルが [ゴミ箱] にある削除された Look を検証するには、Looker 管理者がまず Look を復元する必要があります。
コンテンツ バリデータを実行する
先に進む前に、コンテンツ バリデータを使用する前にのセクションをご確認ください。コンテンツ バリデータは Looker コンテンツの多くの部分に影響を与える可能性があるため、事前に計画して検討することが重要です。
LookML をコンテンツ バリデータで検証するには:
- [検証] ボタンをクリックします。
- [グループ条件] タブをクリックして、エラーのグループ化方法を変更します。
- エラー: 各エラーを一覧表示し、エラーのある Looker コンテンツをグループ化します。これは、複数のコンテンツで同じエラーを一度に修正する場合に便利です。
- フォルダ: 各フォルダの一覧を表示し、エラーのある Looker コンテンツをグループ化します。これは、特定のフォルダのエラーのみを修正する場合に便利です。
- コンテンツ: エラーのあるコンテンツの一覧を作成し、エラーをグループ化します。これは、1 つの Look、タイル、フィルタなどのエラーをすべて修正する場合に便利です。
- 開発モードを使用している場合、Look とタイルを変更することの影響を理解することが重要です。破壊的な変更を有効にする前に修正した場合は、修正が早すぎる期間があるため、ユーザーに Look やタイルの破損が発生することがあります。Looker には、このことを思い出せるように警告メッセージが用意されています。
- エラーテーブルには、エラーとともに、エラーを含む Look とタイルのリスト、エラーを生成している基盤となるモデル、Explore が表示されます。ページの右上にある [グループ条件] タブを使用すると、エラーテーブルのレイアウトを変更できます。
- Looker では、エラーの種類に応じて各行の [置換] ボタンや [削除] ボタン、あるいはその両方が用意されています。これらのボタンは、エラーを修正するための機能を提供します。詳細については下記をご覧ください。
コンテンツ検証の結果の表示
コンテンツ検証の結果には、存在しない、または見つからないモデル名、Explore 名、ビュー名、フィールド名を使用する Looker コンテンツが表示されます。コンテンツ バリデータで検証および検証可能な LookML 要素について詳しくは、コンテンツ バリデータを使用してエラーを修正するをご覧ください。
コンテンツ名の横にあるアイコンは、コンテンツの種類を示しています。
- - ダッシュボード タイル
- - ダッシュボード アラート
- - ダッシュボードまたは Look をスケジュールします。
- - ダッシュボードのフィルタ、またはダッシュボード フィルタをリッスンするタイル内のフィールドのフィルタ(ダッシュボード フィルタをリッスンするタイルの構成については、ユーザー定義のダッシュボード フィルタの追加と編集に関するドキュメントをご覧ください)
検証結果は、バリデータを実行したモードで使用可能な LookML に基づきます。本番環境モードの場合、検証結果には、本番環境に push されたすべての LookML が反映されます。開発モードを使用している場合、本番環境に push されていない場合でも、保存済みの LookML が検証結果に反映されます。
LookML の意図的な変更か、タイプミスか結合の欠如がエラーの原因である可能性があります。
エラーを調整するには、エラーテーブルの各行のボタンを使用します。
Looker では、各エラーに [Replace] ボタンが用意されています(名前をコンテンツ バリデータに置き換える方法については、以下のフィールド、ビュー、Explore、モデルの名前を置き換えるをご覧ください)。Look またはタイルの [Data] セクションでフィールド名のエラーがあると、[Remove] ボタンも表示されます(コンテンツ バリデータを使用して名前を削除する方法については、後述のフィールド名を削除するをご覧ください)。
[グループ条件] の設定に応じて、ボタンは単一のアイテム(Look またはタイル)または複数のアイテムに適用されます。
- [Error] でグループ化した場合、Looker インスタンスのすべての Look とタイルで、そのエラーのすべての発生に対してボタンが適用されるため、1 回の操作ですべての発生回数を修正できます。
- [フォルダ] または [コンテンツ] でグループ化した場合、これらのボタンは 1 つの Look またはタイル内で 1 回発生するため、エラーの出現を個別に考慮できます。
この例では、テーブルがエラーでグループ化されているため、ボタンはそのエラーのすべてのインスタンスに影響します。
この例では、テーブルがコンテンツ別にグループ化されているため、ボタンは単一のコンテンツに関するエラーの 1 つのインスタンスにのみ影響します。
さらに、コンテンツでグループ分けする場合は、Look を削除するための追加のオプションがあります。
フィールド、ビュー、Explore、モデルの名前の置き換え
コンテンツ検証の結果には、次のタイプの要素の [置換] ボタンが表示されます。これにより、それらの名前を変更できます。
- Look およびダッシュボード タイル内のモデル名
- Look およびダッシュボード タイルの名前を調べる
- カスタム フィルタまたは表計算で名前を表示します。
- Look およびダッシュボード タイル内の名前の表示
- フィールド名:
- Look の [データ] セクション
- クエリベースのダッシュボード タイル内
- 表計算で参照
- カスタム フィルタで参照
- カスタム フィールドで参照
- 縦棒グラフの [Series] タブの [Customizations] など、ビジュアリゼーション設定の参照
type: field
の以前のダッシュボード フィルタで参照](/dashboards/adding-filters-to-user-dashboards#adding_dashboard_filters_a_user_can_change)- ダッシュボード タイルをリッスンしてダッシュボード フィルタをリッスンします(これは、フィルタ設定ウィンドウの [Tiles to Update] タブで構成します。詳しくは、ユーザー定義のダッシュボード フィルタの追加と編集をご覧ください)。
エラーがある場合は、コンテンツ バリデータを使用して、エラーが発生している属性と等しい(または一般的)コンテンツの属性を置き換えることができます。
- フィールドにエラーがある場合、フィールドを置き換えるか、削除できます。また、ビュー、Explore、モデル名を置き換えることもできます。
- Explore の名前にエラーがある場合、Explore の名前またはモデルの名前を置き換えることができます。
- モデル名にエラーがある場合は、モデル名を置き換えることができます。
コンテンツ バリデータを使用してモデル内の要素の名前を置換する方法を次に示します。
- [検証] をクリックして、コンテンツ バリデータを実行します。
- [グループ条件] の設定をクリックして、エラーのグループ化方法を選択します。この例では、[エラー] でグループ化することにより、複数の商品を同時に調整できます。
エラーテーブルで、修正するエラーの横にある [置換] ボタンをクリックします。
ダイアログで、変更する LookML 要素のタイプを選択します(フィールド、ビュー、Explore、モデル)。Looker により、エラーごとに適切なオプションが表示されます。
交換するアイテムの名前を確認します。コンテンツ バリデータでは自動的に入力されます。
アイテムの新しい名前を入力します。
[エラー] で分類し、問題の影響を受けている項目が複数ある場合は、[コンテンツを表示] をクリックして、コンテンツ バリデータで更新する項目のリストを表示します。
必要に応じて、リスト内のアイテムの横にあるチェックボックスをオフにすると、名前は変更されません。
[置換] ボタンをクリックして変更を行います。
フィールド名の削除
Look またはタイルの [Data] セクションでフィールド名のエラーが表示される場合、エラーの表にはエラーの右側の [Remove] ボタンが表示されます。コンテンツ バリデータは次のようなフィールドを削除できます。
- Look またはダッシュボード タイルの [データ] セクション
- 縦棒グラフの [Series] タブの [Customizations] など、ビジュアリゼーション設定の参照
- ダッシュボード タイルをリッスンしてダッシュボード フィルタをリッスンします(これは、フィルタ設定ウィンドウの [Tiles to Update] タブで構成します。詳しくは、ユーザー定義のダッシュボード フィルタの追加と編集をご覧ください)。
コンテンツ バリデータを使用してカスタム フィルタ、カスタム フィールド、表計算からフィールドを削除することはできません。通常は、式が機能し続けるように追加の変更が必要になるためです。代わりに、コンテンツ検証エラー メッセージを使用して、カスタム フィルタ、カスタム フィールド、表計算式を修正する場所を見つけて、必要に応じて式を作り直してください。
- [検証] をクリックして、コンテンツ バリデータを実行します。
- [グループ条件] の設定をクリックして、エラーのグループ化方法を選択します。この例では、Error を基準にグループ化することで、複数のアイテム(Look、Tiles、またはその両方)を同時に調整できます。
エラーの表で、修正するフィールドのエラーの横にある [削除] ボタンをクリックします。
削除するアイテムの名前を確認します。コンテンツ バリデータでは自動的に入力されます。
[エラー] でグループ化していて、複数のアイテム(Look、タイル、またはその両方)がある場合、[コンテンツを表示] をクリックすると、コンテンツ バリデータによって更新されるアイテムのリストが表示されます。
必要に応じて、Look またはタイルの横にあるチェックボックスをオフにすると、その名前は変更されません。
変更するには、[項目を削除] をクリックします。
Lookの削除
エラーテーブルを [コンテンツ] でグループ化すると、テーブル内の Look を削除できます。
コンテンツ バリデータを使用して Look を削除するには:
- [検証] をクリックして、コンテンツ バリデータを実行します。
- 表を [コンテンツ] 別にグループ化します。
- エラーの表で、削除する Look または Look の横にある [Select] ボックスをクリックします。
- [選択した Look をすべて削除] をクリックします。
- 確認ボックスの [OK] をクリックして、選択した Look を削除します。
誤って Look を削除した場合、Looker 管理者が Look を復元できることがあります。Looker 管理チームがメンテナンス プロセスの一環としてゴミ箱を空にするまで、Looker は削除されたコンテンツをゴミ箱に保存します。
コンテンツ バリデータを使用した検索と置換
コンテンツ バリデータは、モデル、Explore、フィールドの名前の検索と置換にも使用できます。たとえば、あるフィールドを別のフィールドより優先させ、エラーがなくてもプロジェクト内でこの置換を行うことを決定できます。コンテンツ バリデータが検索や置換によって使用できる要素の完全なリストについては、上記のフィールド、ビュー、Explore、モデルに付ける名前の置き換えをご覧ください。
先に進む前に、コンテンツ バリデータを使用する前にのセクションをご確認ください。コンテンツ バリデータは Looker コンテンツの多くの部分に影響を与える可能性があるため、事前に計画して検討することが重要です。
検索と置換ツールとしてコンテンツ バリデータを使用するには:
コンテンツ バリデータ画面で、[Find &Replace in All Content] をクリックします。
変更する LookML 要素のタイプ(フィールド、ビュー、Explore、モデル)を選択します。
交換するアイテムの名前を入力します。
[置換名] に、フィールド、ビュー、Explore、モデルの名前を入力します。
[置換] ボタンをクリックして変更を行います。
留意事項
コンテンツ検証を再実行して、修正結果を表示します。
コンテンツ バリデータに関する注意事項:
- ビュー、Explore、モデルの場合、名前を変更することはできますが、名前を削除することはできません。コンテンツ バリデータを使用して削除できる項目のリストについては、フィールド名の削除をご覧ください。
- 表計算で参照できるのは、Look またはタイルのクエリに含まれるフィールドのみです。つまり、Look またはタイルのクエリからフィールドを削除しても、表計算でそのフィールドがまだ使用されている場合は、新しいコンテンツ検証エラーが表示されます。
- 削除済みの [ゴミ箱] ページにある Look は、検証されません。削除された Look を検証するには、Looker 管理者がまず Look を復元する必要があります。
- 開発モードを使用している場合、本番環境に push されていない場合でも、保存済みの LookML が検証結果に反映されます。ただし、コンテンツ バリデータを使用して加えた変更は、製品版モードでコンテンツを閲覧するユーザーに影響します。コンテンツ バリデータを実行する前に、本番環境モードに切り替えることを検討してください。