Content validation

Stay organized with collections Save and categorize content based on your preferences.

The Content Validator searches your LookML for model, Explore, and field names referenced in your Looker content. It's a super useful tool for validating your LookML references, for fixing errors in your LookML after making changes, and for updating the names of your LookML elements across your project.

You must have the develop permission to use the Content Validator.

To open the Content Validator, select Content Validator from the Develop menu:

From here, you can use the Content Validator in two ways:

Before using the Content Validator

You must be extremely careful when making changes using content validation. The Content Validator does not have an undo function, and it has the potential to impact many Looks and dashboards, along with their Explore from Here links. If you do make a mistake, you should attempt to correct it as soon as possible, before additional changes make it harder to isolate the affected Looks.

Also, consider your timing when using the Content Validator. When you push development changes to production you should fix affected Looks and tiles at approximately the same time, so that they are broken for the minimum amount of time. If you fix Looks and tiles too early, based on your work in Development Mode, they will appear broken to users until you push your changes. Similarly, if you delay in fixing Looks and tiles until long after pushing the changes, the Looks and tiles will appear broken to users until you fix them.

If you use the Content Validator to change field names that serve as filters in your dashboards, be sure to review the Filters section of your dashboard schedules and update the filters as needed to reflect your changes. If a scheduled dashboard delivery includes filters that no longer function (for example, if the referenced field has changed), the scheduled delivery will fail and the schedule owner will receive an error message that a filter is invalid.

Use caution when using the Content Validator to make a change to an Explore used in a merged results dashboard tile, as the Content Validator applies any changes to every Explore included in the merged results tile. For example, you cannot use the Content Validator to change the model name in a single Explore in a merged results tile without changing the model name in all the Explores included in the merged results.

Using the Content Validator to fix errors

The Content Validator is a useful tool for finding and fixing errors resulting from changes in your LookML. For example, if you change a field name from customer to user, any Looks or dashboard tiles that included the customer field will no longer function (unless you used the alias parameter). The Content Validator will list any references to the customer field, and will also provide an easy way to fix the error.

When you run the Content Validator, it validates all references that your Looks and dashboards make to your LookML models, Explores, views, and fields, and will show an error for any references your content makes to an unknown LookML object.

The Content Validator does not show errors for the following:

  • Content for which you do not have develop permission. The Content Validator is scoped to your permissions, so that you can only use the Content Validator on the content for which you have develop permission (the models you can see in the Looker IDE). See the Roles documentation page for information on model permissions.
  • Looks that have been deleted and are in the Trash. If you want to validate a deleted Look, your Looker admin must restore the Look first.

Running the Content Validator

Read the Before using the Content Validator section before proceeding. The Content Validator can impact many parts of your Looker content, so it's important to plan and consider beforehand.

To validate your LookML with the Content Validator:

  1. Click the Validate button.
  2. Click the Group by tabs to change how errors are grouped:
    • Error: List each error, grouping together the Looker content that has the error. This is useful if you want to fix the same error in multiple pieces of content at once.
    • Folder: List each folder, grouping together the Looker content that has errors. This is useful if you want to fix only the errors in a particular folder.
    • Content: List each piece of content that has errors, grouping together its errors. This is useful if you want to fix all the errors in a single Look, tile, filter, etc.
  3. If you are in Development Mode, it's important to understand the implications of changing Looks and tiles. If you "fix" them before making your breaking changes live, there will be a period of time when the fix is premature, so users will experience broken Looks or tiles. Looker provides a warning message to help you remember this.
  4. The error table displays any error, along with a list of Looks and tiles that contain the error, plus the underlying model and Explore that are producing the error. You can use the Group by tabs at the upper right of the page to change the layout of the error table.
  5. Looker provides the Replace and/or Remove buttons for each row, depending on the error type. These buttons provide functionality to fix the errors and are described in more detail below.

Viewing the content validation results

The content validation results show Looker content that uses model names, Explore names, view names, or field names that do not exist or can't be found. See the Using the Content Validator to fix errors section for details about the LookML elements that the Content Validator can find and validate.

The icon next to the content's name identifies the content type:

  • — Dashboard tile
  • — Dashboard alert
  • — Schedule for a dashboard or Look
  • — Filter for a dashboard, or a field on a tile that listens to a dashboard filter (see the Adding and editing user-defined dashboard filters documentation page for information on configure tiles to listen to dashboard filters)

Validation results are based on the LookML available in the mode you're in when you run the validator. If you are in Production Mode, the validation results will reflect all LookML that has been pushed to production. If you are in Development Mode, the validation results will reflect your saved LookML, even if it hasn't been pushed to production.

Errors may be due to intentional changes in your LookML, or due to a typo or a missing join.

To adjust errors, you can use the buttons in each line of the error table:

Looker provides the Replace button for each error (see the Replacing names for fields, views, Explores, and models section below for how to replace names with the Content Validator). For errors with field names in the Data section of a Look or tile, Looker also displays the Remove button (see the Removing a field name section below for how to remove names with the Content Validator).

