Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug] In-app debug log collector throws NoSuchFileException #1870

Open
ColorfulRhino opened this issue Feb 12, 2025 · 4 comments
Open

[Bug] In-app debug log collector throws NoSuchFileException #1870

ColorfulRhino opened this issue Feb 12, 2025 · 4 comments
Assignees

Comments

@ColorfulRhino
Copy link

ColorfulRhino commented Feb 12, 2025

Bug description

Sometimesthe RethinkDNS background process crashes due to the app not able to access its collected log file I believe. This leaves the device without any block lists or firewall, which is rather bad for obvious leakage reasons.

The error is:

E WM-WorkerWrapper: Work [ id=b440aa56-9260-45c2-af48-091785de4076, tags={ com.celzero.bravedns.scheduler.BugReportCollector, ScheduledCollectAppExitInfoJob } ] failed because it threw an exception/error
E WM-WorkerWrapper: java.util.concurrent.ExecutionException: java.nio.file.NoSuchFileException: /data/data/com.celzero.bravedns/files/rethinkdns.bugreport.zip

Logs

Please see the following log:

Logcat

01-22 02:24:59.403 31466 31466 I libc    : SetHeapTaggingLevel: tag level set to 0
01-22 02:24:59.407 31466 31466 I elzero.bravedns: Using CollectorTypeCMC GC.
01-22 02:24:59.410 31466 31466 E elzero.bravedns: Not starting debugger since process cannot load the jdwp agent.
01-22 02:24:59.467 31466 31466 W libc    : Access denied finding property "ro.debuggable"
01-22 02:24:59.476 31466 31466 W libc    : Access denied finding property "ro.debuggable"
01-22 02:24:59.476 31466 31466 W libc    : Access denied finding property "ro.debuggable"
01-22 02:24:59.476 31466 31466 W libc    : Access denied finding property "ro.debuggable"
01-22 02:24:59.477 31466 31466 D AndroidRuntime: >>>>>> START com.android.internal.os.RuntimeInit uid 10170 <<<<<<
01-22 02:24:59.478 31466 31466 W libc    : Access denied finding property "ro.debuggable"
01-22 02:24:59.481 31466 31466 I com.celzero.bravedns: MMAP_TRYLOCK is supported in uffd errno:2 addr:0xc85cc97c1000 size:4096
01-22 02:24:59.482 31466 31466 I AndroidRuntime: Using default boot image
01-22 02:24:59.482 31466 31466 I AndroidRuntime: Leaving lock profiling enabled
01-22 02:24:59.482 31466 31466 W libc    : Access denied finding property "odsign.verification.success"
01-22 02:24:59.482 31466 31466 W libc    : Access denied finding property "ro.debuggable"
01-22 02:24:59.483 31466 31466 E cutils-trace: Error opening trace file: No such file or directory (2)
01-22 02:24:59.484 31466 31466 W com.celzero.bravedns: ART APEX data files are untrusted.
01-22 02:24:59.484 31466 31466 I com.celzero.bravedns: Using CollectorTypeCMC GC.
01-22 02:24:59.552 31466 31466 D nativeloader: InitDefaultPublicLibraries for_preload=1: libandroid.so:libaaudio.so:libamidi.so:libbinder_ndk.so:libc.so:libcamera2ndk.so:libdl.so:libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libicu.so:libicui18n.so:libicuuc.so:libjnigraphics.so:liblog.so:libmediandk.so:libm.so:libnativehelper.so:libnativewindow.so:libOpenMAXAL.so:libOpenSLES.so:libRS.so:libstdc++.so:libsync.so:libvulkan.so:libwebviewchromium_plat_support.so:libz.so
01-22 02:24:59.569 31466 31466 D nativeloader: Load libicu_jni.so using APEX ns com_android_art for caller /apex/com.android.art/javalib/core-oj.jar: ok
01-22 02:24:59.569 31466 31466 D com.celzero.bravedns: u_setTimeZoneFilesDirectory("/apex/com.android.tzdata/etc/tz/versioned/8/icu") succeeded. 
01-22 02:24:59.569 31466 31466 D com.celzero.bravedns: I18n APEX ICU file found: /apex/com.android.i18n/etc/icu/icudt75l.dat
01-22 02:24:59.570 31466 31466 D nativeloader: Load libjavacore.so using APEX ns com_android_art for caller /apex/com.android.art/javalib/core-oj.jar: ok
01-22 02:24:59.571 31466 31466 D nativeloader: Load libopenjdk.so using APEX ns com_android_art for caller /apex/com.android.art/javalib/core-oj.jar: ok
01-22 02:24:59.587 31466 31466 W libc    : Access denied finding property "ro.product.name_for_attestation"
01-22 02:24:59.587 31466 31466 W libc    : Access denied finding property "ro.product.device_for_attestation"
01-22 02:24:59.587 31466 31466 W libc    : Access denied finding property "ro.product.manufacturer_for_attestation"
01-22 02:24:59.587 31466 31466 W libc    : Access denied finding property "ro.product.brand_for_attestation"
01-22 02:24:59.587 31466 31466 W libc    : Access denied finding property "ro.product.model_for_attestation"
01-22 02:24:59.588 31466 31466 W libc    : Access denied finding property "ro.debuggable"
01-22 02:24:59.597 31466 31466 D nativeloader: Load libframework-connectivity-tiramisu-jni.so using APEX ns com_android_tethering for caller /apex/com.android.tethering/javalib/framework-connectivity-t.jar: ok
01-22 02:24:59.597 31466 31466 D AndroidRuntime: Calling main entry com.android.internal.os.ExecInit
01-22 02:24:59.597 31466 31466 D Zygote  : begin preload
01-22 02:24:59.597 31466 31466 I Zygote  : Calling ZygoteHooks.beginPreload()
01-22 02:24:59.613 31466 31466 I Zygote  : Preloading shared libraries...
01-22 02:24:59.614 31466 31466 D nativeloader: Load libandroid.so using system ns (caller=/system/framework/framework.jar!classes5.dex): ok
01-22 02:24:59.615 31466 31466 D nativeloader: Load libjnigraphics.so using system ns (caller=/system/framework/framework.jar!classes5.dex): ok
01-22 02:24:59.615 31466 31466 D nativeloader: Load libcompiler_rt.so using system ns (caller=/system/framework/framework.jar!classes5.dex): ok
01-22 02:24:59.615 31466 31466 E com.celzero.bravedns: Unable to find pattern file or unable to map it for am
01-22 02:24:59.616 31466 31466 I Zygote  : Called ZygoteHooks.endPreload()
01-22 02:24:59.618 31466 31466 D nativeloader: Load libjavacrypto.so using APEX ns com_android_conscrypt for caller /apex/com.android.conscrypt/javalib/conscrypt.jar: ok
01-22 02:24:59.622 31466 31466 I Zygote  : Installed AndroidKeyStoreProvider in 6ms.
01-22 02:24:59.622 31466 31466 D Zygote  : end preload
01-22 02:24:59.622 31466 31466 I libc    : SetHeapTaggingLevel: tag level set to 0
01-22 02:24:59.630 31466 31490 W libc    : Access denied finding property "qemu.sf.lcd_density"
01-22 02:24:59.630 31466 31490 W libc    : Access denied finding property "qemu.sf.lcd_density"
01-22 02:24:59.640 31466 31466 D nativeloader: Load libstats_jni.so using APEX ns com_android_os_statsd for caller /apex/com.android.os.statsd/javalib/framework-statsd.jar: ok
01-22 02:24:59.640 31466 31466 D CompatChangeReporter: Compat change id reported: 242716250; UID 10170; state: ENABLED
01-22 02:24:59.640 31466 31466 I Typeface: Preloading /system/fonts/Roboto-Regular.ttf
01-22 02:24:59.640 31466 31466 I Typeface: Preloading /system/fonts/RobotoStatic-Regular.ttf
01-22 02:24:59.648 31466 31466 I SystemFonts: Loading font config from /system/etc/fonts.xml
01-22 02:24:59.650 31466 31466 D CompatChangeReporter: Compat change id reported: 247079863; UID 10170; state: ENABLED
01-22 02:24:59.691 31466 31466 D nativeloader: InitApexLibraries:
01-22 02:24:59.691 31466 31466 D nativeloader:   com_android_art: libnativehelper.so
01-22 02:24:59.691 31466 31466 D nativeloader:   com_android_i18n: libicui18n.so:libicuuc.so:libicu.so
01-22 02:24:59.691 31466 31466 D nativeloader:   com_android_neuralnetworks: libneuralnetworks.so
01-22 02:24:59.691 31466 31466 D nativeloader: InitDefaultPublicLibraries for_preload=0: libandroid.so:libaaudio.so:libamidi.so:libbinder_ndk.so:libc.so:libcamera2ndk.so:libclang_rt.hwasan-aarch64-android.so:libdl.so:libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libjnigraphics.so:liblog.so:libmediandk.so:libm.so:libnativewindow.so:libOpenMAXAL.so:libOpenSLES.so:libRS.so:libstdc++.so:libsync.so:libvulkan.so:libwebviewchromium_plat_support.so:libz.so
01-22 02:24:59.691 31466 31466 D nativeloader: Configuring clns-1 for other apk /system_ext/framework/androidx.window.extensions.jar. target_sdk_version=34, uses_libraries=ALL, library_path=/data/app/~~nGwAhWw2sWk8BS5ZdSXhfw==/com.celzero.bravedns-m9KZeWqU8SVYfL-0aG7rXw==/lib/arm64:/data/app/~~nGwAhWw2sWk8BS5ZdSXhfw==/com.celzero.bravedns-m9KZeWqU8SVYfL-0aG7rXw==/base.apk!/lib/arm64-v8a, permitted_path=/data:/mnt/expand:/data/user/0/com.celzero.bravedns
01-22 02:24:59.691 31466 31466 D nativeloader: InitExtendedPublicLibraries: libedgetpu_dba.google.so
01-22 02:24:59.691 31466 31466 D nativeloader: Extending system_exposed_libraries: libedgetpu_dba.google.so
01-22 02:24:59.693 31466 31466 D nativeloader: InitVendorPublicLibraries: libOpenCL.so:libOpenCL-pixel.so:libedgetpu_client.google.so:libedgetpu_util.so:lib_aion_buffer.so:libgxp.so:gxp_metrics_logger.so
01-22 02:24:59.693 31466 31466 D nativeloader: InitProductPublicLibraries: 
01-22 02:24:59.697 31466 31466 D nativeloader: Configuring clns-2 for other apk /system_ext/framework/androidx.window.sidecar.jar. target_sdk_version=34, uses_libraries=ALL, library_path=/data/app/~~nGwAhWw2sWk8BS5ZdSXhfw==/com.celzero.bravedns-m9KZeWqU8SVYfL-0aG7rXw==/lib/arm64:/data/app/~~nGwAhWw2sWk8BS5ZdSXhfw==/com.celzero.bravedns-m9KZeWqU8SVYfL-0aG7rXw==/base.apk!/lib/arm64-v8a, permitted_path=/data:/mnt/expand:/data/user/0/com.celzero.bravedns
01-22 02:24:59.697 31466 31466 D nativeloader: Extending system_exposed_libraries: libedgetpu_dba.google.so
01-22 02:24:59.736 31466 31466 D nativeloader: Configuring clns-3 for other apk /data/app/~~nGwAhWw2sWk8BS5ZdSXhfw==/com.celzero.bravedns-m9KZeWqU8SVYfL-0aG7rXw==/base.apk. target_sdk_version=34, uses_libraries=, library_path=/data/app/~~nGwAhWw2sWk8BS5ZdSXhfw==/com.celzero.bravedns-m9KZeWqU8SVYfL-0aG7rXw==/lib/arm64:/data/app/~~nGwAhWw2sWk8BS5ZdSXhfw==/com.celzero.bravedns-m9KZeWqU8SVYfL-0aG7rXw==/base.apk!/lib/arm64-v8a, permitted_path=/data:/mnt/expand:/data/user/0/com.celzero.bravedns
01-22 02:24:59.748 31466 31466 D nativeloader: Load libframework-connectivity-jni.so using APEX ns com_android_tethering for caller /apex/com.android.tethering/javalib/framework-connectivity.jar: ok
01-22 02:24:59.750 31466 31466 V GraphicsEnvironment: Currently set values for:
01-22 02:24:59.750 31466 31466 V GraphicsEnvironment:   angle_gl_driver_selection_pkgs=[com.android.angle, com.linecorp.b612.android, com.campmobile.snow, com.google.android.apps.tachyon]
01-22 02:24:59.750 31466 31466 V GraphicsEnvironment:   angle_gl_driver_selection_values=[angle, native, native, native]
01-22 02:24:59.750 31466 31466 V GraphicsEnvironment: com.celzero.bravedns is not listed in per-application setting
01-22 02:24:59.750 31466 31466 V GraphicsEnvironment: Neither updatable production driver nor prerelease driver is supported.
01-22 02:24:59.757 31466 31466 D WM-WrkMgrInitializer: Initializing WorkManager with default configuration.
01-22 02:24:59.759 31466 31466 W libc    : Access denied finding property "ro.debuggable"
01-22 02:24:59.762 31466 31466 D WM-PackageManagerHelper: Skipping component enablement for androidx.work.impl.background.systemjob.SystemJobService
01-22 02:24:59.762 31466 31466 D WM-Schedulers: Created SystemJobScheduler and enabled SystemJobService
01-22 02:24:59.780 31466 31495 I JobScheduler: Job ScheduledRefreshAppsJob already scheduled check
01-22 02:24:59.809 31466 31466 D DesktopModeFlagsUtil: Toggle override initialized to: OVERRIDE_UNSET
01-22 02:24:59.816 31466 31506 D CompatChangeReporter: Compat change id reported: 253665015; UID 10170; state: ENABLED
01-22 02:24:59.827 31466 31508 D CompatChangeReporter: Compat change id reported: 263076149; UID 10170; state: ENABLED
01-22 02:24:59.827 31466 31495 I JobScheduler: Job ScheduledRefreshAppsJob already scheduled? true
01-22 02:24:59.827 31466 31495 I JobScheduler: Data usage job scheduled
--------- switch to events
01-22 02:24:59.846 31466 31466 I wm_on_create_called: [Token=6750391,Component Name=com.celzero.bravedns.ui.HomeScreenActivity,Reason=performCreate,time=52ms]
01-22 02:24:59.869 31466 31466 I wm_on_start_called: [Token=6750391,Component Name=com.celzero.bravedns.ui.HomeScreenActivity,Reason=handleStartActivity,time=22ms]
01-22 02:24:59.872 31466 31466 I wm_on_resume_called: [Token=6750391,Component Name=com.celzero.bravedns.ui.HomeScreenActivity,Reason=RESUME_ACTIVITY,time=2ms]
--------- switch to main
01-22 02:24:59.873 31466 31466 I JobScheduler: Job ScheduledCollectAppExitInfoJob already running? true
01-22 02:24:59.873 31466 31466 I VpnLifecycle: start VPN (previous state)
01-22 02:24:59.873 31466 31466 I VpnLifecycle: Preparing VPN service
01-22 02:24:59.874 31466 31466 I VpnLifecycle: VPN service is prepared, starting VPN service
01-22 02:24:59.876 31466 31466 I VpnLifecycle: VPNController - Start(Synchronized) executed - com.celzero.bravedns.ui.HomeScreenActivity@91e3047
01-22 02:24:59.891 31466 31466 D nativeloader: Load /data/app/~~nGwAhWw2sWk8BS5ZdSXhfw==/com.celzero.bravedns-m9KZeWqU8SVYfL-0aG7rXw==/base.apk!/lib/arm64-v8a/libgojni.so using ns clns-3 from class loader (caller=/data/app/~~nGwAhWw2sWk8BS5ZdSXhfw==/com.celzero.bravedns-m9KZeWqU8SVYfL-0aG7rXw==/base.apk): ok
01-22 02:24:59.939 31466 31522 I AppDatabase: Database opened, 23
--------- switch to events
01-22 02:24:59.953 31466 31466 I wm_on_top_resumed_gained_called: [Token=6750391,Component Name=com.celzero.bravedns.ui.HomeScreenActivity,Reason=topStateChangedWhenResumed]
--------- beginning of system
01-22 02:24:59.957 31466 31466 W ActivityThread: getPackageInfo() called with an older ApplicationInfo than the cached version for package com.celzero.bravedns
--------- switch to main
01-22 02:24:59.962 31466 31466 I VpnLifecycle: onStartCommand, us: 10170 / pid: 31466, primary? true
--------- switch to events
01-22 02:25:00.072 31466 31466 I viewroot_draw_event: [window=VRI[HomeScreenActivity],event=reportDrawFinished seqId=0]
--------- switch to main
01-22 02:25:00.074 31466 31527 I JobScheduler: purging logs older than 7 days, date: 1736907900074
01-22 02:25:00.076 31466 31466 I VpnLifecycle: No notification action
01-22 02:25:00.079 31466 31510 E WM-WorkerWrapper: Work [ id=b440aa56-9260-45c2-af48-091785de4076, tags={ com.celzero.bravedns.scheduler.BugReportCollector, ScheduledCollectAppExitInfoJob } ] failed because it threw an exception/error
01-22 02:25:00.079 31466 31510 E WM-WorkerWrapper: java.util.concurrent.ExecutionException: java.nio.file.NoSuchFileException: /data/data/com.celzero.bravedns/files/rethinkdns.bugreport.zip
01-22 02:25:00.079 31466 31510 E WM-WorkerWrapper: 	at androidx.work.impl.utils.futures.AbstractFuture.getDoneValue(Unknown Source:20)
01-22 02:25:00.079 31466 31510 E WM-WorkerWrapper: 	at androidx.work.impl.utils.futures.AbstractFuture.get(SourceFile:0)
01-22 02:25:00.079 31466 31510 E WM-WorkerWrapper: 	at androidx.work.impl.WorkerWrapper$2.run(Unknown Source:4)
01-22 02:25:00.079 31466 31510 E WM-WorkerWrapper: 	at androidx.work.impl.utils.SerialExecutorImpl$Task.run(Unknown Source:2)
01-22 02:25:00.079 31466 31510 E WM-WorkerWrapper: 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
01-22 02:25:00.079 31466 31510 E WM-WorkerWrapper: 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644)
01-22 02:25:00.079 31466 31510 E WM-WorkerWrapper: 	at java.lang.Thread.run(Thread.java:1117)
01-22 02:25:00.079 31466 31510 E WM-WorkerWrapper: Caused by: java.nio.file.NoSuchFileException: /data/data/com.celzero.bravedns/files/rethinkdns.bugreport.zip
01-22 02:25:00.079 31466 31510 E WM-WorkerWrapper: 	at sun.nio.fs.UnixFileAttributeViews$Basic.readAttributes(UnixFileAttributeViews.java:55)
01-22 02:25:00.079 31466 31510 E WM-WorkerWrapper: 	at sun.nio.fs.UnixFileSystemProvider.readAttributes(UnixFileSystemProvider.java:150)
01-22 02:25:00.079 31466 31510 E WM-WorkerWrapper: 	at sun.nio.fs.LinuxFileSystemProvider.readAttributes(LinuxFileSystemProvider.java:115)
01-22 02:25:00.079 31466 31510 E WM-WorkerWrapper: 	at java.nio.file.Files.readAttributes(Files.java:1737)
01-22 02:25:00.079 31466 31510 E WM-WorkerWrapper: 	at java.util.zip.ZipFile$Source.get(ZipFile.java:1378)
01-22 02:25:00.079 31466 31510 E WM-WorkerWrapper: 	at java.util.zip.ZipFile$CleanableResource.<init>(ZipFile.java:769)
01-22 02:25:00.079 31466 31510 E WM-WorkerWrapper: 	at java.util.zip.ZipFile.<init>(ZipFile.java:280)
01-22 02:25:00.079 31466 31510 E WM-WorkerWrapper: 	at java.util.zip.ZipFile.<init>(ZipFile.java:236)
01-22 02:25:00.079 31466 31510 E WM-WorkerWrapper: 	at java.util.zip.ZipFile.<init>(ZipFile.java:184)
01-22 02:25:00.079 31466 31510 E WM-WorkerWrapper: 	at java.util.zip.ZipFile.<init>(ZipFile.java:153)
01-22 02:25:00.079 31466 31510 E WM-WorkerWrapper: 	at com.celzero.bravedns.scheduler.BugReportZipper.getZipFile(Unknown Source:9)
01-22 02:25:00.079 31466 31510 E WM-WorkerWrapper: 	at com.celzero.bravedns.scheduler.BugReportZipper.prepare(Unknown Source:50)
01-22 02:25:00.079 31466 31510 E WM-WorkerWrapper: 	at com.celzero.bravedns.scheduler.BugReportCollector.prepare(Unknown Source:15)
01-22 02:25:00.079 31466 31510 E WM-WorkerWrapper: 	at com.celzero.bravedns.scheduler.BugReportCollector.doWork(Unknown Source:87)
01-22 02:25:00.079 31466 31510 E WM-WorkerWrapper: 	at androidx.work.CoroutineWorker$startWork$1.invokeSuspend(Unknown Source:32)
01-22 02:25:00.079 31466 31510 E WM-WorkerWrapper: 	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(Unknown Source:11)
01-22 02:25:00.079 31466 31510 E WM-WorkerWrapper: 	at kotlinx.coroutines.DispatchedTask.run(Unknown Source:98)
01-22 02:25:00.079 31466 31510 E WM-WorkerWrapper: 	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(Unknown Source:0)
01-22 02:25:00.079 31466 31510 E WM-WorkerWrapper: 	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(Unknown Source:14)
01-22 02:25:00.079 31466 31510 E WM-WorkerWrapper: 	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(Unknown Source:28)
01-22 02:25:00.079 31466 31510 E WM-WorkerWrapper: 	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(Unknown Source:0)
01-22 02:25:00.079 31466 31510 I WM-WorkerWrapper: Worker result FAILURE for Work [ id=b440aa56-9260-45c2-af48-091785de4076, tags={ com.celzero.bravedns.scheduler.BugReportCollector, ScheduledCollectAppExitInfoJob } ]
01-22 02:25:00.079 31466 31466 I VpnLifecycle: new vpn
01-22 02:25:00.079 31466 31466 I ConnectivityEvents: new vpn is created force update the network
01-22 02:25:00.083 31466 31493 I JobScheduler: Data usage updated for all apps at 1737512700074
01-22 02:25:00.083 31466 31508 I WM-WorkerWrapper: Worker result SUCCESS for Work [ id=de41a09b-1c34-49a6-bde4-d885b310f3d0, tags={ com.celzero.bravedns.scheduler.DataUsageUpdater, ScheduledDataUsageJob } ]
01-22 02:25:00.083 31466 31466 I VpnLifecycle: mtu; proxy: 2147483647, underlying: 1500, min: 1500
01-22 02:25:00.093 31466 31466 I VpnLifecycle: start-foreground with opts TunnelOptions(tunDnsMode=DNS_PORT, tunFirewallMode=FILTER_ANDROID9_ABOVE, tunProxyMode=NONE, ptMode=PTMODEAUTO, bridge=com.celzero.bravedns.service.BraveVPNService@f491e00, defaultDns=, fakeDns=10.111.222.3:53,[fd66:f83a:c650:0:0:0:0:3]:53, mtu=1500) (for new-vpn? true)
01-22 02:25:00.108 31466 31493 I AppDatabase: reload: fm: 220; ip: 0; dom: 11; px: 220; wg: 0; t: 1
01-22 02:25:00.136 31466 31493 I AppDatabase: sizes: rmv: 0; add: 0; update: 0
01-22 02:25:00.136 31466 31493 I ProxyLogs: no dups found
01-22 02:25:00.136 31466 31493 I AppDatabase: refreshing proxy mapping, size: 220, trackedApps: 220
01-22 02:25:00.136 31466 31493 I VpnLifecycle: mtu; proxy: 2147483647, underlying: 1500, min: 1500
01-22 02:25:00.137 31466 31493 I VpnLifecycle: allow apps to bypass vpn on-demand
01-22 02:25:00.137 31466 31493 I VpnLifecycle: builder: exclude rethink app from builder
01-22 02:25:00.145 31466 31493 I VpnLifecycle: builder, vpn is not lockdown, exclude-apps [im.molly.app, com.github.libretube]
01-22 02:25:00.146 31466 31493 I VpnLifecycle: Building vpn for v4? true, v6? false
01-22 02:25:00.146 31466 31493 I VpnLifecycle: addRoute4: privateIps is false, adding default route
01-22 02:25:00.174 31466 31506 I WM-WorkerWrapper: Worker result SUCCESS for Work [ id=873a52ae-4b09-477d-bb7d-7cd4feb32214, tags={ com.celzero.bravedns.scheduler.PurgeConnectionLogs, ScheduledPurgeConnectionLogsJob } ]
01-22 02:25:00.179 31466 31493 I VpnLifecycle: set default transport to 8.8.4.4,2001:4860:4860::8844, as url is empty
01-22 02:25:00.185 31466 31516 I GoLog   : bootstrap.go:140: I dns: default: DNS reinit  rethink w/ 8.8.4.4,2001:4860:4860::8844
01-22 02:25:00.185 31466 31516 I GoLog   : bootstrap.go:68: I dns: default: DNS new 8.8.4.4,2001:4860:4860::8844 rethink 
01-22 02:25:00.185 31466 31493 I VpnLifecycle: connect tunnel with new params
01-22 02:25:00.186 31466 31521 I GoLog   : natpt.go:51: I natpt: new; mode(&{1 0 2})
01-22 02:25:00.194 31466 31521 I GoLog   : proxies.go:148: I proxy: new
01-22 02:25:00.194 31466 31516 I GoLog   : transport.go:821: I dnsx: bootstrap! rethink:53 -> [8.8.4.4 2001:4860:4860::8844]
01-22 02:25:00.195 31466 31519 I GoLog   : upstream.go:96: I dns53: (Bootstrap) pre-resolved rethink:53 to 8.8.4.4,2001:4860:4860::8844; ok? true
01-22 02:25:00.195 31466 31519 I GoLog   : upstream.go:106: I dns53: (Bootstrap) setup: rethink:53; pre-ips? true; relay? false
01-22 02:25:00.195 31466 31519 I GoLog   : bootstrap.go:186: I dns: default: start; DNS with rethink[d.rethink.rethink:53]; ok? true
01-22 02:25:00.196 31466 31519 I GoLog   : alg.go:135: I alg: setup done
01-22 02:25:00.196 31466 31519 I GoLog   : cacher.go:120: I cache: (CacheDefault) setup: cached.d.rethink.rethink:53; opts: ttl=10m0s;bumps=10;size=256
01-22 02:25:00.196 31466 31519 I GoLog   : transport.go:167: I dns: new! gw? true; default? d.rethink.rethink:53
01-22 02:25:00.196 31466 31512 I GoLog   : goos.go:65: I dns53: goosr: setup done
01-22 02:25:00.196 31466 31512 I GoLog   : cacher.go:120: I cache: (CacheGoos) setup: cached.localhost:53; opts: ttl=10m0s;bumps=10;size=256
01-22 02:25:00.197 31466 31512 I GoLog   : transport.go:211: I dns: add transport Goos@localhost:53; cache? true
01-22 02:25:00.197 31466 31512 I GoLog   : grounded.go:35: I grounded(BlockAll) setup: 127.0.0.3:53
01-22 02:25:00.197 31466 31512 I GoLog   : cacher.go:120: I cache: (CacheBlockAll) setup: cached.127.0.0.3:53; opts: ttl=10m0s;bumps=10;size=256
01-22 02:25:00.197 31466 31512 I GoLog   : transport.go:211: I dns: add transport [email protected]:53; cache? true
01-22 02:25:00.197 31466 31519 I GoLog   : cacher.go:120: I cache: (CacheDcProxy) setup: cached.; opts: ttl=10m0s;bumps=10;size=256
01-22 02:25:00.197 31466 31519 I GoLog   : transport.go:211: I dns: add transport DcProxy@; cache? true
01-22 02:25:00.197 31466 31519 I GoLog   : mdns.go:60: I mdns: setup: 46
01-22 02:25:00.197 31466 31519 I GoLog   : cacher.go:120: I cache: (Cachemdns) setup: cached.224.0.0.251:5353; opts: ttl=10m0s;bumps=10;size=256
01-22 02:25:00.197 31466 31519 I GoLog   : transport.go:211: I dns: add transport [email protected]:5353; cache? true
01-22 02:25:00.197 31466 31516 I GoLog   : multiserver.go:463: I dnscrypt: refreshRoutes: remove all relays
01-22 02:25:00.198 31466 31516 I GoLog   : multiserver.go:475: I dnscrypt: refreshRoutes: 0/0 for 0 servers
01-22 02:25:00.198 31466 31516 I GoLog   : ips.go:117: I dialers: ips: mapper ok? true
01-22 02:25:00.198 31466 31516 I GoLog   : ipmap.go:128: I ipmap: new resolver; ok? true
01-22 02:25:00.198 31466 31516 I GoLog   : ips.go:163: I dialers: ips: protos set to 46; diff? false
01-22 02:25:00.198 31466 31516 I GoLog   : tcp.go:91: I tcp: new handler created
01-22 02:25:00.198 31466 31516 I GoLog   : udp.go:107: I udp: new handler created
01-22 02:25:00.198 31466 31516 I GoLog   : icmp.go:55: I icmp: new handler created
01-22 02:25:00.198 31466 31516 I GoLog   : netstack.go:79: I netstack: pcap stdout(false): done?(true)
01-22 02:25:00.200 31466 31519 I GoLog   : netstack.go:242: I netstack: new stack4 and stack6
01-22 02:25:00.200 31466 31516 E GoLog   : fdbased.go:276: W ns: tun(-1 => 135): Swap: no dispatcher for new fd
01-22 02:25:00.200 31466 31519 I GoLog   : dispatchers.go:200: I ns: dispatch: newReadVDispatcher: tun(135) efd(136)
01-22 02:25:00.200 31466 31519 I GoLog   : netstack.go:45: I netstack: new endpoint(fd:135 / mtu:1500); err? <nil>
01-22 02:25:00.200 31466 31519 I GoLog   : netstack.go:214: I netstack: route(ask:46; set: 46); done
01-22 02:25:00.200 31466 31519 I GoLog   : netstack.go:103: I netstack: new nic? true; remove nic? err(unknown nic id)
01-22 02:25:00.201 31466 31516 I GoLog   : fdbased.go:305: I ns: tun(135): attach: attach new dispatcher
01-22 02:25:00.201 31466 31516 I GoLog   : netstack.go:166: I netstack: up(1)! new? true; routes? [0.0.0.0/0 nic 1 ::/0 nic 1]
01-22 02:25:00.201 31466 31516 I GoLog   : tunnel.go:272: I tun: new netstack up; fd(132), mtu(1500)
01-22 02:25:00.201 31466 31516 I GoLog   : tunnel.go:147: I tun: <<< new >>>; ok
01-22 02:25:00.201 31466 31516 I GoLog   : fdbased.go:469: I ns: tun(135): dispatchLoop: start
01-22 02:25:00.201 31466 31493 I VpnLifecycle: set log level: 3, stacktrace
01-22 02:25:00.201 31466 31521 I GoLog   : tun2socks.go:82: I tun: new lvl: 3, clvl: 6
01-22 02:25:00.201 31466 31493 I VpnLifecycle: set route: 6
01-22 02:25:00.202 31466 31520 I GoLog   : netstack.go:214: I netstack: route(ask:46; set: 46); done
01-22 02:25:00.202 31466 31520 I GoLog   : tunnel.go:328: I tun: new route; (no-op) got 46 but set 46
01-22 02:25:00.203 31466 31493 I VpnLifecycle: set pcap mode: 
01-22 02:25:00.205 31466 31516 I GoLog   : netstack.go:79: I netstack: pcap stdout(false): done?(false)
01-22 02:25:00.205 31466 31516 I GoLog   : netstack.go:89: I netstack: pcap sink?(false); done?(true)
01-22 02:25:00.205 31466 31516 I GoLog   : tunnel.go:288: I netstack: pcap closed (ignored-err? <nil>)
01-22 02:25:00.205 31466 31493 I VpnLifecycle: local blocklist stamp: 1:6B9lAIkBAxGynQ_ikAnUcykQAAg=, rdns? true
01-22 02:25:00.263 31466 31520 I GoLog   : dns64.go:268: I dns64: ipv4only.arpa w underlying network resolver
01-22 02:25:00.263 31466 31514 E GoLog   : dns64.go:83: W dns64: err reg underlay(lookup ipv4only.arpa.: no such host) / local(<nil>)
01-22 02:25:00.263 31466 31553 I GoLog   : dns64.go:369: I dns64: add ipnet [64:ff9b:1:fffe::/96] for server(__local464)
01-22 02:25:00.389 31466 31520 I GoLog   : read from /data/data/com.celzero.bravedns/files/local_blocklist/1727819766546/td.txt len 121096094
01-22 02:25:00.402 31466 31520 I GoLog   : read from /data/data/com.celzero.bravedns/files/local_blocklist/1727819766546/rd.txt len 8829924
01-22 02:25:00.635 31466 31493 I VpnLifecycle: local brave dns object is set with stamp: 1:6B9lAIkBAxGynQ_ikAnUcykQAAg=
01-22 02:25:00.637 31466 31493 I VpnLifecycle: remote-rdns enabled
01-22 02:25:00.638 31466 31493 I VpnLifecycle: adding blockfree url: https://sky.rethinkdns.com/dns-query
01-22 02:25:00.639 31466 31493 I VpnLifecycle: new doh (rdns): BlockFree, url: https://sky.rethinkdns.com/dns-query, ips: 104.21.10.13,172.67.162.27,2606:4700:3033::ac43:a21b
01-22 02:25:00.639 31466 31493 I VpnLifecycle: adding rdns remote url: https://sky.rethinkdns.com/rec
01-22 02:25:00.639 31466 31520 I GoLog   : doh.go:212: I doh: new transport(DNS-over-HTTPS): https://sky.rethinkdns.com/dns-query; relay? false; addrs? [104.21.10.13 172.67.162.27 2606:4700:3033::ac43:a21b]; resolved? true
01-22 02:25:00.639 31466 31520 I GoLog   : cacher.go:120: I cache: (CacheBlockFree) setup: cached.sky.rethinkdns.com; opts: ttl=10m0s;bumps=10;size=256
01-22 02:25:00.639 31466 31520 I GoLog   : transport.go:211: I dns: add transport [email protected]; cache? true
01-22 02:25:00.639 31466 31493 W VpnLifecycle: err get base32 stamp: [0 1 2 3 4 5 6 7 8 9 10 11 12 13 15] [65533 65533] flags and header mismatch
01-22 02:25:00.639 31466 31493 I VpnLifecycle: new doh (rdns): Preferred, url: https://sky.rethinkdns.com/rec, ips: 104.21.10.13,172.67.162.27,2606:4700:3033::ac43:a21b
01-22 02:25:00.639 31466 31514 I GoLog   : doh.go:212: I doh: new transport(DNS-over-HTTPS): https://sky.rethinkdns.com/rec; relay? false; addrs? [104.21.10.13 172.67.162.27 2606:4700:3033::ac43:a21b]; resolved? true
01-22 02:25:00.639 31466 31493 I VpnLifecycle: set dns alg: false
01-22 02:25:00.639 31466 31514 I GoLog   : cacher.go:120: I cache: (CachePreferred) setup: cached.sky.rethinkdns.com; opts: ttl=10m0s;bumps=10;size=256
01-22 02:25:00.639 31466 31514 I GoLog   : transport.go:211: I dns: add transport [email protected]; cache? true
01-22 02:25:00.639 31466 31514 I GoLog   : alg.go:141: I alg: translate? prev(false) > now(false)
01-22 02:25:00.639 31466 31493 I VpnLifecycle: startVpn, vpn restarted
01-22 02:25:00.641 31466 31466 I VpnLifecycle: observe pref, dnscrypt relay, app list changes
01-22 02:25:03.101 31466 31543 I ConnectivityEvents: Connected network: 2451537055757 WiFi, new? true, force? true, test? false
01-22 02:25:03.107 31466 31543 I ConnectivityEvents: nw: default4? true, default6? false for NetworkProperties(network=570, capabilities=[ Transports: WIFI Capabilities: NOT_METERED&INTERNET&NOT_RESTRICTED&TRUSTED&NOT_VPN&VALIDATED&NOT_ROAMING&FOREGROUND&NOT_CONGESTED&NOT_SUSPENDED&NOT_VCN_MANAGED&NOT_BANDWIDTH_CONSTRAINED LinkUpBandwidth>=10000Kbps LinkDnBandwidth>=33078Kbps TransportInfo: <SSID: <unknown ssid>, BSSID: 02:00:00:00:00:00, MAC: 02:00:00:00:00:00, IP: /192.1.0.64, Security type: 4, Supplicant state: COMPLETED, Wi-Fi standard: 11n, RSSI: -76, Link speed: 65Mbps, Tx Link speed: 65Mbps, Max Supported Tx Link speed: 300Mbps, Rx Link speed: 52Mbps, Max Supported Rx Link speed: 300Mbps, Frequency: 2412MHz, Net ID: -1, Metered hint: false, score: 59, isUsable: true, CarrierMerged: false, SubscriptionId: -1, IsPrimary: -1, Trusted: true, Restricted: false, Ephemeral: false, OEM paid: false, OEM private: false, OSU AP: false, FQDN: <none>, Provider friendly name: <none>, Requesting package name: <none><none>MLO Information: , Is TID-To-Link negotiation supported by the AP: false, AP MLD Address: <none>, AP MLO Link Id: <none>, AP MLO Affiliated links: <none>, Vendor Data: <none>> SignalStrength: -76 UnderlyingNetworks: Null], linkProperties={InterfaceName: wlan1 LinkAddresses: [ fe80::8cbf:77ff:fe1a:df0e/64,192.1.0.64/24 ] DnsAddresses: [ /192.1.0.56 ] Domains: null MTU: 0 TcpBufferSizes: 524288,2097152,8388608,262144,524288,4194304 Routes: [ fe80::/64 -> :: wlan1 mtu 0,192.1.0.0/24 -> 0.0.0.0 wlan1 mtu 0,0.0.0.0/0 -> 192.1.0.1 wlan1 mtu 0 ]}, networkType=WiFi, NotMetered?true)
01-22 02:25:03.109 31466 31543 I ConnectivityEvents: inform network change: 1, all? true, metered? false
01-22 02:25:03.111 31466 31543 I ConnectivityEvents: mtu4: 1500, mtu6: 1500; final mtu: 1500
01-22 02:25:03.113 31466 31543 I VpnLifecycle: onNetworkConnected: changes: NetworkChanges(routesChanged=true, netChanged=true, mtuChanged=true) for new: UnderlyingNetworks(ipv4Net=[NetworkProperties(network=570, capabilities=[ Transports: WIFI Capabilities: NOT_METERED&INTERNET&NOT_RESTRICTED&TRUSTED&NOT_VPN&VALIDATED&NOT_ROAMING&FOREGROUND&NOT_CONGESTED&NOT_SUSPENDED&NOT_VCN_MANAGED&NOT_BANDWIDTH_CONSTRAINED LinkUpBandwidth>=10000Kbps LinkDnBandwidth>=33078Kbps TransportInfo: <SSID: <unknown ssid>, BSSID: 02:00:00:00:00:00, MAC: 02:00:00:00:00:00, IP: /192.1.0.64, Security type: 4, Supplicant state: COMPLETED, Wi-Fi standard: 11n, RSSI: -76, Link speed: 65Mbps, Tx Link speed: 65Mbps, Max Supported Tx Link speed: 300Mbps, Rx Link speed: 52Mbps, Max Supported Rx Link speed: 300Mbps, Frequency: 2412MHz, Net ID: -1, Metered hint: false, score: 59, isUsable: true, CarrierMerged: false, SubscriptionId: -1, IsPrimary: -1, Trusted: true, Restricted: false, Ephemeral: false, OEM paid: false, OEM private: false, OSU AP: false, FQDN: <none>, Provider friendly name: <none>, Requesting package name: <none><none>MLO Information: , Is TID-To-Link negotiation supported by the AP: false, AP MLD Address: <none>, AP MLO Link Id: <none>, AP MLO Affiliated links: <none>, Vendor Data: <none>> SignalStrength: -76 UnderlyingNetworks: Null], linkProperties={InterfaceName: wlan1 LinkAddresses: [ fe80::8cbf:77ff:fe1a:df0e/64,192.1.0.64/24 ] DnsAddresses: [ /192.1.0.56 ] Domains: null MTU: 0 TcpBufferSizes: 524288,2097152,8388608,262144,524288,4194304 Routes: [ fe80::/64 -> :: wlan1 mtu 0,192.1.0.0/24 -> 0.0.0.0 wlan1 mtu 0,0.0.0.0/0 -> 192.1.0.1 wlan1 mtu 0 ]}, networkType=WiFi, NotMetered?true)], ipv6Net=[], useActive=true, minMtu=1500, isActiveNetworkMetered=false, lastUpdated=1091725073, dnsServers={/192.1.0.56=570})
01-22 02:25:03.116 31466 31543 I VpnLifecycle: dns servers for network: [/192.1.0.56]
01-22 02:25:03.118 31466 31493 I VpnLifecycle: Setting dns servers: [/192.1.0.56]
01-22 02:25:03.119 31466 31493 I VpnLifecycle: set system dns: 192.1.0.56
01-22 02:25:03.119 31466 31512 I GoLog   : proxies.go:255: I proxy: refresh all 3
01-22 02:25:03.119 31466 31545 I VpnLifecycle: refresh proxies: Exit,Base,Block
01-22 02:25:03.119 31466 31512 I GoLog   : proxies.go:272: I proxy: refreshed 3 / 3: [Exit Base Block]
01-22 02:25:03.119 31466 31527 I VpnLifecycle: mtu; proxy: 2147483647, underlying: 1500, min: 1500
01-22 02:25:03.120 31466 31527 I VpnLifecycle: mtu; proxy: 2147483647, underlying: 1500, min: 1500
01-22 02:25:03.120 31466 31553 I GoLog   : transport.go:821: I dnsx: bootstrap! system:53 -> [192.1.0.56]
01-22 02:25:03.120 31466 31553 I GoLog   : upstream.go:96: I dns53: (System) pre-resolved system:53 to 192.1.0.56; ok? true
01-22 02:25:03.120 31466 31553 I GoLog   : upstream.go:106: I dns53: (System) setup: system:53; pre-ips? true; relay? false
01-22 02:25:03.120 31466 31553 I GoLog   : cacher.go:120: I cache: (CacheSystem) setup: cached.system.system:53; opts: ttl=10m0s;bumps=10;size=256
01-22 02:25:03.120 31466 31553 I GoLog   : transport.go:211: I dns: add transport [email protected]:53; cache? true
01-22 02:25:03.120 31466 31553 I GoLog   : dns.go:77: I dns: new system dns from 192.1.0.56; ok? true
01-22 02:25:03.120 31466 31553 I GoLog   : bootstrap.go:140: I dns: default: DNS reinit  rethink w/ 192.1.0.56
01-22 02:25:03.121 31466 31527 I VpnLifecycle: allow apps to bypass vpn on-demand
01-22 02:25:03.121 31466 31520 I GoLog   : transport.go:821: I dnsx: bootstrap! rethink:53 -> [192.1.0.56]
01-22 02:25:03.121 31466 31520 I GoLog   : upstream.go:96: I dns53: (Bootstrap) pre-resolved rethink:53 to 192.1.0.56; ok? true
01-22 02:25:03.121 31466 31520 I GoLog   : upstream.go:106: I dns53: (Bootstrap) setup: rethink:53; pre-ips? true; relay? false
01-22 02:25:03.121 31466 31527 I VpnLifecycle: builder: exclude rethink app from builder
01-22 02:25:03.121 31466 31520 I GoLog   : bootstrap.go:172: I dns: default: removing DNS rethink[d.rethink.rethink:53]
01-22 02:25:03.121 31466 31514 I GoLog   : bootstrap.go:186: I dns: default: start; DNS with rethink[d.rethink.rethink:53]; ok? true
01-22 02:25:03.123 31466 31527 I VpnLifecycle: builder, vpn is not lockdown, exclude-apps [im.molly.app, com.github.libretube]
01-22 02:25:03.124 31466 31527 I VpnLifecycle: Building vpn for v4? true, v6? false
01-22 02:25:03.124 31466 31527 I VpnLifecycle: addRoute4: privateIps is false, adding default route
01-22 02:25:03.140 31466 31514 I GoLog   : ndial.go:91: I ndial: found working ip 192.1.0.56 for system:53
01-22 02:25:03.140 31466 31514 I GoLog   : exit.go:58: I proxy: exit: dial(udp) to system:53; err? <nil>
01-22 02:25:03.146 31466 31527 I VpnLifecycle: vpn-adapter exists, use it
01-22 02:25:03.148 31466 31527 I VpnLifecycle: updateLink with fd(151) mtu: 1500
01-22 02:25:03.149 31466 31527 I VpnLifecycle: mtu? true(o:null, n:1500); routes? false, vpn restarted
01-22 02:25:03.149 31466 31514 I GoLog   : dispatchers.go:200: I ns: dispatch: newReadVDispatcher: tun(132) efd(154)
01-22 02:25:03.149 31466 31514 I GoLog   : fdbased.go:238: I ns: tun(135 => 132): Swap: stopping previous dispatcher
01-22 02:25:03.149 31466 31514 I GoLog   : tunnel.go:321: I tun: new link; fd(132), mtu(1500); err? <nil>
01-22 02:25:03.149 31466 31514 I GoLog   : fdbased.go:469: I ns: tun(132): dispatchLoop: start
01-22 02:25:03.149 31466 31514 I GoLog   : ips.go:163: I dialers: ips: protos set to 4; diff? true
01-22 02:25:03.149 31466 31554 I GoLog   : mdns.go:60: I mdns: setup: 4
01-22 02:25:03.149 31466 31554 I GoLog   : cacher.go:120: I cache: (Cachemdns) setup: cached.224.0.0.251:5353; opts: ttl=10m0s;bumps=10;size=256
01-22 02:25:03.149 31466 31554 I GoLog   : transport.go:211: I dns: add transport [email protected]:5353; cache? true
01-22 02:25:03.156 31466 31520 E GoLog   : dns64.go:110: W dns64: udp: could not query __underlay or empty ans; err <nil>
01-22 02:25:05.152 31466 31520 I GoLog   : fdbased.go:473: I ns: tun(135): dispatchLoop: exit; err(no such file)
01-22 02:25:05.198 31466 31519 I GoLog   : dispatchers.go:215: I ns: dispatch: stop: fds closed event(136) tun(135); err? <nil>
01-22 02:25:05.779 31466 31563 D ProfileInstaller: Installing profile for com.celzero.bravedns
--------- switch to events
01-22 02:25:15.109 31466 31466 I wm_on_top_resumed_lost_called: [Token=6750391,Component Name=com.celzero.bravedns.ui.HomeScreenActivity,Reason=topStateChangedWhenResumed]
01-22 02:25:15.111 31466 31466 I view_enqueue_input_event: [eventType=Motion - Cancel,action=com.celzero.bravedns/com.celzero.bravedns.ui.HomeScreenActivity]
01-22 02:25:15.954 31466 31466 I wm_on_paused_called: [Token=6750391,Component Name=com.celzero.bravedns.ui.HomeScreenActivity,Reason=performPause,time=1ms]
--------- switch to main
01-22 02:25:15.954 31466 31466 D VRI[HomeScreenActivity]: visibilityChanged oldVisibility=true newVisibility=false
--------- switch to events
01-22 02:25:15.967 31466 31466 I viewroot_draw_event: [window=VRI[HomeScreenActivity],event=Not drawing due to not visible. Reason=!mAppVisible && !mForceDecorViewVisibility]
01-22 02:25:15.968 31466 31466 I wm_on_stop_called: [Token=6750391,Component Name=com.celzero.bravedns.ui.HomeScreenActivity,Reason=STOP_ACTIVITY_ITEM,time=1ms]

