Log levels
ThePortalLogLevel enum defines five levels. Each level includes all levels above it in severity.
Set the log level
Callportal.setLogLevel() after initializing your Portal instance. The change takes effect immediately across all SDK components.
Set the log level before calling any other SDK methods to capture all output from the start.
Recommended levels by environment
- Development:
PortalLogLevel.DEBUG— see all SDK activity while building your integration. - QA / staging:
PortalLogLevel.INFOorPortalLogLevel.WARN— surface operational milestones and anomalies without noise. - Production:
PortalLogLevel.NONE(default) — no logs emitted. UsePortalLogLevel.ERRORif you want to forward failures to a crash reporter.
Credentials are redacted from debug output. The
Authorization bearer is never logged — requests log authorized=true|false instead — and request payloads and response bodies have their credential-bearing fields masked by name: clientSessionToken, userJwt, token, code, secret, password and privateKey. This matters most under Client Auth, where the sign-in endpoints return an end user’s session token in the response body and take the single-use grant and the live TOTP code in the request payload.Redaction covers credentials, not everything sensitive — addresses, balances and transaction contents are still logged in full, which is why DEBUG remains a development-only setting. On versions before 10.0.0, debug logs did contain live credentials: treat any log capture taken from an app running DEBUG on an earlier version as containing a usable token.Log output
Logs are written to Android’s standard logging system and appear in Logcat. You can filter them in Android Studio’s Logcat window or viaadb logcat by searching for the PortalSDK tag: