User Guide
Licensing¶
LuceDev Syslog is licensed per server. Every install starts with a 7-day free trial. After the trial expires you'll need a license key to keep ingesting logs and accessing the dashboard.
Lifecycle¶
The server tracks one of six license states:
| State | Dashboard | Syslog ingestion | Triggered by |
|---|---|---|---|
trial | ✓ | ✓ | Fresh install, days 1–7 |
trial_expired | Blocked* | ✗ | Trial ended, no license key |
active | ✓ | ✓ | Valid license key, recently validated |
grace | ✓ | ✓ | License server unreachable, ≤ 7 days |
expired | Blocked* | ✗ | License server says key is invalid |
unlicensed | Blocked* | ✗ | No key + can't reach server on first run |
* Blocked means everything except the License, Settings, and Auth pages — so you can always get back in to enter a key.
Trial¶
Every install gets a 7-day trial that begins on first run. On Windows the start date is anchored in the Registry at HKLM\SOFTWARE\LuceDev\Syslog\InstallDate so it survives uninstall, reinstall, and migration of the data directory. On Linux it's stored in license_state.json.
The dashboard shows a banner during the trial: N days remaining in trial. Activate a license key.
When the trial ends:
- Syslog ingestion silently stops (incoming messages are dropped at the receiver — the license check runs once per minute to avoid disk reads per message).
- The dashboard blocks access to all pages except License, Settings, and Auth.
Activating a license¶
- Purchase a key at lucedev.com/products/lucedev-syslog.
- Go to Settings → License.
- Paste the key and click Activate.
The server posts the key to https://lucedev.com/api/validate along with a stable machine ID (hostname + platform + arch, hashed). On success:
- The state moves to
active license_state.jsonrecords the validation timestamp- The dashboard banner clears
If the server says the key is invalid, the error message is displayed inline and the state moves to expired.
Re-validation¶
The server re-validates every 7 days automatically. A background thread runs the check; in addition, the next request after the 7-day mark triggers a fresh check.
If validation succeeds → state stays active.
If validation fails:
- License server unreachable → state moves to
gracefor up to 7 more days. The dashboard banner reads:License server unreachable. N days of grace remaining.Syslog ingestion continues. - License server says invalid → state moves to
expired. Ingestion stops; dashboard blocks.
Forcing a re-check¶
If you've renewed a license and want to clear a grace or expired state without waiting, click Re-check License on the Settings → License tab. The server clears the cached validation timestamp and immediately calls the license server.
Deactivating¶
Click Deactivate to remove the current key. The server clears the key from settings.json and clears the cached validation state. The trial start date is preserved — deactivation doesn't reset the trial.
What happens to your data when unlicensed¶
- Syslog ingestion stops, but existing logs are not deleted. Your database, archives, and audit trail remain intact.
- The dashboard blocks navigation away from the License page, but you can still see the License page itself.
- Settings remain editable so you can fix a misconfiguration without re-activating.
Re-activate with a valid key and ingestion resumes immediately.
Audit events¶
License changes are recorded in the audit trail:
LICENSE_ACTIVATE— with a redacted prefix of the keyLICENSE_DEACTIVATE
The full key is never written to logs.