in generate/resources/_logging.py [0:0]
def create_centralized_logging(self, logconfig):
"""creates centralized logging"""
logsink = logconfig["logsink"]
log_destination_type = (set(logconfig.keys()) - {"logsink"}).pop()
log_destination = logconfig[log_destination_type]
logsink["parent_resource_id"] = self.tf_ref(
logsink["parent_resource_type"],
logsink.get("parent_resource_id", ""),
)
# log_sink_writer_identity not actually used, added because required field
log_destination["log_sink_writer_identity"] = (
"serviceAccount:cloud-logs@system.gserviceaccount.com"
)
sink_name = logsink["log_sink_name"]
sink_id = f"logsink-{sink_name}"
log_destination["project_id"] = self.tf_ref(
"project", log_destination["project_id"]
)
created_log_destination = log_destination_fn[log_destination_type](
self,
f"{log_destination_type}-{sink_name}",
**log_destination,
)
created_log_destination.add_override(
"log_sink_writer_identity", f"${{module.{sink_id}.writer_identity}}"
)
LogExport(
self,
sink_id,
destination_uri=created_log_destination.destination_uri_output,
**logsink,
)