Ресурс google_logging_project_sink
Синтаксис
Для проверки ресурса Google ProjectSink используется google_logging_project_sink
Примеры
describe google_logging_project_sink(project: 'chef-gcp-inspec', name: 'inspec-gcp-org-sink') do
it { should exist }
its('filter') { should cmp 'resource.type = gce_instance AND severity = DEBUG' }
end
describe google_logging_project_sink(project: 'chef-gcp-inspec', name: 'nonexistent') do
it { should_not exist }
end
Проверка корректности назначения источника ведения журналов GCP проекта
describe google_logging_project_sink(project: 'chef-inspec-gcp', sink: 'sink-name-abcd') do
its('destination') { should eq 'storage.googleapis.com/gcp-inspec-logging-bucket' }
end
Проверка корректности фильтра источника ведения журналов GCP проекта
describe google_logging_project_sink(project: 'chef-inspec-gcp', sink: 'sink-name-abcd') do
its('filter') { should eq "resource.type = gce_instance AND resource.labels.instance_id = \"12345678910123123\"" }
end
Проверка формата версии вывода источника ведения журналов GCP проекта
describe google_logging_project_sink(project: 'chef-inspec-gcp', sink: 'sink-name-abcd') do
its('output_version_format') { should eq "V2" }
end
Проверка того, что идентификатор записи источника ведения журналов GCP проекта соответствует ожиданиям
describe google_logging_project_sink(project: 'chef-inspec-gcp', sink: 'sink-name-abcd') do
its('writer_identity') { should eq "serviceAccount:my-logging-service-account.iam.gserviceaccount.com" }
end
Свойства
Свойства, доступные для ресурса google_logging_project_sink:
project- Идентификатор проекта, к которому принадлежит этот источник.
name- Имя источника ведения журнала.
filter- Расширенный фильтр журналов. Единственные экспортируемые записи журналов — это те, которые принадлежат ресурсу, владеющему источником, и соответствуют фильтру.
destination- Назначение экспорта.
writer_identity- Идентификатор IAM — учетная запись службы или группа — от имени которой Logging записывает экспортированные записи журнала в назначение источника. Это поле устанавливается методами sinks.create и sinks.update на основе значения uniqueWriterIdentity в этих методах.
include_children- Если поле имеет значение false (по умолчанию), для экспорта доступны только журналы, принадлежащие родительскому ресурсу источника. Если поле имеет значение true, для экспорта также доступны журналы всех проектов, папок и счетов выставления счетов, содержащихся в родительском ресурсе источника. Экспортируется ли конкретная запись журнала из дочерних элементов, зависит от выражения фильтра источника.
Разрешения 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_logging_project_sink/