Store request_id when available

This commit is contained in:
richard-dds
2018-09-24 13:35:49 -04:00
parent 5e479feadc
commit 4a5b9967ef
3 changed files with 15 additions and 6 deletions

View File

@@ -17,6 +17,8 @@ class AuditEvent(Base, TimestampsMixin):
workspace_id = Column(UUID(as_uuid=True), ForeignKey("workspaces.id"), index=True)
workspace = relationship("Workspace", backref="audit_events")
request_id = Column(UUID(as_uuid=True), ForeignKey("request.id"), index=True)
resource_type = Column(String(), nullable=False)
resource_id = Column(UUID(as_uuid=True), index=True, nullable=False)
display_name = Column(String())
@@ -31,13 +33,14 @@ class AuditEvent(Base, TimestampsMixin):
self.action, self.resource_type, self.resource_id
)
display_name_str = "({})".format(self.display_name) if self.display_name else ""
workspace_str = (
"in workspace {}".format(self.workspace_id)
if self.workspace_id and self.resource_type != "workspace"
else ""
)
return " ".join([user_str, action_str, display_name_str, workspace_str])
scope_str = ""
if self.request_id and self.resource_type != "request":
scope_str = "for request {}".format(self.request_id)
elif self.workspace_id and self.resource_type != "workspace":
scope_str = "in workspace {}".format(self.request_id)
return " ".join([user_str, action_str, display_name_str, scope_str])
def save(self, connection):
attrs = inspect(self).dict