Provided by: promtool_2.53.3+ds1-2_amd64 

NAME
promtool - Tooling for the Prometheus monitoring system
SYNOPSIS
promtool [<flags>] <command> [<args> ...]
DESCRIPTION
Tooling for the Prometheus monitoring system.
OPTIONS
-h, --help Show context-sensitive help (also try --help-long and --help-man). --version Show application version. --experimental Enable experimental commands. --enable-feature= Comma separated feature names to enable (only PromQL related and no-default-scrape-port). See https://prometheus.io/docs/prometheus/latest/feature_flags/ for the options and more details.
COMMANDS
help [<command>...] Show help. check service-discovery [<flags>] <config-file> <job> Perform service discovery for the given job name and report the results, including relabeling. --timeout=30s The time to wait for discovery results. check config [<flags>] <config-files>... Check if the config files are valid or not. --syntax-only Only check the config file syntax, ignoring file and content validation referenced in the config --lint Linting checks to apply to the rules specified in the config. Available options are: all, duplicate-rules, none. Use --lint=none to disable linting --lint-fatal Make lint errors exit with exit code 3. --agent Check config file for Prometheus in Agent mode. check web-config <web-config-files>... Check if the web config files are valid or not. check healthy [<flags>] Check if the Prometheus server is healthy. --http.config.file=<filename> HTTP client configuration file for promtool to connect to Prometheus. --url=http://localhost:9090 The URL for the Prometheus server. check ready [<flags>] Check if the Prometheus server is ready. --http.config.file=<filename> HTTP client configuration file for promtool to connect to Prometheus. --url=http://localhost:9090 The URL for the Prometheus server. check rules [<flags>] [<rule-files>...] Check if the rule files are valid or not. --lint Linting checks to apply. Available options are: all, duplicate-rules, none. Use --lint=none to disable linting --lint-fatal Make lint errors exit with exit code 3. check metrics Pass Prometheus metrics over stdin to lint them for consistency and correctness. examples: $ cat metrics.prom | promtool check metrics $ curl -s http://localhost:9090/metrics | promtool check metrics query instant [<flags>] <server> <expr> Run instant query. --time=TIME Query evaluation time (RFC3339 or Unix timestamp). query range [<flags>] <server> <expr> Run range query. --header=HEADER Extra headers to send to server. --start=START Query range start time (RFC3339 or Unix timestamp). --end=END Query range end time (RFC3339 or Unix timestamp). --step=STEP Query step size (duration). query series --match=MATCH [<flags>] <server> Run series query. --match=MATCH Series selector. Can be specified multiple times. --start=START Start time (RFC3339 or Unix timestamp). --end=END End time (RFC3339 or Unix timestamp). query labels [<flags>] <server> <name> Run labels query. --start=START Start time (RFC3339 or Unix timestamp). --end=END End time (RFC3339 or Unix timestamp). --match=MATCH Series selector. Can be specified multiple times. query analyze --server=SERVER --type=TYPE --match=MATCH [<flags>] Run queries against your Prometheus to analyze the usage pattern of certain metrics. --server=SERVER Prometheus server to query. --type=TYPE Type of metric: histogram. --duration=1h Time frame to analyze. --time=TIME Query time (RFC3339 or Unix timestamp), defaults to now. --match=MATCH Series selector. Can be specified multiple times. debug pprof <server> Fetch profiling debug information. debug metrics <server> Fetch metrics debug information. debug all <server> Fetch all debug information. push metrics [<flags>] <remote-write-url> [<metric-files>...] Push metrics to a prometheus remote write (for testing purpose only). --label=job=promtool Label to attach to metrics. Can be specified multiple times. --timeout=30s The time to wait for pushing metrics. --header=HEADER Prometheus remote write header. test rules [<flags>] <test-rule-file>... Unit tests for rules. --run=RUN If set, will only run test groups whose names match the regular expression. Can be specified multiple times. --diff [Experimental] Print colored differential output between expected & received output. tsdb bench write [<flags>] [<file*>] Run a write performance benchmark. --out Set the output path. --metrics=10000 Number of metrics to read. --scrapes=3000 Number of scrapes to simulate. tsdb analyze [<flags>] [<db path*>] [<block id>] Analyze churn, label pair cardinality and compaction efficiency. --limit=20 How many items to show in each list. --extended Run extended analysis. --match=MATCH Series selector to analyze. Only 1 set of matchers is supported now. tsdb list [<flags>] [<db path*>] List tsdb blocks. -r, --human-readable Print human readable values. tsdb dump [<flags>] [<db path*>] Dump samples from a TSDB. --sandbox-dir-root Root directory where a sandbox directory would be created in case WAL replay generates chunks. The sandbox directory is cleaned up at the end. --min-time=-9223372036854775808 Minimum timestamp to dump. --max-time=9223372036854775807 Maximum timestamp to dump. --match={__name__=~'(?s:.*)'} Series selector. Can be specified multiple times. tsdb dump-openmetrics [<flags>] [<db path*>] [Experimental] Dump samples from a TSDB into OpenMetrics text format, excluding native histograms and staleness markers, which are not representable in OpenMetrics. --sandbox-dir-root Root directory where a sandbox directory would be created in case WAL replay generates chunks. The sandbox directory is cleaned up at the end. --min-time=-9223372036854775808 Minimum timestamp to dump. --max-time=9223372036854775807 Maximum timestamp to dump. --match={__name__=~'(?s:.*)'} Series selector. Can be specified multiple times. tsdb create-blocks-from openmetrics <input file> [<output directory*>] Import samples from OpenMetrics input and produce TSDB blocks. Please refer to the storage docs for more details. tsdb create-blocks-from rules --start=START [<flags>] <rule-files>... Create blocks of data for new recording rules. --http.config.file=<filename> HTTP client configuration file for promtool to connect to Prometheus. --url=http://localhost:9090 The URL for the Prometheus API with the data where the rule will be backfilled from. --start=START The time to start backfilling the new rule from. Must be a RFC3339 formatted date or Unix timestamp. Required. --end=END If an end time is provided, all recording rules in the rule files provided will be backfilled to the end time. Default will backfill up to 3 hours ago. Must be a RFC3339 formatted date or Unix timestamp. --output-dir Output directory for generated blocks. --eval-interval=60s How frequently to evaluate rules when backfilling if a value is not set in the recording rule files. promql format <query> Format PromQL query to pretty printed form. promql label-matchers set [<flags>] <query> <name> <value> Set a label matcher in the query. -t, --type== Type of the label matcher to set. promql label-matchers delete <query> <name> Delete a label from the query. prometheus 2.53.3+ds1 June 2025 PROMTOOL(1)