diff --git a/gracedb/superevents/utils.py b/gracedb/superevents/utils.py
index 78679a45cf2b18c51ceade25f19ec10aced7477a..dad9c1603d528180cac27dc09c1122d4a7d6aade 100644
--- a/gracedb/superevents/utils.py
+++ b/gracedb/superevents/utils.py
@@ -3,6 +3,7 @@ from django.shortcuts import get_object_or_404
 from .models import Superevent, Log, Labelling
 from events.models import Event, EventLog, Tag
 from events.permission_utils import assign_default_perms
+from core.vfile import VersionedFile
 
 import os
 
@@ -36,8 +37,11 @@ def create_superevent(submitter, t_start, t_0, t_end, preferred_event=None,
     s = Superevent.objects.create(submitter=submitter, t_start=t_start,
         t_0=t_0, t_end=t_end, preferred_event=preferred_event)
 
-    # TODO: Write a log message for preferred event
-    
+    # Write a log message for preferred event
+    new_msg = "Set as preferred event for superevent: {superevent_id}" \
+        .format(superevent_id=s.superevent_id)
+    new_log = create_log(submitter, new_msg, preferred_event,
+        issue_alert=True, autogenerated=False)
 
     # Add events to superevent
     # Superevent log message and alerts are taken care of elsewhere, but we
@@ -165,7 +169,7 @@ def create_log(issuer, comment, event_or_superevent, filename="",
 
     # Create data file
     if data_file:
-        filepath = os.path.join(superevent.datadir, filename)
+        filepath = os.path.join(event_or_superevent.datadir, filename)
         fdest = VersionedFile(filepath, 'w')
         for chunk in data_file.chunks():
             fdest.write(chunk)