Additional info

  • package: com.celzero.bravedns:45, targetSdk 34
  • OS: Android 15 GrapheneOS
  • Unrestricted battery is enabled for RethinkDNS
@ignoramous
Copy link
Collaborator

It isn't a crash, just an error log. Note that the process ID (31466) doesn't change and the app has other logs (GoLog from the network engine, for example) after it.

Think we should downgrade those logs to warning level and/or not print the entire stacktrace.

@ColorfulRhino ColorfulRhino changed the title [Bug] In-app debug log collector crashes the app in background [Bug] In-app debug log collector throws NoSuchFileException Feb 13, 2025
@ColorfulRhino
Copy link
Author

It isn't a crash, just an error log. Note that the process ID (31466) doesn't change and the app has other logs (GoLog from the network engine, for example) after it.

Thanks, that's a good catch! I have changed the title accordingly.
I had too many logs so it must've only been #1869 which caused all the crashes.

Think we should downgrade those logs to warning level and/or not print the entire stacktrace.

Wouldn't it be more appropriate to implement a check so that this NoSuchFileException won't happen? What do you think?

Slightly offtopic: Pressing the button "Bug report" in the about sectioon of the app always says "No crash report found", even after background app crashes. Maybe this is related to this exception? Not sure.

@ignoramous
Copy link
Collaborator

