- Rust 内置默认值;
--config指定的文件;MS_环境变量。
src/config/。仓库维护的生产向示例是 conf/config.toml;升级时请检查该文件,因为未填写的新设置会使用代码默认值。
仅 Secret 的值
以下值应尽量保留在 TOML 外:
生产环境通常应在 Mole Agent → Agent 设置中创建模型供应商。供应商 Key 会加密、只写保存,并优先于环境变量回退从 PostgreSQL 解析。
节点角色
standalone、router、intake、querier、compactor 与 alert_manager。standalone 会组合完整服务。id 为空时在启动时生成。关闭进程会等待最多 drain_timeout_secs,让待处理采集数据刷写完成。
网络监听器
HTTP 与 TLS
external_url 设置为公开 Origin。启用 TLS 后会启动 ACME HTTP-01 Listener 与 rustls SNI 端点。
内部 gRPC、Flight SQL 与 OTLP
5082 暴露到不可信网络。对外 OTLP 与 Flight SQL 要求 Bearer 身份验证;公开暴露前请终止 TLS。
元数据与对象存储
内置开发默认值使用 SQLite 与本地文件系统。仓库示例使用 PostgreSQL 保存元数据。local、s3、azure 与 gcs。凭据优先级是环境变量、凭据文件、TOML 内联。多节点部署请使用共享对象存储与 PostgreSQL。
采集、WAL、查询与保留
concurrency = 0 使用可用 CPU。查询估算超过 auto_async_threshold_rows 时会转为异步搜索任务;将阈值设为 0 可关闭自动转换。数据流保留策略会覆盖 Compactor 默认值。
集群与限流
advertise_addr 设为所有对等节点都能访问的地址。速率设为 0 会关闭对应限制。远程集群定义与组织映射保存在数据库中,不属于该配置块。
告警与邮件
host 非空时启用 SMTP。Slack、Webhook 渠道、通知模板、值班计划与升级策略是组织资源,通过 UI 或 API 管理。
身份验证与许可证
[auth].jwt_secret 设置会被忽略,应当删除。
许可证内容永远不会嵌入 TOML。两个许可证开关只控制 MS_LICENSE_FILE 是否可以初始化空数据库,或从损坏的活动版本恢复。
自身可观测性与性能剖析
进程日志使用[telemetry]。尾采样、受保护的 _sys 采集、外部链路导出和 pprof Listener 使用以下嵌套分区:
conf/config.toml。修改前请阅读自身可观测性。
搜索任务、缓存与冷元数据
以下分区用于调整查询准入与运行存储:[search.admission]按工作组设置节点与集群并发。[search] max_result_rows限制无界且非聚合的结果。[search.stream_agg_cache]缓存已关闭的 PromQL 窗口;capacity = 0表示关闭。[search_jobs]控制 Worker 数量、空闲轮询与清理。[cache.*]设置 FileMeta、Parquet 元数据、查询结果、Tantivy、Footer 与冷 Dump 缓存。[cache.disk_cache] max_size_gb = 0关闭本地 Parquet 缓存。[storage.file_meta_dump]将旧 FileMeta 分区迁移到对象存储。
函数、报告与 Agent
js-runtime 构建,并且没有独立运行配置开关。llm_eval_enabled 允许数据管道按事件调用模型,可能增加采集延迟与成本。
PDF 与 PNG 报告需要启用渲染器,并配置可访问的 Web base_url。
[agent].enabled 是本地开发解锁。生产环境使用签名 agent 授权与 IAM 权限。模型供应商、提示词、工具、MCP 服务器与审批策略保存在 PostgreSQL 中,并在产品内管理。