azurerm_monitor_log_profile ресурс
Используйте azurerm_monitor_log_profile ресурс проверки InSpec для проверки свойств профиля журнала Azure Monitor.
Версия Azure REST API
Этот ресурс взаимодействует с версией 2016-03-01 API Azure Management. Дополнительную информацию см. в официальной документации Azure.
В настоящее время, похоже, нет способа выбрать версию документации API Azure. Если вы заметите, что в официальной документации упоминается более новая версия, откройте вопрос или отправьте запрос на добавление pull request с обновленной версией.
Доступность
Установка
Этот ресурс доступен в inspec-azure пакете ресурсов. Для его использования добавьте следующее в свой inspec.yml в вашем профиле верхнего уровня:
depends:
- name: inspec-azure
git: https://github.com/inspec/inspec-azure.git
Вам также необходимо настроить свои учетные данные Azure; см. README пакета ресурсов.
Синтаксис
Блок ресурса azurerm_monitor_log_profile идентифицирует профиль журнала по имени.
describe azurerm_monitor_log_profile(name: 'default') do
...
end
Примеры
Проверка существования профиля журнала
describe azurerm_monitor_log_profile(name: 'default') do
it { should exist }
end
Проверка включения удержания профиля журнала
describe azurerm_monitor_log_profile(name: 'default') do
its('retention_enabled') { should be true }
end
Параметры
name
Примеры параметров
Имя профиля журнала.
describe azurerm_monitor_log_profile(name: 'default') do
it { should exist }
end
Атрибуты
retention_enabledretention_days
retention_enabled
Определяет, включено ли удержание.
its('retention_enabled') { should be true }
retention_days
Определяет количество дней, на которое включено удержание.
its('retention_days') { should eq(365) }
Другие атрибуты
Существуют дополнительные атрибуты, к которым можно получить доступ, которые мы не задокументировали. Пожалуйста, ознакомьтесь с документацией Azure. Любой атрибут в ответе можно получить, используя имена ключей, разделенные точками (.).
API может не всегда возвращать ключи, у которых нет связанных данных. Возможно, будут случаи, когда глубоко вложенное свойство не будет содержать нужного атрибута по вашей цепочке вызовов. Если вы обнаружите себя, создавая тесты на свойства, которые могут быть nil, вильните этот пакет ресурсов и добавьте к ресурсу метод доступа. В этом методе доступа вы сможете защититься от nil-ключей. Запросы на добавление pull requests всегда приветствуются.
Обработчики
В этом ресурсе проверки InSpec есть следующие специальные обработчики. Полный список доступных обработчиков см. на странице Универсальные обработчики.
exists
Управление будет успешно выполнено, если ресурс вернёт результат. Используйте should_not если ожидается ноль совпадений.
# If we expect 'default' to exist
describe azurerm_monitor_log_profile(name: 'default') do
it { should exist }
end
# If we expect 'default' to not exist
describe azurerm_monitor_log_profile(name: 'default') do
it { should_not exist }
end
Разрешения Azure
Ваш сервисный принцип должен быть настроен с ролью contributor на подписке, которую вы хотите проверить.
© Chef Software, Inc.
Licensed under the Creative Commons Attribution 3.0 Unported License.
The Chef™ Mark and Chef Logo are either registered trademarks/service marks or trademarks/servicemarks of Chef, in the United States and other countries and are used with Chef Inc's permission.
We are not affiliated with, endorsed or sponsored by Chef Inc.
https://docs.chef.io/inspec/resources/azurerm_monitor_log_profile/