Debugging Terraform
TF_LOG
Переменная среды TF_LOG
в Terraform используется для установки уровня ведения логов в целях отладки.
Можно установить TF_LOG
на один из уровней логирования (в порядке убывания детализации):
TRACE
: Самый подробный уровень, говорящий о внутренней деятельности Terraform;DEBUG
: Вывод менее детальнее, чемTRACE
;INFO
: Вывод менее детальнее, чемDEBUG
(important state changes, events, and actions);WARN
: Выделяет потенциальные проблемы в работе Terraform, которые не обязательно являются ошибками;ERROR
: Регистрирует только сообщения об ошибках, в которых подробно описаны неудачные операции внутри Terraform.
export TF_LOG=DEBUG
JSON Logging
Если для TF_LOG
установлено значение JSON
, каждая запись вывода представляет собой отдельный объект JSON
в отдельной строке, что упрощает фильтрацию и анализ с использованием стандартных инструментов обработки JSON
. Этот параметр может быть очень полезен, если вы хотите проанализировать данные логов с помощью скрипта, которое может использовать JSON
, например решений для управления журналами или пользовательских инструментов сценариев.
export TF_LOG=JSON
TF_LOG_PATH
Кроме того, можно указать файл для направления логирования, установив переменную среды TF_LOG_PATH
:
export TF_LOG_PATH=./terraform.log
TF_LOG_CORE
Эта переменная управляет уровнем логирования ядра Terraform, которое включает в себя все внутренние операции самого Terraform, не специфичные для какого-либо провайдера:
export TF_LOG_CORE=DEBUG
TF_LOG_PROVIDER
Эта переменная управляет уровнем логирования для всех провайдеров, используемых в конфигурациях Terraform:
export TF_LOG_PROVIDER=TRACE