diff --git a/sql-edition/servers/VendServer.py b/sql-edition/servers/VendServer.py
index 365f9d44e09e38f582500507ea1ec49060fe208b..0b45a40b03a9e36acd3d2ee086561f5511bad6dc 100755
--- a/sql-edition/servers/VendServer.py
+++ b/sql-edition/servers/VendServer.py
@@ -4,7 +4,7 @@
 USE_DB = 0
 
 import ConfigParser
-import sys, os, string, re, pwd, signal, math
+import sys, os, string, re, pwd, signal, math, syslog
 import logging, logging.handlers
 from traceback import format_tb
 if USE_DB: import pg
@@ -403,11 +403,11 @@ def make_selection(v, vstatus):
 		vstatus.cur_selection = ''
 		return
 	elif vstatus.cur_selection[1] == '8':
-		v.display('GOT COKE?')
+		v.display('GOT DRINK?')
 		if ((os.system('su - "%s" -c "dispense %s"'%(vstatus.username, vstatus.cur_selection[0])) >> 8) != 0):
 			v.display('SEEMS NOT')
 		else:
-			v.display('GOT COKE!')
+			v.display('GOT DRINK!')
 	else:
 		# first see if it's a named slot
 		try:
@@ -416,10 +416,14 @@ def make_selection(v, vstatus):
 			price, shortname, name = get_snack( '--' )
 		dollarprice = "$%.2f" % ( price / 100.0 )
 		v.display(vstatus.cur_selection+' - %s'%dollarprice)
-		if ((os.system('su - "%s" -c "dispense %s"'%(vstatus.username, shortname)) >> 8) == 0):
+		exitcode = os.system('su - "%s" -c "dispense give oday %d"'%(vstatus.username, price))
+		if (exitcode == 0):
+			# magic dispense syslog service
+			syslog.syslog(syslog.LOG_INFO | syslog.LOG_LOCAL4, "vended %s (slot %s) for %s" % (name, vstatus.cur_selection, vstatus.username))
 			v.vend(vstatus.cur_selection)
 			v.display('THANK YOU')
 		else:
+			syslog.syslog(syslog.LOG_INFO | syslog.LOG_LOCAL4, "failed vending %s (slot %s) for %s, code %d" % (name, vstatus.cur_selection, vstatus.username, exitcode))
 			v.display('NO MONEY?')
 	sleep(1)