logCustomOperation method

  1. @override
Future<void> logCustomOperation({
  1. required String entityType,
  2. required String entityId,
  3. required SyncOperation operation,
  4. required Map<String, dynamic> data,
  5. bool isFileToUpload = false,
})
override

Implementation

@override
Future<void> logCustomOperation({
  required String entityType,
  required String entityId,
  required SyncOperation operation,
  required Map<String, dynamic> data,
  bool isFileToUpload = false,
}) async {
  final log = SyncLog(
    syncId: const Uuid().v4(),
    entityType: entityType,
    entityId: entityId,
    operation: operation,
    dataJson: jsonEncode(data),
    isFileToUpload: isFileToUpload,
    isSynced: false,
    retryCount: 0,
    createdAt: DateTime.now(),
  );
  await _logStorage.createLog(log);

  _loggerDebugProvider?.info(
    'Custom operation: $operation for $entityType [$entityId]',
    category: 'sync_logger',
    tag: 'custom',
    metadata: {
      'entityType': entityType,
      'entityId': entityId,
      'operation': operation.value
    },
  );
}