BettaFish
BettaFish copied to clipboard
我开启的详细异常捕获后,找到部分终端无法启动insight模块的原因了,不清楚其他人是否和我一样。
背景
我在一台windows10的台式电脑中,一直没有办法启动insight的应用,并且控制台和日志也没有报错,我也提了issue,但是可用信息太低,没有办法完全定位。所以我今天就放到一台云电脑,发现是可以正常执行的。
排查
我猜测可能是因为我这台windows10电脑的问题,毕竟是公司里面的古董机了,猜测可能是C底层报错,就直设置详细内容输出:
set PYTHONFAULTHANDLER=1
set PYTHONVERBOSE=1
python app.py
果然出现异常原因了:
核心点异常内容(code 0xc0000374)。:
[16:17:29] import 'utils.github_issues' # <_frozen_importlib_external.SourceFileLoader object at 0x00000181664D3190> [16:17:29] Windows fatal exception: code 0xc0000374 [16:17:29] Thread 0x00060258 (most recent call first): [16:17:29] File "D:\anaconda3\envs\bettaFish\Lib\site-packages\watchdog\observers\winapi.py", line 326 in read_directory_changes
猜测
-
watchdog 使用的底层 Windows API (ReadDirectoryChangesW) 出错;
-
与其他原生扩展(如 torch, numpy, opencv, onnxruntime 等)交叉导致内存破坏;
-
或多线程访问同一底层资源(文件句柄、模型内存)造成。
完整异常
[16:17:29] WeiboMultilingualSentimentAnalyzer 已创建,调用 initialize() 来加载模型
[16:17:29] import 'InsightEngine.tools.sentiment_analyzer' # <_frozen_importlib_external.SourceFileLoader object at 0x0000018141958810>
[16:17:29] import 'InsightEngine.tools' # <_frozen_importlib_external.SourceFileLoader object at 0x000001813F10A210>
[16:17:29] import 'InsightEngine.agent' # <_frozen_importlib_external.SourceFileLoader object at 0x000001813F0DBFD0>
[16:17:29] import 'InsightEngine' # <_frozen_importlib_external.SourceFileLoader object at 0x000001813F0797D0>
[16:17:29] # possible namespace for D:\python-project\BettaFish-main-modify\BettaFish-main\SingleEngineApp\..\utils
[16:17:29] # possible namespace for D:\python-project\BettaFish-main-modify\BettaFish-main\utils
[16:17:29] # possible namespace for D:\python-project\BettaFish-main-modify\BettaFish-main\utils
[16:17:29] # possible namespace for D:\python-project\BettaFish-main-modify\BettaFish-main\SingleEngineApp\..\utils
[16:17:29] # D:\python-project\BettaFish-main-modify\BettaFish-main\SingleEngineApp\..\utils\__pycache__\github_issues.cpython-311.pyc matches D:\python-project\BettaFish-main-modify\BettaFish-main\SingleEngineApp\..\utils\github_issues.py
[16:17:29] # code object from 'D:\\python-project\\BettaFish-main-modify\\BettaFish-main\\SingleEngineApp\\..\\utils\\__pycache__\\github_issues.cpython-311.pyc'
[16:17:29] import 'utils.github_issues' # <_frozen_importlib_external.SourceFileLoader object at 0x00000181664D3190>
[16:17:29] Windows fatal exception: code 0xc0000374
[16:17:29] Thread 0x00060258 (most recent call first):
[16:17:29] File "D:\anaconda3\envs\bettaFish\Lib\site-packages\watchdog\observers\winapi.py", line 326 in read_directory_changes
[16:17:29] File "D:\anaconda3\envs\bettaFish\Lib\site-packages\watchdog\observers\winapi.py", line 380 in read_events
[16:17:29] File "D:\anaconda3\envs\bettaFish\Lib\site-packages\watchdog\observers\read_directory_changes.py", line 67 in _read_events
[16:17:29] File "D:\anaconda3\envs\bettaFish\Lib\site-packages\watchdog\observers\read_directory_changes.py", line 70 in queue_events
[16:17:29] File "D:\anaconda3\envs\bettaFish\Lib\site-packages\watchdog\observers\api.py", line 158 in run
[16:17:29] File "D:\anaconda3\envs\bettaFish\Lib\threading.py", line 1045 in _bootstrap_inner
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\threading.py", line 1002 in _bootstrap
[16:17:30] Thread 0x000523c4 (most recent call first):
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\threading.py", line 327 in wait
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\queue.py", line 171 in get
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\site-packages\watchdog\observers\api.py", line 379 in dispatch_events
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\site-packages\watchdog\observers\api.py", line 213 in run
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\threading.py", line 1045 in _bootstrap_inner
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\threading.py", line 1002 in _bootstrap
[16:17:30] Current thread 0x0006b1d4 (most recent call first):
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\logging\__init__.py", line 624 in formatTime
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\logging\__init__.py", line 689 in format
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\logging\__init__.py", line 953 in format
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\logging\__init__.py", line 1110 in emit
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\logging\__init__.py", line 978 in handle
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\logging\__init__.py", line 1706 in callHandlers
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\logging\__init__.py", line 1644 in handle
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\logging\__init__.py", line 1634 in _log
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\logging\__init__.py", line 1501 in warning
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\site-packages\streamlit\watcher\local_sources_watcher.py", line 189 in get_module_paths
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\site-packages\streamlit\watcher\local_sources_watcher.py", line 140 in <dictcomp>
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\site-packages\streamlit\watcher\local_sources_watcher.py", line 139 in update_watched_modules
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\site-packages\streamlit\runtime\app_session.py", line 559 in _handle_scriptrunner_event_on_event_loop
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\site-packages\streamlit\runtime\app_session.py", line 463 in <lambda>
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\asyncio\events.py", line 84 in _run
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\asyncio\base_events.py", line 1936 in _run_once
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\asyncio\base_events.py", line 608 in run_forever
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\asyncio\base_events.py", line 641 in run_until_complete
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\asyncio\runners.py", line 118 in run
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\asyncio\runners.py", line 190 in run
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\site-packages\streamlit\web\bootstrap.py", line 430 in run
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\site-packages\streamlit\web\cli.py", line 269 in _main_run
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\site-packages\streamlit\web\cli.py", line 233 in main_run
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\site-packages\click\core.py", line 814 in invoke
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\site-packages\click\core.py", line 1246 in invoke
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\site-packages\click\core.py", line 1850 in invoke
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\site-packages\click\core.py", line 1383 in main
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\site-packages\click\core.py", line 1462 in __call__
[16:17:30] File "D:\anaconda3\envs\bettaFish\Lib\site-packages\streamlit\__main__.py", line 20 in <module>
[16:17:30] File "<frozen runpy>", line 88 in _run_code
[16:17:30] File "<frozen runpy>", line 198 in _run_module_as_main
这个问题有点高端了。