Depending on your Group by setting, the buttons will apply to a single item (Look or tile), or to multiple items:

  • If you group by Error, the buttons apply to all occurrences of that error in all Looks and tiles on your Looker instance — enabling you to fix all occurrences in a single operation.
  • If you group by Folder or by Content, the buttons apply to one occurrence of the error in a single Look or tile — enabling you to consider each occurrence of the error separately.

Here's an example where the table is grouped by Error, so the buttons affect all the instances of that error:

Here's an example where the table is grouped by Content, so the buttons affect just the one instance of the error on a single piece of content:

In addition, if you group by Content, you have the additional option to delete Looks.

Replacing names for fields, views, Explores, and models

The content validation results include a Replace button for the following types of elements so that you can rename them:

For any of these errors, you can use the Content Validator to replace an attribute of the content that is equal to or more general than the attribute that is erroring:

  • If a field is erroring, you can replace/remove the field, or you can replace the view, Explore, or model name.
  • If an Explore name is erroring, you can replace the Explore name or the model name.
  • If a model name is erroring, you can replace the model name.

Here's how to use the Content Validator to replace the names of elements in your model:

  1. Click Validate to run the Content Validator.
  2. Click a Group by setting to choose how errors are grouped. In this example, we're grouping by Error so we can adjust multiple items at the same time.
  3. In the error table, click the Replace button next to the error that you want to correct.

  4. In the dialog, select the type of LookML element that you want to change: field, view, Explore, or model. Looker displays the appropriate options for each error.

  5. Verify the name of the item that you want to replace. The Content Validator fills this in automatically.

  6. Enter the new name of the item.

  7. If you have grouped by Error and there are multiple items that will be affected, you can click Show Content to see a list of items that the Content Validator will update.

  8. Optionally, you can clear the checkboxes next to any listed items to leave their names unchanged.

  9. Click the Replace button to make the change.

Removing a field name

For errors with field names in the Data section of a Look or tile, the error table will provide a Remove button to the right of the error. You can use the Content Validator to remove fields that are:

  • In the Data section of a Look or dashboard tile
  • Referenced in visualization configurations, such as the Customizations area of the Series tab for column charts
  • Referenced by a dashboard tile to listen to a dashboard filter (this is configured in the Tiles to Update tab of the filter configuration window, described on the Adding and editing user-defined dashboard filters documentation page)

You cannot use the Content Validator to remove fields from custom filters, custom fields, nor table calculations, because typically you need to make additional changes to keep the expression working. Instead, use the content validation error messages to find places where custom filters, custom fields, and table calculation expressions need to be fixed, then rework the expression as appropriate.

  1. Click Validate to run the Content Validator.
  2. Click a Group by setting to choose how errors are grouped. In this example, we're grouping by Error so we can adjust multiple items (Looks, tiles, or both) at the same time.
  3. In the error table, click the Remove button next to the field error that you want to correct.

  4. Verify the name of the item that you want to remove. The Content Validator fills this in automatically.

  5. If you have grouped by Error and there are multiple items (Looks, tiles, or both), you can click Show Content to see a list of items that the Content Validator will update.

  6. Optionally, you can clear the checkboxes next to any Looks or tiles to leave their names unchanged.

  7. Click Remove Field to make the change.

Deleting Looks

If you group the error table by Content, you have the option to delete Looks in the table.

To use the Content Validator to delete Looks:

  1. Click Validate to run the Content Validator.
  2. Group the table by Content.
  3. In the error table, click the Select box next to the Look or Looks that you want to delete.
  4. Click Delete all selected Looks.
  5. Click OK in the confirmation box to delete the selected Look or Looks.

If you accidentally delete a Look, your Looker admin might be able to recover it for you. Looker stores deleted content in the trash until your Looker admin team empties the trash as part of their maintenance process.

Using the Content Validator to find and replace

The Content Validator can also be used to search and replace the names for models, Explores, and fields. For example, you might decide that you prefer one field over another and want to make that replacement in your project, even though there is no error. The complete list of elements that the Content Validator can search/replace is provided in the Replacing names for fields, views, Explores, and models section above.

Read the Before using the Content Validator section before proceeding. The Content Validator can impact many parts of your Looker content, so it's important to plan and consider beforehand.

To use the Content Validator as a find and replace tool:

  1. On the Content Validator screen, click Find & Replace in All Content.

  2. Select the Type of LookML element that you want to change (field, view, Explore, or model).

  3. Enter the Name of the item that you want to replace.

  4. Enter a Replacement Name for the field, view, Explore, or model.

  5. Click the Replace button to make the change.

Things to consider

Plan to rerun content validation to view the results of any fixes you make.

Note the following about the Content Validator:

  • For views, Explores, or models, you can change their names but you cannot remove their names entirely. See the Removing a field name section for a list of items that you can remove with the Content Validator.
  • Table calculations can only reference fields that are included in the query of a Look or tile. This means that if you remove a field from a Look or tile's query but a table calculation still uses that field, you'll get a new content validation error.
  • Looks that have been deleted and are in the Trash page will not be validated. If you want to validate a deleted Look, your Looker admin must restore the Look first.
  • If you are in Development Mode, the validation results will reflect your saved LookML even if it hasn't been pushed to production. However, any changes that you make using the Content Validator will affect users viewing content in Production mode. Consider switching to Production mode before running the Content Validator.