Download the PHP package nawasara/database-monitor without Composer
On this page you can find all versions of the php package nawasara/database-monitor. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download nawasara/database-monitor
More information about nawasara/database-monitor
Files in nawasara/database-monitor
Package database-monitor
Short Description MySQL/MariaDB server + database monitoring for the Nawasara superapp framework — inventory, capacity, performance, slow query, and alerting via a single read-only monitoring user.
License MIT
Informations about the package database-monitor
nawasara/database-monitor
MySQL/MariaDB inventory, capacity, performance, and alert monitoring for the Nawasara superapp framework.
Scoped to one central MySQL server (the Kominfo deployment baseline as of 2026-05-25) but the schema stays multi-server capable.
Phases
| Phase | Scope | Status |
|---|---|---|
| A | Inventory + uptime | scaffolding |
| B | Capacity (DB size, top tables, growth) | planned |
| C | Performance (processlist, slow query auto-detect, global status) | planned |
| DROPPED — no replication, no standard backup tool yet | ||
| E | Alerts via nawasara/notification |
planned |
| F | Administration (CREATE/DROP DB, manage MySQL users) | planned, separate PR |
See docs/todo-database-monitor.md for
the full plan.
Setup
1. Create the monitoring user on the target MySQL server
Restrict the host to your Nawasara container IP when possible:
Verify:
The user is read-only by design — no INSERT, UPDATE, DELETE,
CREATE, DROP, or GRANT privileges. Phase F administration uses a
separate, higher-privilege user (created when that phase ships).
2. Store credentials in Vault
Open Nawasara → Pengaturan → Vault → Database Monitor and fill:
- Host — hostname or IP of the MySQL server
- Port — usually
3306 - Database — leave blank (we connect server-wide, not per-DB)
- Username —
nawasara_monitor - Password — the strong password from step 1
Click Test Connection to verify.
3. Seed permissions
This creates the database-monitor.* permissions and grants them to the
developer role (if present).
Privileges explained
| Grant | Purpose |
|---|---|
SELECT ON *.* |
Reads information_schema (sizes, table list), performance_schema (status, processlist), and mysql.slow_log (slow query, when enabled) |
PROCESS |
Required for SHOW PROCESSLIST to see all sessions, not just the monitor user's own |
REPLICATION CLIENT |
SHOW REPLICA STATUS — granted defensively so replication monitoring works the day replication is enabled, without re-granting |
SHOW DATABASES |
Lists all schemas regardless of user permissions |
SHOW VIEW |
Reads view definitions for sizing |
Runtime connection — no .env leakage
The package never registers DATABASE_MONITOR_* env vars or pushes anything
into config/database.php. Connection config is built at runtime from Vault
each time a job or page needs it, used, then purged to release the LAN
socket. Defence-in-depth: every session runs with
SET SESSION TRANSACTION READ ONLY regardless of the granted privileges.
License
MIT.
All versions of database-monitor with dependencies
ext-pdo Version *
illuminate/support Version ^10.0|^12.0
spatie/laravel-permission Version ^6.0
nawasara/ui Version *
nawasara/sync Version *
nawasara/vault Version *
nawasara/notification Version *
nawasara/alerting Version *
nawasara/auth-primitives Version *
livewire/livewire Version ^3.0