如何在 BaseHTTPRequestHandler 中打印一个空的 date_time_string?

How to print an empty date_time_string in BaseHTTPRequestHandler?

我在 Python3 中使用 BaseHTTPRequestHandler 构建了一个微型 httpd。目前,它在 systemd 日志中记录每个 HTTP GET 请求,如下所示:

Oct 18 23:41:51 ubuntu httpd.py[19414]: 192.168.0.17 - - [18/Oct/2018 23:41:51] "GET / HTTP/1.1" 200 -

我想避免打印由 httpd 打印的时间戳。 HTTP GET 请求的处理程序如下:

def do_GET(self):
  self.send_response(200)
  self.send_header('Content-type','text/html')
  self.date_time_string()
  self.end_headers()

是否可以使用 date_time_string() 禁用打印时间戳?我尝试使用 self.date_time_string(None)self.date_time_string(timestamp=None),但这并没有改变任何东西。

要实现所需的日志格式,您需要编写自己的 log_message 方法实现。如果需要,您可以继续并重新定义 log_errorlog_request