Ресурс google_project_metrics
Синтаксис
Для проверки ресурса метрики Google используется google_project_metrics
Примеры
describe google_project_metrics(project: 'chef-gcp-inspec') do
it { should exist }
its('metric_filters') { should include 'resource.type=gae_app AND severity>=ERROR' }
its('metric_names') { should include 'some/metric' }
end
describe.one do
google_project_metrics(project: 'chef-gcp-inspec').metric_types.each do |metric_type|
describe metric_type do
it { should match 'some/metric' }
end
end
end
Проверка, что для проекта доступно не более заданного количества метрик
describe google_project_metrics(project: 'chef-inspec-gcp') do
its('count') { should be <= 100}
end
Проверка наличия ожидаемого имени метрики для проекта
describe google_project_metrics(project: 'chef-inspec-gcp') do
its('metric_names') { should include "metric-name" }
end
Проверка, что подмножество всех метрик с именем, соответствующим «project», имеет определённую идентификацию записывающего
google_project_metrics(project: 'chef-inspec-gcp').where(metric_name: /project/).metric_names.each do |metric_name|
describe google_project_metric(project: 'chef-inspec-gcp', metric: metric_name) do
its('filter') { should eq "(protoPayload.serviceName=\"cloudresourcemanager.googleapis.com\")" }
end
end
Свойства
Свойства, к которым можно получить доступ из ресурса google_project_metrics:
Для получения дополнительной информации обратитесь к ресурсу google_project_metric.
metric_names- массив имён
google_project_metric descriptions- массив описаний
google_project_metric metric_filters- массив фильтров
google_project_metric metric_descriptors- массив метрических описателей
google_project_metric label_extractors- массив экстракторов метки
google_project_metric value_extractors- массив экстракторов значений
google_project_metric bucket_options- массив опций корзины
google_project_metric
Критерии фильтрации
Этот ресурс поддерживает все вышеперечисленные свойства в качестве критериев фильтрации, которые могут использоваться с where в качестве блока или метода.
Разрешения GCP
Убедитесь, что API Stackdriver Logging https://console.cloud.google.com/apis/library/logging.googleapis.com/ включён для текущего проекта.
© 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/google_project_metrics/