11from django .db import transaction
22from django .utils .translation import gettext_lazy as _
33
4+ import structlog
45from rest_framework import serializers
56from rest_framework_gis .serializers import GeometryField
67
78from objects .core .models import Object , ObjectRecord , ObjectType
8- from objects .token .models import Permission
9+ from objects .token .models import Permission , TokenAuth
910from objects .utils .serializers import DynamicFieldsMixin
1011
1112from .fields import ObjectSlugRelatedField , ObjectTypeField , ObjectUrlField
1213from .utils import merge_patch
1314from .validators import GeometryValidator , IsImmutableValidator , JsonSchemaValidator
1415
16+ logger = structlog .stdlib .get_logger (__name__ )
17+
1518
1619class ObjectRecordSerializer (serializers .ModelSerializer ):
1720 correctionFor = ObjectSlugRelatedField (
@@ -121,6 +124,15 @@ def create(self, validated_data):
121124
122125 validated_data ["object" ] = object
123126 record = super ().create (validated_data )
127+ token_auth : TokenAuth = self .context ["request" ].auth
128+ logger .info (
129+ "object_created" ,
130+ object_uuid = str (object .uuid ),
131+ objecttype_uuid = str (object .object_type .uuid ),
132+ objecttype_version = record .version ,
133+ token_identifier = token_auth .identifier ,
134+ token_application = token_auth .application ,
135+ )
124136 return record
125137
126138 @transaction .atomic
@@ -140,6 +152,15 @@ def update(self, instance, validated_data):
140152 validated_data ["data" ] = merge_patch (instance .data , validated_data ["data" ])
141153
142154 record = super ().create (validated_data )
155+ token_auth : TokenAuth = self .context ["request" ].auth
156+ logger .info (
157+ "object_updated" ,
158+ object_uuid = str (record .object .uuid ),
159+ objecttype_uuid = str (record .object .object_type .uuid ),
160+ objecttype_version = record .version ,
161+ token_identifier = token_auth .identifier ,
162+ token_application = token_auth .application ,
163+ )
143164 return record
144165
145166
0 commit comments