Folder structure
Every component lives in one folder (/opt/mugnsoft/<component> or C:\Mugnsoft\<component> with the install scripts) and creates its subfolders at first start. Back up the whole folder; do not delete subfolders unless you know what they hold.
Common to every component
<component>/
├── <component> / <component>.exe the program
├── <component>.json configuration (see Components Deep Dive)
├── license_MNS.dat Webserver and Integrator only
├── config/
│ ├── sec/
│ │ ├── mugnsoft_<component>.key RSA key pair signing the component's API tokens
│ │ └── mugnsoft_<component>.key.pub (created at install)
│ └── ssl/
│ ├── certificates/<component>.pem HTTPS certificate of the component's API
│ └── private/<component>.key (self-signed, created at first start)
├── dbs/ databases (BoltDB *.db files)
│ └── backup/<date>/ daily copies (backupInterval, nbDaysBackup)
├── log/<component>.log log file, rotated and compressed
└── data/ files produced at runtime
config/ holds the component’s identity: losing it means registering the component again. dbs/ holds its history and settings.
Webserver
webserver/
├── webserver(.exe), webserver.json, license_MNS.dat
├── config/
│ ├── sec/mugnsoft_webserver.key(.pub) signs the users' sessions
│ └── ssl/
│ ├── certificates/
│ │ ├── webserver.pem the Webserver's own HTTPS certificate
│ │ └── <type>_<name>.pem one per registered component (exchanged at install)
│ └── private/webserver.key
├── dbs/ webserver.db (users, settings, apps), metrics.db, app.db, disco.db, ...
├── discovery/ topology data received from the Sentinel Agents
├── data/ monitor files fetched from the probes (screenshots, HARs, videos)
├── export/ CSV / configuration exports
├── integrator_buffer/ notifications waiting to be re-sent to an Integrator
├── front_buffer/ pushes waiting for the Webserver-Front (when one is configured)
├── pki/ Webserver-Front replication keys (when one is configured)
└── log/webserver.log
To use your own HTTPS certificate for the Web UI, replace config/ssl/certificates/webserver.pem and config/ssl/private/webserver.key and restart.
Monitor probe
monitor/
├── monitor(.exe), monitor.json
├── config/ keys and certificate (monitor.pem); certificates/ also receives the Integrators' certificates
├── drivers/ browser webdrivers for EUM journeys
├── exec/ EUM runtime: JDK, MNSCli*.jar, ffmpeg, log4j2.xml
├── dbs/ one database per monitor type: exec.db (EUM), url.db, api.db, tcp.db, ping.db, ...
├── data/<monitor>/ per-monitor files: scenario, screenshots, HARs, videos, logs
├── scripts/ your scripts run on success, failure or status change (optional)
├── export/, integrator_buffer/
├── install.sh, uninstall.sh Linux package only (the install script does the same)
└── log/monitor.log
Integrator
integrator/
├── integrator(.exe), integrator.json, license_MNS.dat
├── config/ keys and certificate (integrator.pem)
├── dbs/ integrator.db, event.db, metrics.db
├── data/ CSV / JSON event files, when those outputs are enabled
├── notif_buffer/ notifications waiting to be re-sent to an output
├── scripts/ scripts run as a notification action (optional)
└── log/integrator.log
Sentinel Agent
discovery_agent/
├── discovery_agent(.exe), discovery_agent.json
├── config/ keys and certificate (discovery_agent.pem)
├── dbs/ discovery.db, system.db, process.db, logs.db, metrics.db
├── data/ files produced at runtime
├── scripts/ scripts run on status change (optional)
├── integrator_buffer/
└── log/discovery_agent.log
Webserver-Front
Same layout as the Webserver, without license, plus the replication material: pki/repl_ca.crt and pki/repl_sign.pub, and its HTTPS certificate in config/ssl/. See Install the Webserver-Front.