Component Config Builder
The Component Config Builder is a guided chat wizard that generates a ready-to-run configuration file for any Mugnsoft component: a Probe (monitor.json), an Integrator (integrator.json) or a Sentinel Agent (discovery_agent.json). Answer a few questions — the builder fills in every other setting with production-safe defaults.
Opening the builder
From the Components page:
- click the robot icon in the toolbar (next to the “plus” add button), or
- click Build config file in the empty-state message shown when no component is registered yet.
Admin rights are required.
How it works
- Pick a component type — Probe, Integrator or Sentinel Agent.
- Answer the questions — free text, number, or one-click choice chips. A ← Back chip lets you return to the previous question at any time; re-answering simply overwrites the previous value.
- Review the summary — before anything is generated, the builder shows a recap of all your answers. Click the pencil icon next to any field to change just that answer; you return straight to the summary afterwards.
- Generate — click Generate config. A collapsible preview of the exact file content appears in the chat.
- Download or copy — use Download config to save the file, or Copy JSON to copy its content to the clipboard.
- Deploy — copy the file next to the component binary on the target machine and start the service. The component self-registers with the webserver on startup:
# Linux
./discovery_agent install && ./discovery_agent start
# Windows
discovery_agent.exe install && discovery_agent.exe start
•••••••• in the chat and the summary. They are written in clear text only inside the generated file.
If an answer fails the final validation, the builder jumps back to the offending question so you can fix it — no need to start over.
Express vs Custom (Sentinel Agent)
The Sentinel Agent flow starts with a mode choice:
- Express (recommended) — you answer only the 5 essentials: name, application, port, processes and schedule. Everything else uses the defaults listed below.
- Custom — walks through all options: capture interval, filesystems, per-process traffic thresholds, URLs, APIs, log monitors, folder monitors, notifications…
Any setting can be refined later in the component’s Details form on the Components page.
Express mode defaults
The tables below list every value the builder writes when you pick Express (or press Enter to skip an optional question in Custom mode). See the Sentinel Agent configuration reference for the meaning of each field.
*AutoThreshold: "true" means thresholds are learned from history — the paired *FixedThresh* values are only used if you later switch auto-thresholding off. An empty value ("") means unset: no alert fires for that severity (shown as ∞ in the UI).
Collection & discovery
| Key | Default |
|---|---|
discoCapInterval |
"10" (seconds of traffic sniffing per cycle) |
discoFSGMonitored |
"C:" |
ports / probeEndPoint / tags / location / description |
"" |
integratorEndPoint |
"" (no integrator) |
trafficThresholds |
{} (per-process traffic alerting off) |
urls / apis / logMonitors / dirMonitors |
not set |
Auto-threshold engine
| Key | Default |
|---|---|
discoGAutoThresholdRange / discoPAutoThresholdRange |
"24" (hours of history) |
discoGAutoThreshCri / discoPAutoThreshCri |
"6" (std-dev factor) |
discoGAutoThreshMaj / discoPAutoThreshMaj |
"4" |
discoGAutoThreshMin / discoPAutoThreshMin |
"2" |
System metrics (global)
All system metrics are enabled (*GMonEnabled: "true").
| Metric | Auto | Fixed Cri / Maj / Min |
|---|---|---|
discoCPUG* |
"true" |
99 / 98 / 0.01 |
discoMEMG* |
"true" |
99 / 98 / 97 |
discoLoadAvg1minG* / 5minG* / 15minG* |
"true" |
200 / 150 / 100 |
discoFSG* |
"true" |
99 / 98 / 97 |
discoFSInodesG* |
"true" |
98 / 96 / 90 |
discoTCPSocketsG* |
"true" |
unset |
discoCpuIOWaitG* |
"false" |
unset (collected, never alerts) |
discoDiskQueueG* |
"false" |
unset (collected, never alerts) |
discoDiskUtilG* |
"true" |
95 / 85 / 70 |
discoDiskReadRateG* / discoDiskWriteRateG* |
"true" |
500 / 300 / 100 |
discoNetBytesRateG* |
"true" |
100000000 / 50000000 / 10000000 |
discoNetTxDropsG* |
"false" |
unset (collected, never alerts) |
discoSwapInRateG* / discoSwapOutRateG* |
"true" |
1048576 / 524288 / 102400 |
Per-process metrics
All per-process metrics are enabled (*PMonEnabled: "true") and auto-thresholded (*PAutoThreshold: "true").
| Metric | Fixed Cri / Maj / Min (used only if auto is later disabled) |
|---|---|
discoCPUP* |
98 / 96 / 90 |
discoMEMP* |
unset / 3 / 1 |
discoSWAPP* |
unset / 3 / 1 |
discoCPUUserP* |
unset |
discoIostatReadP* / discoIostatWriteP* |
unset |
discoNumThreadsP* / discoNumFDsP* |
unset |
Notifications & actions
| Key | Default |
|---|---|
notifyStatus |
"MINOR" (minimum severity that triggers a notification) |
notifyAfter |
"1" (consecutive breaches before first alert) |
notifyFor |
"2" (alerting cycles) |
emailOnF / emailOnSC / slackOnF / slackOnSC / teamsOnF / teamsOnSC / pdOnF / pdOnSC |
"false" |
emailR |
"" |
scriptOnF / scriptOnSC |
"false", scriptAction / scriptActionT "" |
integratorRetryQueueSize |
"500" |
Service & logging
| Key | Default |
|---|---|
logLevel |
"info" |
logCompress |
"true" |
maxSize |
"10" (MB per log file) |
maxBackups |
"5" |
maxAge |
"28" (days) |
logMaxLinesPerTick |
"100000" |
backupInterval |
"24" (hours between KV backups) |
nbDaysBackup |
"336" (hours of backup retention) |
The builder also resolves webserver (the endpoint the component reports to) and the internal shared secret automatically from the running webserver — you never type those.
Probe and Integrator flows
Both flows are short (no Express/Custom split):
- Probe — name, port (default
8072), location, description, optional integrator selection (fetched live from the webserver). Producesmonitor.jsonwith auto-thresholding enabled (24 h range, std-dev factors 8/6/4). - Integrator — name, port (default
8060), description, then one yes/no section per notification channel: Email (recipients only — SMTP settings are inherited from the webserver), PagerDuty, Slack, Microsoft Teams. Producesintegrator.json.
See the Probe and Integrator configuration references for the full field list.