mirror of
https://github.com/prometheus/prometheus.git
synced 2024-12-25 05:34:05 -08:00
Add experimental flag and docs
Signed-off-by: Julien Pivotto <roidelapluie@o11y.eu>
This commit is contained in:
parent
e1ace8d00e
commit
b3b669fd9a
|
@ -92,6 +92,8 @@ func main() {
|
||||||
|
|
||||||
checkCmd := app.Command("check", "Check the resources for validity.")
|
checkCmd := app.Command("check", "Check the resources for validity.")
|
||||||
|
|
||||||
|
experimental := app.Flag("experimental", "Enable experimental commands.").Bool()
|
||||||
|
|
||||||
sdCheckCmd := checkCmd.Command("service-discovery", "Perform service discovery for the given job name and report the results, including relabeling.")
|
sdCheckCmd := checkCmd.Command("service-discovery", "Perform service discovery for the given job name and report the results, including relabeling.")
|
||||||
sdConfigFile := sdCheckCmd.Arg("config-file", "The prometheus config file.").Required().ExistingFile()
|
sdConfigFile := sdCheckCmd.Arg("config-file", "The prometheus config file.").Required().ExistingFile()
|
||||||
sdJobName := sdCheckCmd.Arg("job", "The job to run service discovery for.").Required().String()
|
sdJobName := sdCheckCmd.Arg("job", "The job to run service discovery for.").Required().String()
|
||||||
|
@ -246,7 +248,7 @@ func main() {
|
||||||
"A list of one or more files containing recording rules to be backfilled. All recording rules listed in the files will be backfilled. Alerting rules are not evaluated.",
|
"A list of one or more files containing recording rules to be backfilled. All recording rules listed in the files will be backfilled. Alerting rules are not evaluated.",
|
||||||
).Required().ExistingFiles()
|
).Required().ExistingFiles()
|
||||||
|
|
||||||
promQLCmd := app.Command("promql", "PromQL formatting and editing.")
|
promQLCmd := app.Command("promql", "PromQL formatting and editing. Requires the --experimental flag.")
|
||||||
|
|
||||||
promQLFormatCmd := promQLCmd.Command("format", "Format PromQL query to pretty printed form.")
|
promQLFormatCmd := promQLCmd.Command("format", "Format PromQL query to pretty printed form.")
|
||||||
promQLFormatQuery := promQLFormatCmd.Arg("query", "PromQL query.").Required().String()
|
promQLFormatQuery := promQLFormatCmd.Arg("query", "PromQL query.").Required().String()
|
||||||
|
@ -386,16 +388,26 @@ func main() {
|
||||||
os.Exit(checkErr(documentcli.GenerateMarkdown(app.Model(), os.Stdout)))
|
os.Exit(checkErr(documentcli.GenerateMarkdown(app.Model(), os.Stdout)))
|
||||||
|
|
||||||
case promQLFormatCmd.FullCommand():
|
case promQLFormatCmd.FullCommand():
|
||||||
|
checkExperimental(*experimental)
|
||||||
os.Exit(checkErr(formatPromQL(*promQLFormatQuery)))
|
os.Exit(checkErr(formatPromQL(*promQLFormatQuery)))
|
||||||
|
|
||||||
case promQLLabelsSetCmd.FullCommand():
|
case promQLLabelsSetCmd.FullCommand():
|
||||||
|
checkExperimental(*experimental)
|
||||||
os.Exit(checkErr(labelsSetPromQL(*promQLLabelsSetQuery, *promQLLabelsSetType, *promQLLabelsSetName, *promQLLabelsSetValue)))
|
os.Exit(checkErr(labelsSetPromQL(*promQLLabelsSetQuery, *promQLLabelsSetType, *promQLLabelsSetName, *promQLLabelsSetValue)))
|
||||||
|
|
||||||
case promQLLabelsDeleteCmd.FullCommand():
|
case promQLLabelsDeleteCmd.FullCommand():
|
||||||
|
checkExperimental(*experimental)
|
||||||
os.Exit(checkErr(labelsDeletePromQL(*promQLLabelsDeleteQuery, *promQLLabelsDeleteName)))
|
os.Exit(checkErr(labelsDeletePromQL(*promQLLabelsDeleteQuery, *promQLLabelsDeleteName)))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func checkExperimental(f bool) {
|
||||||
|
if !f {
|
||||||
|
fmt.Fprintln(os.Stderr, "This command is experimental and requires the --experimental flag to be set.")
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// nolint:revive
|
// nolint:revive
|
||||||
var lintError = fmt.Errorf("lint error")
|
var lintError = fmt.Errorf("lint error")
|
||||||
|
|
||||||
|
|
|
@ -14,6 +14,7 @@ Tooling for the Prometheus monitoring system.
|
||||||
| --- | --- |
|
| --- | --- |
|
||||||
| <code class="text-nowrap">-h</code>, <code class="text-nowrap">--help</code> | Show context-sensitive help (also try --help-long and --help-man). |
|
| <code class="text-nowrap">-h</code>, <code class="text-nowrap">--help</code> | Show context-sensitive help (also try --help-long and --help-man). |
|
||||||
| <code class="text-nowrap">--version</code> | Show application version. |
|
| <code class="text-nowrap">--version</code> | Show application version. |
|
||||||
|
| <code class="text-nowrap">--experimental</code> | Enable experimental commands. |
|
||||||
| <code class="text-nowrap">--enable-feature</code> | 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. |
|
| <code class="text-nowrap">--enable-feature</code> | 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. |
|
||||||
|
|
||||||
|
|
||||||
|
@ -30,6 +31,7 @@ Tooling for the Prometheus monitoring system.
|
||||||
| push | Push to a Prometheus server. |
|
| push | Push to a Prometheus server. |
|
||||||
| test | Unit testing. |
|
| test | Unit testing. |
|
||||||
| tsdb | Run tsdb commands. |
|
| tsdb | Run tsdb commands. |
|
||||||
|
| promql | PromQL formatting and editing. Requires the --experimental flag. |
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -609,3 +611,72 @@ Create blocks of data for new recording rules.
|
||||||
| rule-files | A list of one or more files containing recording rules to be backfilled. All recording rules listed in the files will be backfilled. Alerting rules are not evaluated. | Yes |
|
| rule-files | A list of one or more files containing recording rules to be backfilled. All recording rules listed in the files will be backfilled. Alerting rules are not evaluated. | Yes |
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### `promtool promql`
|
||||||
|
|
||||||
|
PromQL formatting and editing. Requires the --experimental flag.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
##### `promtool promql format`
|
||||||
|
|
||||||
|
Format PromQL query to pretty printed form.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
###### Arguments
|
||||||
|
|
||||||
|
| Argument | Description | Required |
|
||||||
|
| --- | --- | --- |
|
||||||
|
| query | PromQL query. | Yes |
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
##### `promtool promql label-matchers`
|
||||||
|
|
||||||
|
Edit label matchers contained within an existing PromQL query.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
##### `promtool promql label-matchers set`
|
||||||
|
|
||||||
|
Set a label matcher in the query.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
###### Flags
|
||||||
|
|
||||||
|
| Flag | Description | Default |
|
||||||
|
| --- | --- | --- |
|
||||||
|
| <code class="text-nowrap">-t</code>, <code class="text-nowrap">--type</code> | Type of the label matcher to set. | `=` |
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
###### Arguments
|
||||||
|
|
||||||
|
| Argument | Description | Required |
|
||||||
|
| --- | --- | --- |
|
||||||
|
| query | PromQL query. | Yes |
|
||||||
|
| name | Name of the label matcher to set. | Yes |
|
||||||
|
| value | Value of the label matcher to set. | Yes |
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
##### `promtool promql label-matchers delete`
|
||||||
|
|
||||||
|
Delete a label from the query.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
###### Arguments
|
||||||
|
|
||||||
|
| Argument | Description | Required |
|
||||||
|
| --- | --- | --- |
|
||||||
|
| query | PromQL query. | Yes |
|
||||||
|
| name | Name of the label to delete. | Yes |
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue