Перейти к основному содержимому

store_failures

Настроенные тесты будут сохранять свои ошибки при вызове dbt test --store-failures. Если вы установите эту конфигурацию как false, но store_failures_as настроен, она будет переопределена.

Описание

Вы можете опционально настроить тест так, чтобы он всегда или никогда не сохранял свои ошибки в базе данных.

  • Если указано как true или false, конфигурация store_failures будет иметь приоритет над наличием или отсутствием флага --store-failures.
  • Если конфигурация store_failures не указана или отсутствует, ресурс будет использовать значение флага --store-failures.
  • Если установлено в true, store_failures сохраняет все записи (до лимита), которые не прошли тест. Ошибки сохраняются в новой таблице с именем теста. По умолчанию, store_failures использует схему {{ profile.schema }}_dbt_test__audit, но вы можете настроить суффикс схемы на другое значение.
  • Результаты теста всегда заменяют предыдущие ошибки для того же теста, даже если тест не привел к ошибкам.
  • По умолчанию, store_failures использует схему с именем dbt_test__audit, но вы можете настроить схему на другое значение. Убедитесь, что у вас есть разрешение на создание или доступ к схемам для вашей работы. Для получения более подробной информации обратитесь к FAQ.

Эта логика закодирована в макросе should_store_failures().

Настройка конкретного экземпляра общего (схемного) теста:

models/<filename>.yml
version: 2

models:
- name: my_model
columns:
- name: my_column
tests:
- unique:
config:
store_failures: true # всегда сохранять ошибки
- not_null:
config:
store_failures: false # никогда не сохранять ошибки

Часто задаваемые вопросы

 Получение ошибки 'отказано в разрешении для схемы'
0