Prometheus 监控服务器
命令行标志
| 标志 | 描述 | 默认值 |
|---|---|---|
-h, --help |
显示上下文相关的帮助信息(也可尝试 --help-long 和 --help-man)。 | |
--version |
显示应用程序版本。 | |
--config.file |
Prometheus 配置文件路径。 | prometheus.yml |
--config.auto-reload-interval |
指定检查和自动重新加载 Prometheus 配置文件的间隔。 | 30s |
--web.listen-address ... |
UI、API 和遥测数据的监听地址。可以重复指定。 | 0.0.0.0:9090 |
--auto-gomaxprocs |
自动设置 GOMAXPROCS 以匹配 Linux 容器 CPU 配额 | true |
--auto-gomemlimit |
自动设置 GOMEMLIMIT 以匹配 Linux 容器或系统内存限制 | true |
--auto-gomemlimit.ratio |
预留 GOMEMLIMIT 内存与检测到的最大容器或系统内存的比率 | 0.9 |
--web.config.file |
[实验性] 可启用 TLS 或认证的配置文件路径。 | |
--web.read-timeout |
读取请求超时和关闭空闲连接之前的最大持续时间。 | 5m |
--web.max-connections |
所有监听器的最大同时连接数。 | 512 |
--web.max-notifications-subscribers |
限制可以同时接收实时通知的最大订阅者数量。如果达到限制,新的订阅请求将被拒绝,直到现有连接关闭。 | 16 |
--web.external-url |
Prometheus 的外部可访问 URL(例如,如果 Prometheus 通过反向代理提供服务)。用于生成指向 Prometheus 自身的相对和绝对链接。如果 URL 包含路径部分,它将用作 Prometheus 提供的所有 HTTP 端点的前缀。如果省略,相关的 URL 组件将自动推导。 | |
--web.route-prefix |
Web 端点内部路由的前缀。默认为 --web.external-url 的路径。 | |
--web.user-assets |
静态资源目录的路径,可通过 /user 访问。 | |
--web.enable-lifecycle |
启用通过 HTTP 请求进行关闭和重新加载。 | false |
--web.enable-admin-api |
启用管理控制操作的 API 端点。 | false |
--web.enable-remote-write-receiver |
启用接受 remote write 请求的 API 端点。 | false |
--web.remote-write-receiver.accepted-protobuf-messages |
接收 remote write 时接受的 protobuf 消息列表。支持的值:prometheus.WriteRequest, io.prometheus.write.v2.Request | prometheus.WriteRequest |
--web.enable-otlp-receiver |
启用接受 OTLP 写入请求的 API 端点。 | false |
--web.console.templates |
控制台模板目录的路径,可通过 /consoles 访问。 | consoles |
--web.console.libraries |
控制台库目录的路径。 | console_libraries |
--web.page-title |
Prometheus 实例的文档标题。 | Prometheus Time Series Collection and Processing Server |
--web.cors.origin |
CORS origin 的正则表达式。完全锚定。示例:'https?://(domain1|domain2).com' | .* |
--storage.tsdb.path |
指标存储的基本路径。仅在服务器模式下使用。 | data/ |
--storage.tsdb.retention.time |
[已废弃] 存储中保留样本的时长。如果此标志和 "storage.tsdb.retention.size" 都未设置,保留时间默认为 15d。支持的单位:y, w, d, h, m, s, ms。此标志已废弃,请改用配置文件中的 storage.tsdb.retention.time 字段。仅在服务器模式下使用。 | |
--storage.tsdb.retention.size |
[已废弃] 可为块存储的最大字节数。需要单位,支持的单位:B, KB, MB, GB, TB, PB, EB。例如:"512MB"。基于 2 的幂,因此 1KB 为 1024B。此标志已废弃,请改用配置文件中的 storage.tsdb.retention.size 字段。仅在服务器模式下使用。 | |
--storage.tsdb.no-lockfile |
不在数据目录中创建锁文件。仅在服务器模式下使用。 | false |
--storage.tsdb.head-chunks-write-queue-size |
用于将 head chunks 写入磁盘进行 m-map 的队列大小,0 表示完全禁用队列。实验性。仅在服务器模式下使用。 | 0 |
--storage.tsdb.delay-compact-file.path |
包含已上传 TSDB 块的 JSON 文件路径,例如 Thanos shipper 元文件。如果设置,TSDB 将仅压缩在该文件中标记为已上传的 1 级块,改善外部存储集成(例如 Thanos sidecar)。1+ 级压缩不会被延迟。仅在服务器模式下使用。 | |
--storage.agent.path |
指标存储的基本路径。仅在 agent 模式下使用。 | data-agent/ |
--storage.agent.wal-compression |
压缩 agent WAL。如果为 false,则忽略 --storage.agent.wal-compression-type 标志。仅在 agent 模式下使用。 | true |
--storage.agent.retention.min-time |
样本在 WAL 截断时被视为可删除之前的最小年龄。仅在 agent 模式下使用。 | |
--storage.agent.retention.max-time |
样本在 WAL 截断时被强制删除之前的最大年龄。仅在 agent 模式下使用。 | |
--storage.agent.no-lockfile |
不在数据目录中创建锁文件。仅在 agent 模式下使用。 | false |
--storage.remote.flush-deadline |
关闭或重新加载配置时等待刷新样本的时间。 | 1m |
--storage.remote.read-sample-limit |
通过 remote read 接口在单个查询中返回的最大样本总数。0 表示无限制。对于流式响应类型,此限制将被忽略。仅在服务器模式下使用。 | 5e7 |
--storage.remote.read-concurrent-limit |
最大并发 remote read 调用数。0 表示无限制。仅在服务器模式下使用。 | 10 |
--storage.remote.read-max-bytes-in-frame |
流式 remote read 响应类型在编组前单帧的最大字节数。注意客户端可能也有帧大小限制。默认按 protobuf 建议为 1MB。仅在服务器模式下使用。 | 1048576 |
--rules.alert.for-outage-tolerance |
恢复告警 "for" 状态时容忍 Prometheus 中断的最大时间。仅在服务器模式下使用。 | 1h |
--rules.alert.for-grace-period |
告警和恢复 "for" 状态之间的最小持续时间。仅对配置的 "for" 时间大于宽限期的告警维护。仅在服务器模式下使用。 | 10m |
--rules.alert.resend-delay |
重新发送告警到 Alertmanager 之前的最小等待时间。仅在服务器模式下使用。 | 1m |
--rules.max-concurrent-evals |
可以并发运行的独立规则的全局并发限制。设置时,可能需要相应调整 "query.max-concurrency"。仅在服务器模式下使用。 | 4 |
--alertmanager.notification-queue-capacity |
待处理 Alertmanager 通知队列的容量。仅在服务器模式下使用。 | 10000 |
--alertmanager.notification-batch-size |
发送到 Alertmanager 的每批最大通知数。仅在服务器模式下使用。 | 256 |
--alertmanager.drain-notification-queue-on-shutdown |
关闭时发送任何未处理的 Alertmanager 通知。如果为 false,关闭时将丢弃所有未处理的 Alertmanager 通知。仅在服务器模式下使用。 | true |
--query.lookback-delta |
在表达式评估和联邦期间检索指标的最大回溯持续时间。仅在服务器模式下使用。 | 5m |
--query.timeout |
查询在被中止之前可以花费的最大时间。仅在服务器模式下使用。 | 2m |
--query.max-concurrency |
同时执行的最大查询数。仅在服务器模式下使用。 | 20 |
--query.max-samples |
单个查询可以加载到内存中的最大样本数。请注意,如果查询尝试加载超过此数量的样本到内存中,查询将失败,因此这也限制了查询可以返回的样本数。仅在服务器模式下使用。 | 50000000 |
--enable-feature ... |
要启用的功能名称,逗号分隔。有效选项:exemplar-storage, expand-external-labels, memory-snapshot-on-shutdown, promql-per-step-stats, promql-experimental-functions, extra-scrape-metrics, auto-gomaxprocs, created-timestamp-zero-ingestion, st-storage, concurrent-rule-eval, delayed-compaction, old-ui, otlp-deltatocumulative, promql-duration-expr, use-uncached-io, promql-extended-range-selectors, promql-binop-fill-modifiers, xor2-encoding。详见 https://prometheus.io/docs/prometheus/latest/feature_flags/。 | |
--agent |
以 'Agent 模式' 运行 Prometheus。 | |
--log.level |
仅记录给定严重级别及以上的日志消息。可选值:[debug, info, warn, error] | info |
--log.format |
日志消息的输出格式。可选值:[logfmt, json] | logfmt |