Quick Start
Step 1: Configure and run License Monitor
Section titled “Step 1: Configure and run License Monitor”Create config.toml on a monitored host:
[command_mode]command = "lmstat -a"interval_seconds = 300parse_script = "parse.py"
[api]enabled = truebind_address = "127.0.0.1"bind_port = 8080allow_public_bind = false
[logs]log_file = "logs/license-monitor.log"log_level = "warn"parse_script = "parse.py" should point to the parser script from your internal/private license-monitor deployment. If your deployment does not already include one at the runtime working path, create a parse.py there and update parse_script to match that file path. The parser should read raw license command output and emit normalized JSON that License Monitor can cache and serve through its API.
This default API configuration keeps license-monitor local-only (bind_address = "127.0.0.1" and allow_public_bind = false). Use this when license-server-detail is co-located on the same host.
If license-server-detail runs on a different host, use an external bind instead and secure access with firewall/VPN controls:
[api]enabled = truebind_address = "0.0.0.0"bind_port = 8080allow_public_bind = trueRun:
license-monitor --config ./config.toml --mode commandStep 2: Configure License Server Detail environment
Section titled “Step 2: Configure License Server Detail environment”Set these minimum values in license-server-detail (for example .env.local):
NEXT_PUBLIC_CONVEX_URL=https://your-convex-deployment.convex.cloudAUTH_OKTA_ID=your-okta-client-idAUTH_OKTA_SECRET=your-okta-client-secretAUTH_OKTA_ISSUER=https://your-org.okta.com/oauth2/defaultAUTH_SECRET=replace-with-long-random-secretNEXTAUTH_URL=http://localhost:3000Then run:
Start these in separate terminals because both processes are long-running:
Terminal 1:
bun run convex:devTerminal 2:
bun run devStep 3: Add server inventory
Section titled “Step 3: Add server inventory”Populate Convex with monitored servers. If you are migrating existing static data, add those records as Convex servers entries using Configuration: Convex server records.
Each server record should point to a reachable License Monitor host/port (default port 8080).
Step 4: Verify from browser
Section titled “Step 4: Verify from browser”- Open
http://localhost:3000 - Sign in via Okta
- Open the server list/dashboard
- Confirm health and license data are loading