v1.7.9: Bug report system with Telegram integration - stable state before auto-diagnostics
This commit is contained in:
125
Logs/umbrix_bug_report_1769058542221.txt
Normal file
125
Logs/umbrix_bug_report_1769058542221.txt
Normal file
@@ -0,0 +1,125 @@
|
||||
🐛 БАГРЕПОРТ UMBRIX
|
||||
═══════════════════════════════
|
||||
|
||||
📝 ОПИСАНИЕ ПРОБЛЕМЫ:
|
||||
test3
|
||||
|
||||
═══════════════════════════════
|
||||
💻 УСТРОЙСТВО:
|
||||
Android AP3A.240905.015.A2.G998BXXSIHYK1
|
||||
|
||||
🔌 СТАТУС ПОДКЛЮЧЕНИЯ:
|
||||
CONNECTED
|
||||
|
||||
🌐 ПРОКСИ:
|
||||
Тип: ProxyType.urltest, Тег: auto, Пинг: 48ms
|
||||
Задержка: 48ms (✅ Отлично)
|
||||
|
||||
🕐 ВРЕМЯ:
|
||||
2026-01-22T08:09:01.776559
|
||||
|
||||
═══════════════════════════════
|
||||
📋 CORE LOGS (ПОЛНЫЕ):
|
||||
|
||||
|
||||
📋 APP LOGS (ПОЛНЫЕ):
|
||||
08:07:54.148257 - [D] PreferencesEntry<bool, bool>: getting persisted preference [auto_check_ip](bool)
|
||||
08:08:07.932215 - [D] PreferencesEntry<bool, dynamic>: getting persisted preference [disable_experimental_feature_notice](bool)
|
||||
08:08:07.939310 - [D] PreferencesEntry<bool, bool>: getting persisted preference [started_by_user](bool)
|
||||
08:08:07.939579 - [D] PreferencesEntry<bool, bool>: updating preference [started_by_user](bool) to [true]
|
||||
08:08:07.948091 - [D] PreferencesEntry<bool, bool>: getting persisted preference [disable_memory_limit](bool)
|
||||
08:08:07.958412 - [I] ConnectionRepositoryImpl: config options: {
|
||||
"region": "ru",
|
||||
"block-ads": false,
|
||||
"use-xray-core-when-possible": false,
|
||||
"execute-config-as-is": false,
|
||||
"log-level": "warn",
|
||||
"resolve-destination": false,
|
||||
"ipv6-mode": "ipv4_only",
|
||||
"remote-dns-address": "udp://1.1.1.1",
|
||||
"remote-dns-domain-strategy": "",
|
||||
"direct-dns-address": "1.1.1.1",
|
||||
"direct-dns-domain-strategy": "",
|
||||
"mixed-port": 12334,
|
||||
"tproxy-port": 12335,
|
||||
"local-dns-port": 16450,
|
||||
"tun-implementation": "gvisor",
|
||||
"mtu": 9000,
|
||||
"strict-route": true,
|
||||
"connection-test-url": "http://cp.cloudflare.com",
|
||||
"url-test-interval": 600,
|
||||
"enable-clash-api": true,
|
||||
"clash-api-port": 16756,
|
||||
"enable-tun": true,
|
||||
"enable-tun-service": false,
|
||||
"set-system-proxy": false,
|
||||
"bypass-lan": false,
|
||||
"allow-connection-from-lan": false,
|
||||
"enable-fake-dns": false,
|
||||
"enable-dns-routing": true,
|
||||
"independent-dns-cache": true,
|
||||
"rules": [],
|
||||
"mux": {
|
||||
"enable": false,
|
||||
"padding": false,
|
||||
"max-streams": 8,
|
||||
"protocol": "h2mux"
|
||||
},
|
||||
"tls-tricks": {
|
||||
"enable-fragment": false,
|
||||
"fragment-size": "10-30",
|
||||
"fragment-sleep": "2-8",
|
||||
"mixed-sni-case": false,
|
||||
"enable-padding": false,
|
||||
"padding-size": "1-1500"
|
||||
},
|
||||
"warp": {
|
||||
"enable": false,
|
||||
"mode": "proxy_over_warp",
|
||||
"wireguard-config": "",
|
||||
"license-key": "",
|
||||
"account-id": "",
|
||||
"access-token": "",
|
||||
"clean-ip": "auto",
|
||||
"clean-port": 0,
|
||||
"noise": "1-3",
|
||||
"noise-size": "10-30",
|
||||
"noise-delay": "10-30",
|
||||
"noise-mode": "m4"
|
||||
},
|
||||
"warp2": {
|
||||
"enable": false,
|
||||
"mode": "proxy_over_warp",
|
||||
"wireguard-config": "",
|
||||
"license-key": "",
|
||||
"account-id": "",
|
||||
"access-token": "",
|
||||
"clean-ip": "auto",
|
||||
"clean-port": 0,
|
||||
"noise": "1-3",
|
||||
"noise-size": "10-30",
|
||||
"noise-delay": "10-30",
|
||||
"noise-mode": "m4"
|
||||
},
|
||||
"per-app-proxy-mode": "off",
|
||||
"included-applications": [],
|
||||
"excluded-applications": []
|
||||
}
|
||||
Memory Limit: true
|
||||
08:08:07.963095 - [D] ConnectionRepositoryImpl: setting up singbox
|
||||
08:08:07.966368 - [D] PlatformSingboxService: changing options
|
||||
08:08:07.969445 - [D] PlatformSingboxService: starting
|
||||
08:08:09.624780 - [I] ConnectionNotifier: connection status: DISCONNECTED
|
||||
08:08:10.488389 - [I] ConnectionNotifier: connection status: CONNECTING
|
||||
08:08:11.299915 - [I] ConnectionNotifier: connection status: CONNECTED
|
||||
08:08:11.304006 - [D] IpInfoNotifier: disposing
|
||||
08:08:11.319044 - [D] ProxyRepositoryImpl: getting current ip info using [https://ipwho.is/]
|
||||
08:08:11.321248 - [D] PlatformSingboxService: watching active groups
|
||||
08:08:11.328357 - [D] PlatformSingboxService: watching stats
|
||||
08:08:11.335624 - [D] PreferencesEntry<bool, bool>: getting persisted preference [store_reviewed_by_user](bool)
|
||||
08:08:11.601832 - [D] PreferencesEntry<bool, bool>: updating preference [store_reviewed_by_user](bool) to [true]
|
||||
08:08:28.427748 - [E] app: Flutter Error: A RenderFlex overflowed by 31 pixels on the right.
|
||||
A RenderFlex overflowed by 31 pixels on the right.
|
||||
08:08:29.908294 - [E] app: Flutter Error: A RenderFlex overflowed by 60 pixels on the bottom.
|
||||
A RenderFlex overflowed by 60 pixels on the bottom.
|
||||
08:08:54.476924 - [D] AddProfile: disposing
|
||||
@@ -502,5 +502,9 @@
|
||||
"close": "Exit",
|
||||
"alertMessage": "Hide or Exit the application?",
|
||||
"remember": "Remember my choice"
|
||||
},
|
||||
"bugReport": {
|
||||
"title": "Report a Problem",
|
||||
"description": "Send bug report to support with automatic logs"
|
||||
}
|
||||
}
|
||||
@@ -502,5 +502,9 @@
|
||||
"close": "Закрыть",
|
||||
"alertMessage": "Скрыть приложение или выйти?",
|
||||
"remember": "Запомнить выбор"
|
||||
},
|
||||
"bugReport": {
|
||||
"title": "Сообщить о проблеме",
|
||||
"description": "Отправить багрепорт в техподдержку с автоматическими логами"
|
||||
}
|
||||
}
|
||||
@@ -17,12 +17,9 @@ class AppInfoEntity with _$AppInfoEntity {
|
||||
required Environment environment,
|
||||
}) = _AppInfoEntity;
|
||||
|
||||
String get userAgent =>
|
||||
"Umbrix/$version ($operatingSystem) like ClashMeta v2ray sing-box";
|
||||
String get userAgent => "Umbrix/$version ($operatingSystem) like ClashMeta v2ray sing-box";
|
||||
|
||||
String get presentVersion => environment == Environment.prod
|
||||
? version
|
||||
: "$version ${environment.name}";
|
||||
String get presentVersion => environment == Environment.prod ? version : "$version ${environment.name}";
|
||||
|
||||
/// formats app info for sharing
|
||||
String format() => '''
|
||||
|
||||
@@ -15,7 +15,7 @@ class BugReportDialog extends HookConsumerWidget {
|
||||
Widget build(BuildContext context, WidgetRef ref) {
|
||||
final t = ref.watch(translationsProvider);
|
||||
final theme = Theme.of(context);
|
||||
|
||||
|
||||
final descriptionController = useTextEditingController();
|
||||
final isSending = useState(false);
|
||||
final includeLogs = useState(true);
|
||||
|
||||
@@ -12,6 +12,7 @@ import 'package:umbrix/core/theme/app_theme_mode.dart';
|
||||
import 'package:umbrix/core/localization/locale_preferences.dart';
|
||||
import 'package:umbrix/core/localization/locale_extensions.dart';
|
||||
import 'package:umbrix/utils/utils.dart';
|
||||
import 'package:umbrix/features/bug_report/widget/bug_report_dialog.dart';
|
||||
|
||||
abstract interface class RootScaffold {
|
||||
static final stateKey = GlobalKey<ScaffoldState>();
|
||||
@@ -206,6 +207,7 @@ class _CustomAdaptiveScaffold extends HookConsumerWidget {
|
||||
),
|
||||
const SizedBox(height: 16),
|
||||
const Divider(),
|
||||
const _DrawerBugReportItem(),
|
||||
const _DrawerThemeItem(),
|
||||
const _DrawerLanguageItem(),
|
||||
const _DrawerLicensesItem(),
|
||||
@@ -374,3 +376,26 @@ class _DrawerLicensesItem extends ConsumerWidget {
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
// Виджет для отправки багрепорта
|
||||
class _DrawerBugReportItem extends ConsumerWidget {
|
||||
const _DrawerBugReportItem();
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context, WidgetRef ref) {
|
||||
final t = ref.watch(translationsProvider);
|
||||
|
||||
return ListTile(
|
||||
leading: const Icon(FluentIcons.bug_20_regular, size: 24),
|
||||
title: Text(t.bugReport.title),
|
||||
subtitle: Text(
|
||||
t.bugReport.description,
|
||||
style: Theme.of(context).textTheme.bodySmall,
|
||||
),
|
||||
onTap: () {
|
||||
RootScaffold.stateKey.currentState?.closeDrawer();
|
||||
BugReportDialog.show(context);
|
||||
},
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user