import os
import sys
import traceback

log_file = os.path.join(os.path.dirname(os.path.abspath(__file__)), "server.log")

def log(msg):
    with open(log_file, "a") as f:
        f.write(str(msg) + "\n")

try:
    log("Starting server...")
    from http.server import HTTPServer, SimpleHTTPRequestHandler

    class QuietHandler(SimpleHTTPRequestHandler):
        def log_message(self, format, *args):
            log(format % args)

    directory = os.path.dirname(os.path.abspath(__file__))
    os.chdir(directory)
    server_address = ("127.0.0.1", 8888)
    httpd = HTTPServer(server_address, QuietHandler)
    log("Server listening on 127.0.0.1:8888")
    httpd.serve_forever()
except Exception as e:
    log("Exception: " + traceback.format_exc())
