logi
This commit is contained in:
23
app.py
23
app.py
@@ -618,13 +618,26 @@ def require_system_password():
|
||||
fixed_url = urlunparse(parsed._replace(netloc=request.host))
|
||||
return redirect(url_for("system_auth", next=fixed_url))
|
||||
|
||||
|
||||
@app.before_request
|
||||
def start_timer():
|
||||
request._start_time = time.time()
|
||||
|
||||
|
||||
@app.after_request
|
||||
def log_request(response):
|
||||
log_msg = f"{request.remote_addr} - - [{request.method}] {request.path} {response.status_code}"
|
||||
if app.debug:
|
||||
app.logger.debug(log_msg)
|
||||
else:
|
||||
app.logger.info(log_msg)
|
||||
forwarded_for = request.headers.get("X-Forwarded-For", request.remote_addr)
|
||||
client_ip = forwarded_for.split(",")[0].strip()
|
||||
method = request.method
|
||||
path = request.path
|
||||
status = response.status_code
|
||||
length = response.content_length or "-"
|
||||
duration = round((time.time() - request._start_time) * 1000, 2)
|
||||
user_agent = request.headers.get("User-Agent", "-")
|
||||
log_msg = (
|
||||
f"{client_ip} - \"{method} {path}\" {status} {length} {duration}ms \"{user_agent}\""
|
||||
)
|
||||
app.logger.info(log_msg)
|
||||
return response
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user