SYSADMIN · DAG-DAGELIJKS

Wat een sysadmin echt elke week doet in monsys.ai

Vijf concrete handelingen die elke week voorkomen. Met de SQL-query, curl-call of klikpad die het werk in seconden doet — niet in een ticket-thread.

Volledige docs
01

Maandagochtend — wat is er over het weekend veranderd

Niemand heeft je gebeld, maar dat betekent niet dat alles stil is geweest. Drift, ad-hoc fixes, EAT-uitvoeringen — je wil een overzicht in 30 seconden.

  1. Sidebar → Audit-log
  2. Filter: laatste 72u + groepeer op event_type
  3. Klik elke drift_event rij voor operator + reden
  4. Onverklaarde drift? → agent → Inventaris → Restore

Audit Pack van volgende maand bevat ditzelfde overzicht, Ed25519-signed.

Hetzelfde via API (sql) — voor automatisering
SELECT a.hostname, l.event_type,
       l.event_data->>'reason' AS reason,
       u.email AS actor, l.created_at
  FROM audit_log l
  LEFT JOIN agents a ON a.id = l.agent_id
  LEFT JOIN users  u ON u.id = l.user_id
 WHERE l.tenant_id = $1::UUID
   AND l.created_at >= NOW() - INTERVAL '72 hours'
 ORDER BY l.created_at DESC;
02

Kernel-CVE patchen op 80 productiehosts — zonder downtime

USN-2026-1234 raakt je hele Ubuntu-fleet. Manueel apt-get install op 80 hosts is geen optie; alles tegelijk rebooten ook niet.

  1. Sidebar → Kernel CVE's → tab Actieve batches
  2. Knop 'Nieuwe batch' → tag-selector 'production' + target kernel
  3. TOTP invullen → Start canary
  4. Volg canary → primary → completed in dezelfde view

Elke kernel-EAT belandt in audit_log + transparency_log. Cliënt + auditor kunnen offline verifiëren met monsys-verify-eat CLI.

Hetzelfde via API (bash) — voor automatisering
curl -X POST https://app.monsys.ai/api/v1/kernel-updates/batches \
  -H "Authorization: Bearer $TOKEN" \
  -H "X-TOTP-Code: 123456" \
  -d '{
    "title":           "USN-2026-1234 — kernel 6.8.0-49.49",
    "target_kernel":   "6.8.0-49.49",
    "package_manager": "apt",
    "reboot_strategy": "auto-at-window",
    "selector_kind":   "tag",
    "selector_value":  {"tag":"production"}
  }'
03

Waarom kreeg ik 438 alerts vannacht

Alert-dedup faalt meestal omdat een title een variabele waarde (count, percentage, timestamp) bevat — elke nieuwe waarde = nieuwe dedup-key = nieuwe alert.

  1. Sidebar → Alerts → tab 'Grouped by title'
  2. Sorteer descending op count
  3. Klik door op grootste groep — staat er een waarde in title?
  4. /settings/alert-rules → regel aanpassen zodat waarde in description komt

InsertAlert helper dedupt 30 min per (tenant, agent, category, title). Maintenance-windows silencen automatisch tijdens onderhoud.

Hetzelfde via API (sql) — voor automatisering
SELECT title, COUNT(*),
       MIN(created_at), MAX(created_at)
  FROM alerts
 WHERE tenant_id = $1::UUID
   AND created_at >= NOW() - INTERVAL '24 hours'
 GROUP BY title
 ORDER BY 2 DESC LIMIT 10;
04

Werknemer vertrokken — vind elk systeem waar ze toegang hadden

Alice neemt morgen ontslag. Je moet weten: welke servers, welke SSH-keys, welke Copilot/OpenAI seats, welke sudo-rechten — over alle tenants.

  1. Sidebar → Identity surface → zoek 'alice@'
  2. Bekijk gekoppelde systemen (hosts, SSH keys, Copilot seats)
  3. Per systeem 'Revoke' knop → TOTP
  4. Audit-log toont 'identity_revoked' als bewijs

Acties via run_playbook EAT zitten in audit_log per host + één parent-row die alle child-EATs linkt voor traceability.

Hetzelfde via API (bash) — voor automatisering
# Identity surface — search across systems
curl 'https://app.monsys.ai/api/v1/identity/persons?email=alice@acme.com' \
  -H "Authorization: Bearer $TOKEN"

# Bulk revoke via a playbook EAT (TOTP required)
curl -X POST https://app.monsys.ai/api/v1/agents/<id>/emergency \
  -H "X-TOTP-Code: 123456" \
  -d '{"actions":[{"kind":"run_playbook","id":"revoke-user"}]}'
05

Werken de productie-DB backups nog wel

Backup-tools rapporteren success/failure naar monsys. Een tool die niet meer draait sinds 18 dagen rapporteert ook geen failure — alleen stilte.

  1. Sidebar → Inventaris → tab Backups
  2. Filter op tag 'production-db'
  3. Sorteer 'Last successful' ascending
  4. Klik 'Create alert rule' op stale host → threshold 25u

Backup-evidence (last 90d successful runs per host) verschijnt automatisch in de maandelijkse Audit Pack onder NIS2 §2(c) business continuity.

Hetzelfde via API (sql) — voor automatisering
SELECT a.hostname, b.tool, b.destination,
       b.last_successful_run,
       NOW() - b.last_successful_run AS age,
       b.last_failure_message
  FROM backup_configs b
  JOIN agents a ON a.id = b.agent_id
 WHERE b.tenant_id = $1::UUID
   AND 'production-db' = ANY(a.tags)
 ORDER BY b.last_successful_run NULLS FIRST;

Andere rollen

Lees de uitgebreide praktijk-docs