feat: add optional basic auth support for Loki client
Some Loki deployments (e.g., behind a reverse proxy or Grafana Cloud) require HTTP Basic Authentication. This adds optional --loki-username and --loki-password flags (and corresponding env vars) to the lab-monitoring server, along with NixOS module options for secure credential management via systemd LoadCredential. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -116,7 +116,9 @@ Configure in your MCP client (e.g., Claude Desktop):
|
||||
"env": {
|
||||
"PROMETHEUS_URL": "http://prometheus.example.com:9090",
|
||||
"ALERTMANAGER_URL": "http://alertmanager.example.com:9093",
|
||||
"LOKI_URL": "http://loki.example.com:3100"
|
||||
"LOKI_URL": "http://loki.example.com:3100",
|
||||
"LOKI_USERNAME": "optional-username",
|
||||
"LOKI_PASSWORD": "optional-password"
|
||||
}
|
||||
},
|
||||
"git-explorer": {
|
||||
@@ -351,6 +353,8 @@ hm-options delete release-23.11
|
||||
| `PROMETHEUS_URL` | Prometheus base URL for lab-monitoring | `http://localhost:9090` |
|
||||
| `ALERTMANAGER_URL` | Alertmanager base URL for lab-monitoring | `http://localhost:9093` |
|
||||
| `LOKI_URL` | Loki base URL for lab-monitoring (optional, enables log tools) | *(none)* |
|
||||
| `LOKI_USERNAME` | Username for Loki basic auth (optional) | *(none)* |
|
||||
| `LOKI_PASSWORD` | Password for Loki basic auth (optional) | *(none)* |
|
||||
|
||||
### Database Connection Strings
|
||||
|
||||
@@ -605,6 +609,8 @@ Both `options.http` and `packages.http` also support:
|
||||
| `prometheusUrl` | string | `"http://localhost:9090"` | Prometheus base URL |
|
||||
| `alertmanagerUrl` | string | `"http://localhost:9093"` | Alertmanager base URL |
|
||||
| `lokiUrl` | nullOr string | `null` | Loki base URL (enables log query tools when set) |
|
||||
| `lokiUsername` | nullOr string | `null` | Username for Loki basic authentication |
|
||||
| `lokiPasswordFile` | nullOr path | `null` | Path to file containing Loki password (uses systemd `LoadCredential`) |
|
||||
| `enableSilences` | bool | `false` | Enable the create_silence tool (write operation) |
|
||||
| `http.address` | string | `"127.0.0.1:8084"` | HTTP listen address |
|
||||
| `http.endpoint` | string | `"/mcp"` | HTTP endpoint path |
|
||||
|
||||
Reference in New Issue
Block a user