MAMMOTH / OPERATIONS

Run it with perspective.

Configure the engine, understand its listeners and evaluate your deployment.

A readable configuration

The server accepts a TOML file with --config. The example below uses the source configuration schema. CLI defaults and environment overrides can affect the resulting settings; pass critical flags explicitly.

mammoth.toml
[server]
port = 27017
bind = "127.0.0.1"
data-dir = "./data"
log-level = "info"
query-timeout = "30s"

[server.auth]
enabled = true

[server.metrics]
port = 9100

[engine]
memtable-size = 67108864
cache-size = 134217728
compaction-threads = 2
wal-sync-mode = "full"
start with configuration
mammoth serve --config ./mammoth.toml --bind 127.0.0.1 --auth=true

Understand the listeners

Default portPurposeCLI option
27017MongoDB wire protocol--port
8080Health probes--health-port
8081Admin web UI--admin-port
9100Prometheus metrics--metrics-port

The database bind flag does not imply that every management listener is loopback-only. Use network isolation and firewall rules for management endpoints. Check the server wiring before exposing any listener publicly.

Observe the process

local monitoring
curl http://127.0.0.1:8080/health
curl http://127.0.0.1:8080/ready
curl http://127.0.0.1:8080/live
curl http://127.0.0.1:9100/metrics

The source integrates command metrics and health probes. Review structured logging and slow-query output alongside the workload you are evaluating.

Deploy, update and recover

The repository contains a Dockerfile, Compose example and systemd deployment guidance. Prefer building from an inspected tag over assuming a registry’s latest image is current. Keep persistent data outside disposable containers.

Before updating, read the changelog, back up data and test restoration into a separate directory. Exercise the CLI’s backup, restore, validate and stats help against your selected binary. No rolling-upgrade or format-compatibility guarantee is implied here.

Contribute to the engine

Open an issue with a minimal reproduction or propose a focused pull request in the source repository. Include the version, client driver, configuration and reproducible workload. Existing Go tests live with their packages and in the integration/e2e directories.

Grounded in the upstream source · snapshot 6b186803 · reviewed 19 October 2026.

Server command Configuration implementation Production guide