Wouldn't it be more appropriate to implement a check so that this NoSuchFileException won't happen? What do you think?

Agree. Treating exceptions as control flow is not only inefficient but also likely to confuse unassuming folks looking at the code or logs.

Slightly offtopic: Pressing the button "Bug report" in the about sectioon of the app always says "No crash report found"

We relied on Android APIs on versions below v055n. Going forward (v055o onwards), it'll be our own homegrown crash reporter. Ideally, we'd have used something like Sentry or Firebase Crashlytics, but those are too privacy intrusive for some and hence we thought it was prudent to spend time rolling out whatever we could muster outside of those libraries (as our main concern is only the crashes of our network engine, which is written in Go, and not the UI, which is written in Kotlin).

@ColorfulRhino
Copy link
Author

We relied on Android APIs on versions below v055n. Going forward (v055o onwards), it'll be our own homegrown crash reporter. Ideally, we'd have used something like Sentry or Firebase Crashlytics, but those are too privacy intrusive for some and hence we thought it was prudent to spend time rolling out whatever we could muster outside of those libraries (as our main concern is only the crashes of our network engine, which is written in Go, and not the UI, which is written in Kotlin).

Understood. It's a good choice not to use potentially privacy invasive non-FOSS crash reporting libraries. From a quick glance I can understand that this homegrown crash reporter is already implemented for future app versions, correct? Otherwise I believe other FOSS apps have this issue as well and some have probably solved it. Maybe some good inspiration can be taken from other well-made FOSS apps.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants