• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

firezone / firezone / 23813997585
67%

Build:
DEFAULT BRANCH: main
Ran 31 Mar 2026 06:50PM UTC
Jobs 6
Files 651
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

31 Mar 2026 06:48PM UTC coverage: 67.113% (-0.04%) from 67.154%
23813997585

push

github

web-flow
feat(android): sentry + log streaming for kotlin (#11830)

## Summary

Integrates Sentry into the Android client to match the Apple client
implementation, with remote log streaming controlled by PostHog feature
flags.

- **Sentry initialization** in `FirezoneApp.onCreate()` with DSN,
release metadata (`android-client@{version}`), and structured logs
enabled
- **`Log.kt` wrapper** — drop-in replacement for `android.util.Log` that
also streams debug+ logs to Sentry structured logs when streaming is
active, with user/environment/process attributes
- **Feature flag polling** — polls `isLogStreamingActive()` from connlib
every 5s (same as Apple client) to remotely enable/disable log streaming
via PostHog
- **Error capture** — `Telemetry.capture()` wired into
`ConnlibException` and event loop catch blocks
- **Google Play detection** — `distributionType()` uses
`getInstallSourceInfo()` to detect Play Store vs sideloaded installs
- **Environment detection** — production/staging from API URL, Sentry
disabled for unknown environments

Closes #12290
Fixes #8131

## Test plan

- [x] Build and install on Android device/emulator
- [x] Connect to staging environment, verify Sentry receives crash
reports with correct user context (`firezone_id` + `account_slug`)
- [x] Enable `stream_logs` feature flag in PostHog for the device,
verify debug+ logs appear in Sentry Logs within ~10s
- [x] Disable feature flag, verify log streaming stops
- [ ] Sideload APK and verify `dist=standalone`; install from Play Store
and verify `dist=google_play`
- [x] Connect to a non-production/staging API URL and verify Sentry is
disabled

🤖 Generated with [Claude Code](https://claude.com/claude-code)

---

Fixes #12290

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: jamilbk <167144+jamilbk@users.noreply.github.com>
Co-authored-by: Jamil Bou Kheir <jamilbk@users.noreply.github.com>

35816 of 53367 relevant lines covered (67.11%)

464990.85 hits per line

Uncovered Existing Lines

Lines Coverage ∆ File
1
99.44
-0.56% elixir/lib/portal_api/gateway/channel.ex
1
99.53
-0.23% elixir/lib/portal_api/client/channel.ex
1
84.84
-0.13% rust/relay/server/src/server.rs
2
92.8
0.0% rust/libs/connlib/snownet/src/node.rs
22
76.85
-6.79% elixir/lib/portal/entra/sync.ex
Subprojects
ID Flag name Job ID Ran Files Coverage
1 rust-tunnel-test 23813997585.1 31 Mar 2026 07:05PM UTC 119
48.4
GitHub Action Run
2 swift-test 23813997585.2 31 Mar 2026 06:50PM UTC 44
15.67
GitHub Action Run
3 rust-test-macOS 23813997585.3 31 Mar 2026 06:54PM UTC 151
58.6
GitHub Action Run
4 rust-test-Linux 23813997585.4 31 Mar 2026 06:54PM UTC 197
56.43
GitHub Action Run
5 rust-test-Windows 23813997585.5 31 Mar 2026 06:58PM UTC 171
58.87
GitHub Action Run
6 portal 23813997585.6 31 Mar 2026 06:50PM UTC 387
78.88
GitHub Action Run
Source Files on build 23813997585
  • Tree
  • List 651
  • Changed 11
  • Source Changed 0
  • Coverage Changed 11
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #23813997585
  • 6da04cff on github
  • Prev Build on main (#23713215151)
  • Next Build on main (#23866743106)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc