完成前两周优化
This commit is contained in:
83
logs/app.log
83
logs/app.log
@@ -1294,3 +1294,86 @@ OSError: [Errno 5] Input/output error
|
||||
2025-10-07 02:10:44,604 INFO: 应用启动 [in /home/renjianbo/aitsc/config/base.py:82]
|
||||
2025-10-07 02:16:42,545 INFO: 应用启动 [in /home/renjianbo/aitsc/config/base.py:82]
|
||||
2025-10-07 23:02:53,076 INFO: 应用启动 [in /home/renjianbo/aitsc/config/base.py:82]
|
||||
2025-10-07 23:18:04,104 INFO: 应用启动 [in /home/renjianbo/aitsc/config/base.py:82]
|
||||
2025-10-07 23:18:15,871 ERROR: Exception on / [GET] [in /home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/flask/app.py:1414]
|
||||
Traceback (most recent call last):
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/flask/app.py", line 2190, in wsgi_app
|
||||
response = self.full_dispatch_request()
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/flask/app.py", line 1486, in full_dispatch_request
|
||||
rv = self.handle_user_exception(e)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/flask_cors/extension.py", line 176, in wrapped_function
|
||||
return cors_after_request(app.make_response(f(*args, **kwargs)))
|
||||
^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/flask/app.py", line 1484, in full_dispatch_request
|
||||
rv = self.dispatch_request()
|
||||
^^^^^^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/flask/app.py", line 1469, in dispatch_request
|
||||
return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/aitsc/src/flask_prompt_master/routes/routes.py", line 172, in index
|
||||
return render_template('generate.html', form=form, prompt=None, templates=templates,
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/flask/templating.py", line 151, in render_template
|
||||
return _render(app, template, context)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/flask/templating.py", line 132, in _render
|
||||
rv = template.render(context)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/jinja2/environment.py", line 1295, in render
|
||||
self.environment.handle_exception()
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/jinja2/environment.py", line 942, in handle_exception
|
||||
raise rewrite_traceback_stack(source=source)
|
||||
File "/home/renjianbo/aitsc/src/flask_prompt_master/templates/generate.html", line 1, in top-level template code
|
||||
{% extends "base.html" %}
|
||||
File "/home/renjianbo/aitsc/src/flask_prompt_master/templates/base.html", line 477, in top-level template code
|
||||
{% block content %}{% endblock %}
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/aitsc/src/flask_prompt_master/templates/generate.html", line 203, in block 'content'
|
||||
{{ template.content[:200] }}{% if template.content|length > 200 %}...{% endif %}
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
jinja2.exceptions.UndefinedError: 'src.flask_prompt_master.models.models.PromptTemplate object' has no attribute 'content'
|
||||
2025-10-07 23:18:24,389 ERROR: Exception on / [GET] [in /home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/flask/app.py:1414]
|
||||
Traceback (most recent call last):
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/flask/app.py", line 2190, in wsgi_app
|
||||
response = self.full_dispatch_request()
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/flask/app.py", line 1486, in full_dispatch_request
|
||||
rv = self.handle_user_exception(e)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/flask_cors/extension.py", line 176, in wrapped_function
|
||||
return cors_after_request(app.make_response(f(*args, **kwargs)))
|
||||
^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/flask/app.py", line 1484, in full_dispatch_request
|
||||
rv = self.dispatch_request()
|
||||
^^^^^^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/flask/app.py", line 1469, in dispatch_request
|
||||
return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/aitsc/src/flask_prompt_master/routes/routes.py", line 172, in index
|
||||
return render_template('generate.html', form=form, prompt=None, templates=templates,
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/flask/templating.py", line 151, in render_template
|
||||
return _render(app, template, context)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/flask/templating.py", line 132, in _render
|
||||
rv = template.render(context)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/jinja2/environment.py", line 1295, in render
|
||||
self.environment.handle_exception()
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/jinja2/environment.py", line 942, in handle_exception
|
||||
raise rewrite_traceback_stack(source=source)
|
||||
File "/home/renjianbo/aitsc/src/flask_prompt_master/templates/generate.html", line 1, in top-level template code
|
||||
{% extends "base.html" %}
|
||||
File "/home/renjianbo/aitsc/src/flask_prompt_master/templates/base.html", line 477, in top-level template code
|
||||
{% block content %}{% endblock %}
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/aitsc/src/flask_prompt_master/templates/generate.html", line 203, in block 'content'
|
||||
{{ template.content[:200] }}{% if template.content|length > 200 %}...{% endif %}
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
jinja2.exceptions.UndefinedError: 'src.flask_prompt_master.models.models.PromptTemplate object' has no attribute 'content'
|
||||
2025-10-07 23:19:50,178 INFO: 应用启动 [in /home/renjianbo/aitsc/config/base.py:82]
|
||||
2025-10-07 23:25:36,182 INFO: 应用启动 [in /home/renjianbo/aitsc/config/base.py:82]
|
||||
2025-10-07 23:38:14,991 INFO: 应用启动 [in /home/renjianbo/aitsc/config/base.py:82]
|
||||
2025-10-07 23:47:17,992 INFO: 应用启动 [in /home/renjianbo/aitsc/config/base.py:82]
|
||||
|
||||
@@ -1 +1 @@
|
||||
15478
|
||||
25390
|
||||
|
||||
@@ -11399,3 +11399,35 @@
|
||||
123.139.95.170 - - [07/Oct/2025:23:04:58 +0800] "GET /api/profile/stats HTTP/1.1" 200 104 "http://101.43.95.130:5002/profile" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 169337
|
||||
123.139.95.170 - - [07/Oct/2025:23:05:00 +0800] "GET / HTTP/1.1" 200 624367 "http://101.43.95.130:5002/profile" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 690365
|
||||
123.139.95.170 - - [07/Oct/2025:23:05:01 +0800] "GET /api/check-login HTTP/1.1" 200 115 "http://101.43.95.130:5002/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 1077
|
||||
123.139.95.170 - - [07/Oct/2025:23:07:37 +0800] "GET /meal-planning HTTP/1.1" 200 31971 "http://101.43.95.130:5002/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 127827
|
||||
123.139.95.170 - - [07/Oct/2025:23:07:37 +0800] "GET /api/check-login HTTP/1.1" 200 35 "http://101.43.95.130:5002/meal-planning" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 754
|
||||
123.139.95.170 - - [07/Oct/2025:23:07:45 +0800] "GET / HTTP/1.1" 200 624367 "http://101.43.95.130:5002/meal-planning" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 735646
|
||||
123.139.95.170 - - [07/Oct/2025:23:07:45 +0800] "GET /api/check-login HTTP/1.1" 200 35 "http://101.43.95.130:5002/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 1116
|
||||
123.139.95.170 - - [07/Oct/2025:23:08:06 +0800] "GET /expert_generate HTTP/1.1" 200 29885 "http://101.43.95.130:5002/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 140990
|
||||
123.139.95.170 - - [07/Oct/2025:23:08:06 +0800] "GET /api/check-login HTTP/1.1" 200 35 "http://101.43.95.130:5002/expert_generate" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 750
|
||||
123.139.95.170 - - [07/Oct/2025:23:08:09 +0800] "GET / HTTP/1.1" 200 624367 "http://101.43.95.130:5002/meal-planning" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 714879
|
||||
123.139.95.170 - - [07/Oct/2025:23:08:57 +0800] "GET /register HTTP/1.1" 200 23092 "http://101.43.95.130:5002/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 253702
|
||||
123.139.95.170 - - [07/Oct/2025:23:08:57 +0800] "GET /api/check-login HTTP/1.1" 200 35 "http://101.43.95.130:5002/register" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 783
|
||||
123.139.95.170 - - [07/Oct/2025:23:09:03 +0800] "GET /login HTTP/1.1" 200 19939 "http://101.43.95.130:5002/register" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 111149
|
||||
123.139.95.170 - - [07/Oct/2025:23:09:03 +0800] "GET /api/check-login HTTP/1.1" 200 35 "http://101.43.95.130:5002/login" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 752
|
||||
123.139.95.170 - - [07/Oct/2025:23:09:06 +0800] "POST /api/login HTTP/1.1" 200 174 "http://101.43.95.130:5002/login" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 252242
|
||||
123.139.95.170 - - [07/Oct/2025:23:09:09 +0800] "GET / HTTP/1.1" 200 624367 "http://101.43.95.130:5002/login" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 770897
|
||||
123.139.95.170 - - [07/Oct/2025:23:09:10 +0800] "GET /api/check-login HTTP/1.1" 200 115 "http://101.43.95.130:5002/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 844
|
||||
123.139.95.170 - - [07/Oct/2025:23:18:16 +0800] "GET / HTTP/1.1" 500 265 "http://101.43.95.130:5002/login" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 665705
|
||||
123.139.95.170 - - [07/Oct/2025:23:18:24 +0800] "GET / HTTP/1.1" 500 265 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 549021
|
||||
123.139.95.170 - - [07/Oct/2025:23:19:52 +0800] "GET / HTTP/1.1" 200 1378979 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 1748598
|
||||
123.139.95.170 - - [07/Oct/2025:23:19:53 +0800] "GET /api/check-login HTTP/1.1" 200 115 "http://101.43.95.130:5002/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 4642
|
||||
123.139.95.170 - - [07/Oct/2025:23:25:39 +0800] "GET / HTTP/1.1" 200 1392263 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 1732540
|
||||
123.139.95.170 - - [07/Oct/2025:23:25:39 +0800] "GET /api/check-login HTTP/1.1" 200 115 "http://101.43.95.130:5002/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 4869
|
||||
123.139.95.170 - - [07/Oct/2025:23:27:34 +0800] "POST / HTTP/1.1" 200 1397094 "http://101.43.95.130:5002/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 28804797
|
||||
123.139.95.170 - - [07/Oct/2025:23:27:34 +0800] "GET /api/check-login HTTP/1.1" 200 115 "http://101.43.95.130:5002/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 4662
|
||||
123.139.95.170 - - [07/Oct/2025:23:31:02 +0800] "GET /expert_generate HTTP/1.1" 200 29885 "http://101.43.95.130:5002/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 451512
|
||||
123.139.95.170 - - [07/Oct/2025:23:31:02 +0800] "GET /api/check-login HTTP/1.1" 200 115 "http://101.43.95.130:5002/expert_generate" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 4770
|
||||
123.139.95.170 - - [07/Oct/2025:23:39:10 +0800] "GET / HTTP/1.1" 200 1396182 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 1883227
|
||||
123.139.95.170 - - [07/Oct/2025:23:39:11 +0800] "GET /api/check-login HTTP/1.1" 200 115 "http://101.43.95.130:5002/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 1145
|
||||
123.139.95.170 - - [07/Oct/2025:23:39:27 +0800] "POST / HTTP/1.1" 200 1401033 "http://101.43.95.130:5002/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 29029514
|
||||
123.139.95.170 - - [07/Oct/2025:23:39:27 +0800] "GET /api/check-login HTTP/1.1" 200 115 "http://101.43.95.130:5002/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 798
|
||||
123.139.95.170 - - [07/Oct/2025:23:47:20 +0800] "GET / HTTP/1.1" 200 1403945 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 1925586
|
||||
123.139.95.170 - - [07/Oct/2025:23:47:21 +0800] "GET /api/check-login HTTP/1.1" 200 115 "http://101.43.95.130:5002/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 4754
|
||||
123.139.95.170 - - [07/Oct/2025:23:48:33 +0800] "POST / HTTP/1.1" 200 1408886 "http://101.43.95.130:5002/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 28116176
|
||||
123.139.95.170 - - [07/Oct/2025:23:48:33 +0800] "GET /api/check-login HTTP/1.1" 200 115 "http://101.43.95.130:5002/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0" 1178
|
||||
|
||||
@@ -5560,3 +5560,262 @@ OSError: [Errno 5] Input/output error
|
||||
[2025-10-07 23:02:54 +0800] [15497] [INFO] Booting worker with pid: 15497
|
||||
[2025-10-07 23:02:54 +0800] [15497] [INFO] 工作进程 15497 已启动
|
||||
[2025-10-07 23:02:54 +0800] [15497] [INFO] 工作进程 15497 初始化完成
|
||||
[2025-10-07 23:17:42 +0800] [15493] [INFO] Worker exiting (pid: 15493)
|
||||
[2025-10-07 23:17:42 +0800] [15478] [INFO] Handling signal: term
|
||||
[2025-10-07 23:17:42 +0800] [15494] [INFO] Worker exiting (pid: 15494)
|
||||
[2025-10-07 23:17:42 +0800] [15495] [INFO] Worker exiting (pid: 15495)
|
||||
[2025-10-07 23:17:42 +0800] [15496] [INFO] Worker exiting (pid: 15496)
|
||||
[2025-10-07 23:17:42 +0800] [15497] [INFO] Worker exiting (pid: 15497)
|
||||
[2025-10-07 23:17:43 +0800] [15478] [INFO] Shutting down: Master
|
||||
[2025-10-07 23:18:04 +0800] [29409] [INFO] Starting gunicorn 21.2.0
|
||||
[2025-10-07 23:18:04 +0800] [29409] [INFO] Gunicorn服务器启动中...
|
||||
[2025-10-07 23:18:04 +0800] [29409] [INFO] Listening at: http://0.0.0.0:5002 (29409)
|
||||
[2025-10-07 23:18:04 +0800] [29409] [INFO] Using worker: sync
|
||||
[2025-10-07 23:18:04 +0800] [29409] [INFO] 工作进程 [booting] 即将启动
|
||||
[2025-10-07 23:18:04 +0800] [29428] [INFO] Booting worker with pid: 29428
|
||||
[2025-10-07 23:18:04 +0800] [29428] [INFO] 工作进程 29428 已启动
|
||||
[2025-10-07 23:18:04 +0800] [29428] [INFO] 工作进程 29428 初始化完成
|
||||
[2025-10-07 23:18:04 +0800] [29409] [INFO] 工作进程 [booting] 即将启动
|
||||
[2025-10-07 23:18:04 +0800] [29429] [INFO] Booting worker with pid: 29429
|
||||
[2025-10-07 23:18:04 +0800] [29429] [INFO] 工作进程 29429 已启动
|
||||
[2025-10-07 23:18:04 +0800] [29429] [INFO] 工作进程 29429 初始化完成
|
||||
[2025-10-07 23:18:04 +0800] [29409] [INFO] 工作进程 [booting] 即将启动
|
||||
[2025-10-07 23:18:04 +0800] [29430] [INFO] Booting worker with pid: 29430
|
||||
[2025-10-07 23:18:04 +0800] [29430] [INFO] 工作进程 29430 已启动
|
||||
[2025-10-07 23:18:04 +0800] [29430] [INFO] 工作进程 29430 初始化完成
|
||||
[2025-10-07 23:18:05 +0800] [29409] [INFO] 工作进程 [booting] 即将启动
|
||||
[2025-10-07 23:18:05 +0800] [29431] [INFO] Booting worker with pid: 29431
|
||||
[2025-10-07 23:18:05 +0800] [29431] [INFO] 工作进程 29431 已启动
|
||||
[2025-10-07 23:18:05 +0800] [29431] [INFO] 工作进程 29431 初始化完成
|
||||
[2025-10-07 23:18:05 +0800] [29409] [INFO] 工作进程 [booting] 即将启动
|
||||
[2025-10-07 23:18:05 +0800] [29432] [INFO] Booting worker with pid: 29432
|
||||
[2025-10-07 23:18:05 +0800] [29432] [INFO] 工作进程 29432 已启动
|
||||
[2025-10-07 23:18:05 +0800] [29432] [INFO] 工作进程 29432 初始化完成
|
||||
[2025-10-07 23:18:15,871] ERROR in app: Exception on / [GET]
|
||||
Traceback (most recent call last):
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/flask/app.py", line 2190, in wsgi_app
|
||||
response = self.full_dispatch_request()
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/flask/app.py", line 1486, in full_dispatch_request
|
||||
rv = self.handle_user_exception(e)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/flask_cors/extension.py", line 176, in wrapped_function
|
||||
return cors_after_request(app.make_response(f(*args, **kwargs)))
|
||||
^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/flask/app.py", line 1484, in full_dispatch_request
|
||||
rv = self.dispatch_request()
|
||||
^^^^^^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/flask/app.py", line 1469, in dispatch_request
|
||||
return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/aitsc/src/flask_prompt_master/routes/routes.py", line 172, in index
|
||||
return render_template('generate.html', form=form, prompt=None, templates=templates,
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/flask/templating.py", line 151, in render_template
|
||||
return _render(app, template, context)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/flask/templating.py", line 132, in _render
|
||||
rv = template.render(context)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/jinja2/environment.py", line 1295, in render
|
||||
self.environment.handle_exception()
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/jinja2/environment.py", line 942, in handle_exception
|
||||
raise rewrite_traceback_stack(source=source)
|
||||
File "/home/renjianbo/aitsc/src/flask_prompt_master/templates/generate.html", line 1, in top-level template code
|
||||
{% extends "base.html" %}
|
||||
File "/home/renjianbo/aitsc/src/flask_prompt_master/templates/base.html", line 477, in top-level template code
|
||||
{% block content %}{% endblock %}
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/aitsc/src/flask_prompt_master/templates/generate.html", line 203, in block 'content'
|
||||
{{ template.content[:200] }}{% if template.content|length > 200 %}...{% endif %}
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
jinja2.exceptions.UndefinedError: 'src.flask_prompt_master.models.models.PromptTemplate object' has no attribute 'content'
|
||||
[2025-10-07 23:18:24,389] ERROR in app: Exception on / [GET]
|
||||
Traceback (most recent call last):
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/flask/app.py", line 2190, in wsgi_app
|
||||
response = self.full_dispatch_request()
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/flask/app.py", line 1486, in full_dispatch_request
|
||||
rv = self.handle_user_exception(e)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/flask_cors/extension.py", line 176, in wrapped_function
|
||||
return cors_after_request(app.make_response(f(*args, **kwargs)))
|
||||
^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/flask/app.py", line 1484, in full_dispatch_request
|
||||
rv = self.dispatch_request()
|
||||
^^^^^^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/flask/app.py", line 1469, in dispatch_request
|
||||
return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/aitsc/src/flask_prompt_master/routes/routes.py", line 172, in index
|
||||
return render_template('generate.html', form=form, prompt=None, templates=templates,
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/flask/templating.py", line 151, in render_template
|
||||
return _render(app, template, context)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/flask/templating.py", line 132, in _render
|
||||
rv = template.render(context)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/jinja2/environment.py", line 1295, in render
|
||||
self.environment.handle_exception()
|
||||
File "/home/renjianbo/miniconda3/envs/myenv/lib/python3.12/site-packages/jinja2/environment.py", line 942, in handle_exception
|
||||
raise rewrite_traceback_stack(source=source)
|
||||
File "/home/renjianbo/aitsc/src/flask_prompt_master/templates/generate.html", line 1, in top-level template code
|
||||
{% extends "base.html" %}
|
||||
File "/home/renjianbo/aitsc/src/flask_prompt_master/templates/base.html", line 477, in top-level template code
|
||||
{% block content %}{% endblock %}
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
File "/home/renjianbo/aitsc/src/flask_prompt_master/templates/generate.html", line 203, in block 'content'
|
||||
{{ template.content[:200] }}{% if template.content|length > 200 %}...{% endif %}
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
jinja2.exceptions.UndefinedError: 'src.flask_prompt_master.models.models.PromptTemplate object' has no attribute 'content'
|
||||
[2025-10-07 23:19:22 +0800] [29428] [INFO] Worker exiting (pid: 29428)
|
||||
[2025-10-07 23:19:22 +0800] [29409] [INFO] Handling signal: term
|
||||
[2025-10-07 23:19:22 +0800] [29429] [INFO] Worker exiting (pid: 29429)
|
||||
[2025-10-07 23:19:22 +0800] [29431] [INFO] Worker exiting (pid: 29431)
|
||||
[2025-10-07 23:19:22 +0800] [29430] [INFO] Worker exiting (pid: 29430)
|
||||
[2025-10-07 23:19:49 +0800] [29432] [INFO] Worker exiting (pid: 29432)
|
||||
[2025-10-07 23:19:49 +0800] [29409] [INFO] Shutting down: Master
|
||||
[2025-10-07 23:19:50 +0800] [31143] [INFO] Starting gunicorn 21.2.0
|
||||
[2025-10-07 23:19:50 +0800] [31143] [INFO] Gunicorn服务器启动中...
|
||||
[2025-10-07 23:19:50 +0800] [31143] [INFO] Listening at: http://0.0.0.0:5002 (31143)
|
||||
[2025-10-07 23:19:50 +0800] [31143] [INFO] Using worker: sync
|
||||
[2025-10-07 23:19:50 +0800] [31143] [INFO] 工作进程 [booting] 即将启动
|
||||
[2025-10-07 23:19:50 +0800] [31156] [INFO] Booting worker with pid: 31156
|
||||
[2025-10-07 23:19:50 +0800] [31156] [INFO] 工作进程 31156 已启动
|
||||
[2025-10-07 23:19:50 +0800] [31156] [INFO] 工作进程 31156 初始化完成
|
||||
[2025-10-07 23:19:51 +0800] [31143] [INFO] 工作进程 [booting] 即将启动
|
||||
[2025-10-07 23:19:51 +0800] [31159] [INFO] Booting worker with pid: 31159
|
||||
[2025-10-07 23:19:51 +0800] [31159] [INFO] 工作进程 31159 已启动
|
||||
[2025-10-07 23:19:51 +0800] [31159] [INFO] 工作进程 31159 初始化完成
|
||||
[2025-10-07 23:19:51 +0800] [31143] [INFO] 工作进程 [booting] 即将启动
|
||||
[2025-10-07 23:19:51 +0800] [31164] [INFO] Booting worker with pid: 31164
|
||||
[2025-10-07 23:19:51 +0800] [31164] [INFO] 工作进程 31164 已启动
|
||||
[2025-10-07 23:19:51 +0800] [31164] [INFO] 工作进程 31164 初始化完成
|
||||
[2025-10-07 23:19:51 +0800] [31143] [INFO] 工作进程 [booting] 即将启动
|
||||
[2025-10-07 23:19:51 +0800] [31167] [INFO] Booting worker with pid: 31167
|
||||
[2025-10-07 23:19:51 +0800] [31167] [INFO] 工作进程 31167 已启动
|
||||
[2025-10-07 23:19:51 +0800] [31167] [INFO] 工作进程 31167 初始化完成
|
||||
[2025-10-07 23:19:51 +0800] [31143] [INFO] 工作进程 [booting] 即将启动
|
||||
[2025-10-07 23:19:51 +0800] [31168] [INFO] Booting worker with pid: 31168
|
||||
[2025-10-07 23:19:51 +0800] [31168] [INFO] 工作进程 31168 已启动
|
||||
[2025-10-07 23:19:51 +0800] [31168] [INFO] 工作进程 31168 初始化完成
|
||||
[2025-10-07 23:21:52 +0800] [31143] [CRITICAL] WORKER TIMEOUT (pid:31168)
|
||||
[2025-10-07 23:21:52 +0800] [31168] [INFO] 工作进程 31168 异常退出
|
||||
[2025-10-07 23:21:52 +0800] [31168] [INFO] Worker exiting (pid: 31168)
|
||||
[2025-10-07 23:21:52 +0800] [31143] [ERROR] Worker (pid:31168) exited with code 1
|
||||
[2025-10-07 23:21:52 +0800] [31143] [ERROR] Worker (pid:31168) exited with code 1.
|
||||
[2025-10-07 23:21:52 +0800] [31143] [INFO] 工作进程 [booting] 即将启动
|
||||
[2025-10-07 23:21:52 +0800] [23141] [INFO] Booting worker with pid: 23141
|
||||
[2025-10-07 23:21:52 +0800] [23141] [INFO] 工作进程 23141 已启动
|
||||
[2025-10-07 23:21:52 +0800] [23141] [INFO] 工作进程 23141 初始化完成
|
||||
[2025-10-07 23:25:14 +0800] [31143] [INFO] Handling signal: term
|
||||
[2025-10-07 23:25:14 +0800] [23141] [INFO] Worker exiting (pid: 23141)
|
||||
[2025-10-07 23:25:14 +0800] [31159] [INFO] Worker exiting (pid: 31159)
|
||||
[2025-10-07 23:25:14 +0800] [31156] [INFO] Worker exiting (pid: 31156)
|
||||
[2025-10-07 23:25:14 +0800] [31167] [INFO] Worker exiting (pid: 31167)
|
||||
[2025-10-07 23:25:14 +0800] [31164] [INFO] Worker exiting (pid: 31164)
|
||||
[2025-10-07 23:25:15 +0800] [31143] [INFO] Shutting down: Master
|
||||
[2025-10-07 23:25:36 +0800] [16866] [INFO] Starting gunicorn 21.2.0
|
||||
[2025-10-07 23:25:36 +0800] [16866] [INFO] Gunicorn服务器启动中...
|
||||
[2025-10-07 23:25:36 +0800] [16866] [INFO] Listening at: http://0.0.0.0:5002 (16866)
|
||||
[2025-10-07 23:25:36 +0800] [16866] [INFO] Using worker: sync
|
||||
[2025-10-07 23:25:36 +0800] [16866] [INFO] 工作进程 [booting] 即将启动
|
||||
[2025-10-07 23:25:36 +0800] [16879] [INFO] Booting worker with pid: 16879
|
||||
[2025-10-07 23:25:36 +0800] [16879] [INFO] 工作进程 16879 已启动
|
||||
[2025-10-07 23:25:36 +0800] [16879] [INFO] 工作进程 16879 初始化完成
|
||||
[2025-10-07 23:25:37 +0800] [16866] [INFO] 工作进程 [booting] 即将启动
|
||||
[2025-10-07 23:25:37 +0800] [16880] [INFO] Booting worker with pid: 16880
|
||||
[2025-10-07 23:25:37 +0800] [16880] [INFO] 工作进程 16880 已启动
|
||||
[2025-10-07 23:25:37 +0800] [16880] [INFO] 工作进程 16880 初始化完成
|
||||
[2025-10-07 23:25:37 +0800] [16866] [INFO] 工作进程 [booting] 即将启动
|
||||
[2025-10-07 23:25:37 +0800] [16881] [INFO] Booting worker with pid: 16881
|
||||
[2025-10-07 23:25:37 +0800] [16881] [INFO] 工作进程 16881 已启动
|
||||
[2025-10-07 23:25:37 +0800] [16881] [INFO] 工作进程 16881 初始化完成
|
||||
[2025-10-07 23:25:37 +0800] [16866] [INFO] 工作进程 [booting] 即将启动
|
||||
[2025-10-07 23:25:37 +0800] [16866] [INFO] 工作进程 [booting] 即将启动
|
||||
[2025-10-07 23:25:37 +0800] [16882] [INFO] Booting worker with pid: 16882
|
||||
[2025-10-07 23:25:37 +0800] [16882] [INFO] 工作进程 16882 已启动
|
||||
[2025-10-07 23:25:37 +0800] [16882] [INFO] 工作进程 16882 初始化完成
|
||||
[2025-10-07 23:25:37 +0800] [16883] [INFO] Booting worker with pid: 16883
|
||||
[2025-10-07 23:25:37 +0800] [16883] [INFO] 工作进程 16883 已启动
|
||||
[2025-10-07 23:25:37 +0800] [16883] [INFO] 工作进程 16883 初始化完成
|
||||
[2025-10-07 23:33:04 +0800] [16866] [CRITICAL] WORKER TIMEOUT (pid:16879)
|
||||
[2025-10-07 23:33:04 +0800] [16866] [CRITICAL] WORKER TIMEOUT (pid:16883)
|
||||
[2025-10-07 23:33:04 +0800] [16879] [INFO] 工作进程 16879 异常退出
|
||||
[2025-10-07 23:33:04 +0800] [16883] [INFO] 工作进程 16883 异常退出
|
||||
[2025-10-07 23:33:04 +0800] [16879] [INFO] Worker exiting (pid: 16879)
|
||||
[2025-10-07 23:33:04 +0800] [16883] [INFO] Worker exiting (pid: 16883)
|
||||
[2025-10-07 23:33:05 +0800] [16866] [ERROR] Worker (pid:16883) exited with code 1
|
||||
[2025-10-07 23:33:05 +0800] [16866] [ERROR] Worker (pid:16883) exited with code 1.
|
||||
[2025-10-07 23:33:05 +0800] [16866] [INFO] 工作进程 [booting] 即将启动
|
||||
[2025-10-07 23:33:05 +0800] [11555] [INFO] Booting worker with pid: 11555
|
||||
[2025-10-07 23:33:05 +0800] [11555] [INFO] 工作进程 11555 已启动
|
||||
[2025-10-07 23:33:05 +0800] [11555] [INFO] 工作进程 11555 初始化完成
|
||||
[2025-10-07 23:33:05 +0800] [16866] [ERROR] Worker (pid:16879) was sent SIGKILL! Perhaps out of memory?
|
||||
[2025-10-07 23:33:05 +0800] [16866] [INFO] 工作进程 [booting] 即将启动
|
||||
[2025-10-07 23:33:05 +0800] [11556] [INFO] Booting worker with pid: 11556
|
||||
[2025-10-07 23:33:05 +0800] [11556] [INFO] 工作进程 11556 已启动
|
||||
[2025-10-07 23:33:05 +0800] [11556] [INFO] 工作进程 11556 初始化完成
|
||||
[2025-10-07 23:37:52 +0800] [11555] [INFO] Worker exiting (pid: 11555)
|
||||
[2025-10-07 23:37:52 +0800] [16866] [INFO] Handling signal: term
|
||||
[2025-10-07 23:37:52 +0800] [16880] [INFO] Worker exiting (pid: 16880)
|
||||
[2025-10-07 23:37:52 +0800] [11556] [INFO] Worker exiting (pid: 11556)
|
||||
[2025-10-07 23:37:52 +0800] [16881] [INFO] Worker exiting (pid: 16881)
|
||||
[2025-10-07 23:37:52 +0800] [16882] [INFO] Worker exiting (pid: 16882)
|
||||
[2025-10-07 23:37:54 +0800] [16866] [INFO] Shutting down: Master
|
||||
[2025-10-07 23:38:15 +0800] [5800] [INFO] Starting gunicorn 21.2.0
|
||||
[2025-10-07 23:38:15 +0800] [5800] [INFO] Gunicorn服务器启动中...
|
||||
[2025-10-07 23:38:15 +0800] [5800] [INFO] Listening at: http://0.0.0.0:5002 (5800)
|
||||
[2025-10-07 23:38:15 +0800] [5800] [INFO] Using worker: sync
|
||||
[2025-10-07 23:38:15 +0800] [5800] [INFO] 工作进程 [booting] 即将启动
|
||||
[2025-10-07 23:38:15 +0800] [5817] [INFO] Booting worker with pid: 5817
|
||||
[2025-10-07 23:38:15 +0800] [5817] [INFO] 工作进程 5817 已启动
|
||||
[2025-10-07 23:38:15 +0800] [5817] [INFO] 工作进程 5817 初始化完成
|
||||
[2025-10-07 23:38:15 +0800] [5800] [INFO] 工作进程 [booting] 即将启动
|
||||
[2025-10-07 23:38:15 +0800] [5818] [INFO] Booting worker with pid: 5818
|
||||
[2025-10-07 23:38:15 +0800] [5818] [INFO] 工作进程 5818 已启动
|
||||
[2025-10-07 23:38:15 +0800] [5818] [INFO] 工作进程 5818 初始化完成
|
||||
[2025-10-07 23:38:15 +0800] [5800] [INFO] 工作进程 [booting] 即将启动
|
||||
[2025-10-07 23:38:15 +0800] [5819] [INFO] Booting worker with pid: 5819
|
||||
[2025-10-07 23:38:15 +0800] [5819] [INFO] 工作进程 5819 已启动
|
||||
[2025-10-07 23:38:15 +0800] [5819] [INFO] 工作进程 5819 初始化完成
|
||||
[2025-10-07 23:38:15 +0800] [5800] [INFO] 工作进程 [booting] 即将启动
|
||||
[2025-10-07 23:38:15 +0800] [5820] [INFO] Booting worker with pid: 5820
|
||||
[2025-10-07 23:38:15 +0800] [5820] [INFO] 工作进程 5820 已启动
|
||||
[2025-10-07 23:38:15 +0800] [5820] [INFO] 工作进程 5820 初始化完成
|
||||
[2025-10-07 23:38:15 +0800] [5800] [INFO] 工作进程 [booting] 即将启动
|
||||
[2025-10-07 23:38:15 +0800] [5821] [INFO] Booting worker with pid: 5821
|
||||
[2025-10-07 23:38:15 +0800] [5821] [INFO] 工作进程 5821 已启动
|
||||
[2025-10-07 23:38:15 +0800] [5821] [INFO] 工作进程 5821 初始化完成
|
||||
[2025-10-07 23:46:57 +0800] [5817] [INFO] Worker exiting (pid: 5817)
|
||||
[2025-10-07 23:46:57 +0800] [5800] [INFO] Handling signal: term
|
||||
[2025-10-07 23:46:57 +0800] [5818] [INFO] Worker exiting (pid: 5818)
|
||||
[2025-10-07 23:46:57 +0800] [5819] [INFO] Worker exiting (pid: 5819)
|
||||
[2025-10-07 23:46:57 +0800] [5820] [INFO] Worker exiting (pid: 5820)
|
||||
[2025-10-07 23:46:57 +0800] [5821] [INFO] Worker exiting (pid: 5821)
|
||||
[2025-10-07 23:46:58 +0800] [5800] [INFO] Shutting down: Master
|
||||
[2025-10-07 23:47:18 +0800] [25390] [INFO] Starting gunicorn 21.2.0
|
||||
[2025-10-07 23:47:18 +0800] [25390] [INFO] Gunicorn服务器启动中...
|
||||
[2025-10-07 23:47:18 +0800] [25390] [INFO] Listening at: http://0.0.0.0:5002 (25390)
|
||||
[2025-10-07 23:47:18 +0800] [25390] [INFO] Using worker: sync
|
||||
[2025-10-07 23:47:18 +0800] [25390] [INFO] 工作进程 [booting] 即将启动
|
||||
[2025-10-07 23:47:18 +0800] [25403] [INFO] Booting worker with pid: 25403
|
||||
[2025-10-07 23:47:18 +0800] [25403] [INFO] 工作进程 25403 已启动
|
||||
[2025-10-07 23:47:18 +0800] [25403] [INFO] 工作进程 25403 初始化完成
|
||||
[2025-10-07 23:47:18 +0800] [25390] [INFO] 工作进程 [booting] 即将启动
|
||||
[2025-10-07 23:47:18 +0800] [25404] [INFO] Booting worker with pid: 25404
|
||||
[2025-10-07 23:47:18 +0800] [25404] [INFO] 工作进程 25404 已启动
|
||||
[2025-10-07 23:47:18 +0800] [25390] [INFO] 工作进程 [booting] 即将启动
|
||||
[2025-10-07 23:47:18 +0800] [25404] [INFO] 工作进程 25404 初始化完成
|
||||
[2025-10-07 23:47:18 +0800] [25405] [INFO] Booting worker with pid: 25405
|
||||
[2025-10-07 23:47:18 +0800] [25405] [INFO] 工作进程 25405 已启动
|
||||
[2025-10-07 23:47:18 +0800] [25405] [INFO] 工作进程 25405 初始化完成
|
||||
[2025-10-07 23:47:18 +0800] [25390] [INFO] 工作进程 [booting] 即将启动
|
||||
[2025-10-07 23:47:18 +0800] [25406] [INFO] Booting worker with pid: 25406
|
||||
[2025-10-07 23:47:18 +0800] [25406] [INFO] 工作进程 25406 已启动
|
||||
[2025-10-07 23:47:18 +0800] [25406] [INFO] 工作进程 25406 初始化完成
|
||||
[2025-10-07 23:47:18 +0800] [25390] [INFO] 工作进程 [booting] 即将启动
|
||||
[2025-10-07 23:47:18 +0800] [25407] [INFO] Booting worker with pid: 25407
|
||||
[2025-10-07 23:47:18 +0800] [25407] [INFO] 工作进程 25407 已启动
|
||||
[2025-10-07 23:47:18 +0800] [25407] [INFO] 工作进程 25407 初始化完成
|
||||
|
||||
@@ -4,10 +4,10 @@
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>提示词大师 - {% block title %}{% endblock %}</title>
|
||||
<!-- 添加 Google Fonts -->
|
||||
<!-- 添加 Google Fonts - Inter字体 -->
|
||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap" rel="stylesheet">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap" rel="stylesheet">
|
||||
<!-- Font Awesome -->
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css">
|
||||
<!-- Bootstrap CSS -->
|
||||
@@ -17,16 +17,43 @@
|
||||
<!-- Bootstrap JS -->
|
||||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js"></script>
|
||||
<style>
|
||||
/* 全局样式 */
|
||||
/* 全局样式 - 深蓝色科技感主题 */
|
||||
:root {
|
||||
--primary-color: #2196f3;
|
||||
--primary-dark: #1976d2;
|
||||
--secondary-color: #6c757d;
|
||||
--success-color: #28a745;
|
||||
--background-color: #f8f9fa;
|
||||
--border-color: #e0e0e0;
|
||||
--text-color: #2c3e50;
|
||||
--text-light: #666;
|
||||
/* 主色调 - 深蓝色系 */
|
||||
--primary-color: #1E3A8A; /* 深蓝主色 */
|
||||
--primary-light: #3B82F6; /* 浅蓝 */
|
||||
--primary-dark: #1E40AF; /* 深蓝 */
|
||||
--primary-lighter: #60A5FA; /* 更浅蓝 */
|
||||
|
||||
/* 辅助色 - 渐变蓝紫 */
|
||||
--secondary-color: #6366F1; /* 紫蓝 */
|
||||
--accent-color: #8B5CF6; /* 紫色 */
|
||||
--gradient-primary: linear-gradient(135deg, #6366F1, #8B5CF6);
|
||||
--gradient-secondary: linear-gradient(135deg, #1E3A8A, #3B82F6);
|
||||
|
||||
/* 功能色 */
|
||||
--success-color: #10B981; /* 绿色 */
|
||||
--warning-color: #F59E0B; /* 橙色 */
|
||||
--error-color: #EF4444; /* 红色 */
|
||||
--info-color: #06B6D4; /* 青色 */
|
||||
|
||||
/* 中性色 */
|
||||
--background-color: #F8FAFC; /* 中性背景 */
|
||||
--background-secondary: #F1F5F9; /* 次要背景 */
|
||||
--border-color: #E2E8F0; /* 边框色 */
|
||||
--border-light: #F1F5F9; /* 浅边框 */
|
||||
|
||||
/* 文字色 */
|
||||
--text-color: #0F172A; /* 深色文字 */
|
||||
--text-secondary: #475569; /* 次要文字 */
|
||||
--text-light: #64748B; /* 浅色文字 */
|
||||
--text-muted: #94A3B8; /* 静音文字 */
|
||||
|
||||
/* 阴影 */
|
||||
--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
|
||||
--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
|
||||
--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
|
||||
--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
|
||||
* {
|
||||
@@ -36,16 +63,38 @@
|
||||
}
|
||||
|
||||
body {
|
||||
font-family: 'Inter', -apple-system, BlinkMacSystemFont, system-ui, sans-serif;
|
||||
line-height: 1.5;
|
||||
font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
|
||||
line-height: 1.6;
|
||||
color: var(--text-color);
|
||||
background-color: var(--background-color);
|
||||
font-weight: 400;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
}
|
||||
|
||||
/* 字体层次系统 */
|
||||
h1, h2, h3, h4, h5, h6 {
|
||||
font-family: 'Inter', sans-serif;
|
||||
font-weight: 600;
|
||||
line-height: 1.3;
|
||||
color: var(--text-color);
|
||||
}
|
||||
|
||||
.font-display {
|
||||
font-family: 'Inter', sans-serif;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.font-mono {
|
||||
font-family: 'SF Mono', 'Monaco', 'Consolas', 'Liberation Mono', 'Courier New', monospace;
|
||||
}
|
||||
|
||||
/* 导航栏样式 */
|
||||
/* 导航栏样式 - 科技感设计 */
|
||||
header {
|
||||
background: white;
|
||||
box-shadow: 0 2px 4px rgba(0,0,0,0.1);
|
||||
background: rgba(255, 255, 255, 0.95);
|
||||
backdrop-filter: blur(10px);
|
||||
border-bottom: 1px solid var(--border-light);
|
||||
box-shadow: var(--shadow-sm);
|
||||
position: sticky;
|
||||
top: 0;
|
||||
z-index: 100;
|
||||
@@ -61,13 +110,21 @@
|
||||
}
|
||||
|
||||
.nav-brand {
|
||||
font-size: 1.25rem;
|
||||
font-weight: 600;
|
||||
color: var(--primary-color);
|
||||
font-size: 1.5rem;
|
||||
font-weight: 700;
|
||||
background: var(--gradient-primary);
|
||||
-webkit-background-clip: text;
|
||||
-webkit-text-fill-color: transparent;
|
||||
background-clip: text;
|
||||
text-decoration: none;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 0.5rem;
|
||||
gap: 0.75rem;
|
||||
transition: all 0.3s ease;
|
||||
}
|
||||
|
||||
.nav-brand:hover {
|
||||
transform: scale(1.05);
|
||||
}
|
||||
|
||||
.nav-brand i {
|
||||
@@ -81,21 +138,42 @@
|
||||
}
|
||||
|
||||
.nav-link {
|
||||
color: var(--text-color);
|
||||
color: var(--text-secondary);
|
||||
text-decoration: none;
|
||||
padding: 0.5rem 1rem;
|
||||
border-radius: 4px;
|
||||
padding: 0.75rem 1rem;
|
||||
border-radius: 8px;
|
||||
transition: all 0.3s ease;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 0.5rem;
|
||||
white-space: nowrap;
|
||||
min-width: fit-content;
|
||||
font-weight: 500;
|
||||
position: relative;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.nav-link::before {
|
||||
content: '';
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: -100%;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background: var(--gradient-primary);
|
||||
opacity: 0.1;
|
||||
transition: left 0.3s ease;
|
||||
z-index: -1;
|
||||
}
|
||||
|
||||
.nav-link:hover {
|
||||
background: var(--background-color);
|
||||
color: var(--primary-color);
|
||||
transform: translateY(-1px);
|
||||
box-shadow: var(--shadow-md);
|
||||
}
|
||||
|
||||
.nav-link:hover::before {
|
||||
left: 0;
|
||||
}
|
||||
|
||||
.nav-link i {
|
||||
@@ -212,22 +290,24 @@
|
||||
}
|
||||
|
||||
.user-menu .dropdown-toggle {
|
||||
background: none;
|
||||
background: var(--gradient-primary);
|
||||
border: none;
|
||||
color: var(--text-color);
|
||||
color: white;
|
||||
text-decoration: none;
|
||||
padding: 0.5rem 1rem;
|
||||
border-radius: 6px;
|
||||
padding: 0.75rem 1.25rem;
|
||||
border-radius: 12px;
|
||||
transition: all 0.3s ease;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 0.5rem;
|
||||
font-weight: 500;
|
||||
font-weight: 600;
|
||||
box-shadow: var(--shadow-md);
|
||||
}
|
||||
|
||||
.user-menu .dropdown-toggle:hover {
|
||||
background: var(--background-color);
|
||||
color: var(--primary-color);
|
||||
transform: translateY(-2px);
|
||||
box-shadow: var(--shadow-lg);
|
||||
background: var(--gradient-secondary);
|
||||
}
|
||||
|
||||
.user-menu .dropdown-toggle:focus {
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user