From 0fe1b53248aa2ed1dd9f60fd5dd9e6da0bba8811 Mon Sep 17 00:00:00 2001 From: wsxyt Date: Sun, 11 Jan 2026 14:13:04 +0800 Subject: [PATCH 1/4] fix(sentry): update Sentry DSN configuration --- main.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/main.py b/main.py index e7de2b37..4e9ccf90 100644 --- a/main.py +++ b/main.py @@ -45,7 +45,7 @@ def before_send(event, hint): return event sentry_sdk.init( - dsn="https://f079219d4004591e72e6e4e4155023fe@o4510689230192640.ingest.us.sentry.io/4510689241071616", + dsn="https://f48074b49e319f7b952583c283046259@o4510289605296128.ingest.de.sentry.io/4510681366659152", integrations=[ LoguruIntegration( level=LoggingLevels.INFO.value, From 6f20886db4fc41b4a772dc0fe21e273d222326ae Mon Sep 17 00:00:00 2001 From: wsxyt Date: Sun, 11 Jan 2026 15:12:11 +0800 Subject: [PATCH 2/4] feat(sentry): configure environment and release version for better tracking --- main.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/main.py b/main.py index 4e9ccf90..3e711055 100644 --- a/main.py +++ b/main.py @@ -12,7 +12,7 @@ from app.tools.path_utils import get_app_root from app.tools.config import configure_logging from app.tools.settings_access import readme_settings_async -from app.tools.variable import APP_QUIT_ON_LAST_WINDOW_CLOSED +from app.tools.variable import APP_QUIT_ON_LAST_WINDOW_CLOSED, VERSION from app.core.single_instance import ( check_single_instance, setup_local_server, @@ -44,8 +44,15 @@ def before_send(event, hint): return None return event + # 设置 Sentry 环境和版本 + # 开发环境:包含 "0.0.0" 的版本号 + # 生产环境:不包含 "0.0.0" 的版本号 + environment = "development" if "0.0.0" in VERSION else "production" + sentry_sdk.init( dsn="https://f48074b49e319f7b952583c283046259@o4510289605296128.ingest.de.sentry.io/4510681366659152", + environment=environment, + release=VERSION, integrations=[ LoguruIntegration( level=LoggingLevels.INFO.value, @@ -54,7 +61,6 @@ def before_send(event, hint): ], before_send=before_send, send_default_pii=True, - enable_logs=True, ) wm.app_start_time = time.perf_counter() @@ -69,7 +75,6 @@ def before_send(event, hint): if arg.startswith("secrandom://"): send_url_to_existing_instance(arg) break - logger.info("程序将退出,已有实例已激活") sys.exit(0) From 85f236847f614597db5de7e7be100bf1010f7c38 Mon Sep 17 00:00:00 2001 From: wsxyt Date: Sun, 11 Jan 2026 15:17:51 +0800 Subject: [PATCH 3/4] feat(sentry): enable logs for improved debugging and tracking --- main.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/main.py b/main.py index 3e711055..9df36a24 100644 --- a/main.py +++ b/main.py @@ -61,6 +61,7 @@ def before_send(event, hint): ], before_send=before_send, send_default_pii=True, + enable_logs=True, ) wm.app_start_time = time.perf_counter() @@ -75,6 +76,7 @@ def before_send(event, hint): if arg.startswith("secrandom://"): send_url_to_existing_instance(arg) break + logger.info("程序将退出,已有实例已激活") sys.exit(0) From 28feef5d1e35b30456f77e8fe6f9dab340bc7a52 Mon Sep 17 00:00:00 2001 From: wsxyt Date: Sun, 11 Jan 2026 15:28:09 +0800 Subject: [PATCH 4/4] feat(sentry): add dynamic environment and release detection for improved configuration --- main.py | 42 ++++++++++++++++++++++-------------------- 1 file changed, 22 insertions(+), 20 deletions(-) diff --git a/main.py b/main.py index cb82002f..702f498b 100644 --- a/main.py +++ b/main.py @@ -38,26 +38,28 @@ def main(): logger.remove() configure_logging() - if VERSION != "v0.0.0": - - def before_send(event, hint): - # 如果事件中不包含异常信息(即没有堆栈),则不上传 - if "exception" not in event: - return None - return event - - sentry_sdk.init( - dsn="https://f48074b49e319f7b952583c283046259@o4510289605296128.ingest.de.sentry.io/4510681366659152", - integrations=[ - LoguruIntegration( - level=LoggingLevels.INFO.value, - event_level=LoggingLevels.ERROR.value, - ), - ], - before_send=before_send, - send_default_pii=True, - enable_logs=True, - ) + # Sentry 环境与版本号自动识别 + environment = "development" if "0.0.0" in VERSION else "production" + + def before_send(event, hint): + # 如果事件中不包含异常信息(即没有堆栈),则不上传 + if "exception" not in event: + return None + return event + + sentry_sdk.init( + dsn="https://f48074b49e319f7b952583c283046259@o4510289605296128.ingest.de.sentry.io/4510681366659152", + integrations=[ + LoguruIntegration( + level=LoggingLevels.INFO.value, + event_level=LoggingLevels.ERROR.value, + ), + ], + before_send=before_send, + environment=environment, + release=VERSION, + send_default_pii=True, + ) wm.app_start_time = time.perf_counter()