📊

Dashboard Guide

Learn how to use the SecureInspector dashboard to debug your mobile and web applications in real-time.

Overview

The SecureInspector dashboard is your control center for debugging production applications. It allows you to create targeted debug sessions, view encrypted HTTP traffic, analyze crashes, and monitor mobile vitals - all while maintaining end-to-end encryption.

Real-time Monitoring

Watch HTTP requests, errors, and events as they happen in your app.

End-to-End Encryption

All data is encrypted on device. Decryption happens only in your browser.

Targeted Sessions

Debug specific users or devices without capturing data from everyone.

Mobile Vitals

Track startup time, frame rate, memory usage, and ANR/hangs.

First Login

After your administrator sets up your account, you'll receive login credentials. Here's what to do:

1

Login to Dashboard

Navigate to your dashboard URL and enter your credentials.

2

Enter Encryption Key

You'll be prompted to enter the encryption key. This key is used to decrypt captures in your browser - it's never sent to the server.

3

Select Project

Choose the project you want to debug from the project selector in the sidebar.

Keep Your Encryption Key Safe

The encryption key is stored only in your browser's local storage. If you clear your browser data, you'll need to enter it again. The key is never transmitted to the server.

1 Create Debug Session

A debug session defines WHO to capture data from and WHAT to capture. Without an active session, the SDK doesn't capture any data.

To create a session:

  1. Navigate to Sessions in the sidebar
  2. Click + New Session button
  3. Enter target details (User ID or Device ID)
  4. Select what to capture (HTTP, Crashes, Events, Vitals)
  5. Set session duration (default: 1 hour)
  6. Click Create Session

How It Works

When your app's SDK polls the server, it checks if there's an active session matching the current user/device. If yes, it starts capturing. If no, it remains silent.

2 Targeting Options

Target by User ID

Debug a specific user across all their devices.

user@example.com

Target by Device ID

Debug a specific device regardless of logged-in user.

device-abc123

Target by Both

Debug a specific user on a specific device only.

user@example.com + device-abc123

Capture Options

HTTP Traffic

Capture all HTTP requests and responses

Crashes & Errors

Capture crashes and handled exceptions

Custom Events

Capture custom events from your code

Mobile Vitals

Capture performance metrics

3 Live Debugging

Once a session is active and the user opens your app, you'll see data flowing in real-time:

Session Active | user@example.com | iPhone 14 Pro

Captures will appear here as they arrive...

Real-time Updates

The dashboard uses WebSocket for real-time updates. New captures appear instantly without refreshing the page.

HTTP Traffic

The HTTP viewer shows all captured network requests with full details:

200 GET /api/users/profile
245ms
Request Headers
Authorization: ***MASKED***
Content-Type: application/json
X-Device-ID: abc123
Response Body
{
  "id": "user123",
  "email": "u***@example.com",
  "name": "John Doe"
}

Filtering & Search

  • Status Code: Filter by 2xx, 4xx, 5xx responses
  • Method: GET, POST, PUT, DELETE, etc.
  • URL: Search by URL path or domain
  • Time Range: Filter by timestamp

Crashes & Errors

View detailed crash reports with full context:

NullPointerException 2 minutes ago
Stack Trace
at com.example.app.PaymentService.processPayment(PaymentService.kt:42)
at com.example.app.CheckoutFragment.onPayClicked(CheckoutFragment.kt:128)
at android.view.View.performClick(View.java:7448)
Screen

CheckoutFragment

Device

Samsung Galaxy S23

App Version

2.4.1 (build 142)

Breadcrumbs (last 10)
12:34:01 Screen: HomeFragment
12:34:05 Tap: "Add to Cart" button
12:34:06 HTTP: POST /api/cart/add -> 200
12:34:08 Screen: CartFragment
12:34:12 Tap: "Checkout" button
12:34:13 Screen: CheckoutFragment
12:34:18 Tap: "Pay Now" button
12:34:18 CRASH: NullPointerException

Custom Events

View custom events captured from your application code:

INFO purchase_completed
5 minutes ago
{
  "product_id": "SKU123",
  "price": 99.99,
  "currency": "EUR",
  "payment_method": "credit_card"
}

Mobile Vitals

Monitor your app's performance metrics:

Startup Time (Cold) 1.2s

Good: < 2s

Frame Rate 58 FPS

Target: 60 FPS

Memory Usage 245 MB

Peak: 312 MB

Frozen Frames 0

Frames > 700ms

Projects

Projects organize your apps. Each project has its own API key, settings, and team members.

Create a Project

  1. Navigate to Projects in sidebar
  2. Click + New Project
  3. Enter project name and select platform (Android/iOS/Web)
  4. Choose a color for easy identification
  5. Click Create

Project Limits

The number of projects you can create depends on your license. Trial: 2 projects, Standard: 5 projects, Enterprise: unlimited.

Team Members

Add team members to collaborate on debugging:

Admin

Full access: manage users, projects, settings, and API keys

ADMIN

Developer

Create sessions, view captures, access all projects

DEVELOPER

Viewer

View-only access to captures and sessions

VIEWER

API Keys

API keys authenticate your SDK with the server. Each project can have multiple API keys.

Best Practices

  • Use separate keys for development, staging, and production
  • Rotate keys periodically (every 90 days recommended)
  • Revoke unused keys immediately
  • Never commit API keys to source control

API Key vs Encryption Key

API key authenticates requests to the server. Encryption key encrypts/decrypts data and should be kept secret from the server.

Enhanced Privacy Mode

Enable extra PII protection for regulated industries (banking, healthcare):

Auto-Masked Data

  • Credit card numbers (PAN)
  • IBAN / Account numbers
  • Social Security Numbers
  • Email addresses (partial)
  • Phone numbers

Additional Protection

  • Request body redaction
  • Header value masking
  • Custom field patterns
  • Audit logging

URL Filters

Exclude specific URLs from being captured:

# Exclude analytics and tracking
.*analytics\.google\.com.*
.*facebook\.com/tr.*
.*hotjar\.com.*

# Exclude health checks
.*/health.*
.*/ping.*

# Exclude static assets
.*\.(jpg|png|gif|css|js)$

Filters use regex patterns. Test your patterns before applying.

Data Retention

Configure how long captured data is stored:

Plan Default Retention Configurable
Starter 7 days No
Business 30 days Yes (7-90 days)
Enterprise Custom Yes (unlimited)

License Information

View your license details and usage in Settings:

License Type

Enterprise

Expires

December 31, 2025

Projects

3 / Unlimited

Team Members

8 / Unlimited

License Limits

When you reach your project or user limit, you'll see a message prompting you to upgrade. Existing functionality continues to work normally.

Keyboard Shortcuts

Quick Search
Cmd K
New Session
Cmd N
Filter Captures
Cmd F
Toggle Sidebar
Cmd B

Need Help?

Can't find what you're looking for? Our support team is ready to help.

Contact Support