{"$schema":"http://json-schema.org/draft-07/schema#","$id":"https://json.schemastore.org/prometheus","title":"Prometheus","type":["object","null"],"properties":{"global":{"type":["object","null"],"properties":{"scrape_interval":{"$ref":"#/definitions/duration","default":"1m"},"scrape_timeout":{"$ref":"#/definitions/duration","default":"10s"},"evaluation_interval":{"$ref":"#/definitions/duration","default":"1m"},"external_labels":{"$ref":"#/definitions/labels"}},"additionalProperties":false},"rule_files":{"type":["array","null"],"items":{"$ref":"#/definitions/filepath_glob"}},"remote_write":{"type":["array","null"],"items":{"type":"object","properties":{"url":{"type":"string","format":"uri-reference"},"remote_timeout":{"$ref":"#/definitions/duration","default":"30s"},"write_relabel_configs":{"$ref":"#/definitions/relabel_configs"},"basic_auth":{"$ref":"#/definitions/basic_auth"},"bearer_token":{"$ref":"#/definitions/bearer_token"},"bearer_token_file":{"$ref":"#/definitions/bearer_token_file"},"tls_config":{"$ref":"#/definitions/tls_config"},"proxy_url":{"type":["string","null"],"format":"uri-reference"},"queue_config":{"type":["object","null"],"properties":{"capacity":{"type":["integer","null"],"default":500},"max_shards":{"type":["integer","null"],"default":1000},"min_shards":{"type":["integer","null"],"default":1},"max_samples_per_send":{"type":["integer","null"],"default":100},"batch_send_deadline":{"$ref":"#/definitions/duration","default":"5s"},"min_backoff":{"$ref":"#/definitions/duration","default":"30ms"},"max_backoff":{"$ref":"#/definitions/duration","default":"100ms"}}}},"allOf":[{"$ref":"#/definitions/auth"}],"additionalProperties":false,"required":["url"]}},"remote_read":{"type":["array","null"],"items":{"type":"object","properties":{"url":{"type":"string","format":"uri-reference"},"required_matchers":{"$ref":"#/definitions/labels"},"remote_timeout":{"$ref":"#/definitions/duration","default":"1m"},"read_recent":{"type":["boolean","null"],"default":false},"basic_auth":{"$ref":"#/definitions/basic_auth"},"bearer_token":{"$ref":"#/definitions/bearer_token"},"bearer_token_file":{"$ref":"#/definitions/bearer_token_file"},"tls_config":{"$ref":"#/definitions/tls_config"},"proxy_url":{"type":["string","null"],"format":"uri-reference"}},"allOf":[{"$ref":"#/definitions/auth"}],"additionalProperties":false,"required":["url"]}},"scrape_configs":{"type":["array","null"],"items":{"type":"object","properties":{"job_name":{"type":"string"},"scrape_interval":{"$ref":"#/definitions/duration"},"scrape_timeout":{"$ref":"#/definitions/duration"},"metrics_path":{"type":["string","null"],"default":"/metrics"},"honor_labels":{"type":["boolean","null"],"default":false},"honor_timestamps":{"type":["boolean","null"],"default":true},"scheme":{"$ref":"#/definitions/scheme"},"params":{"type":["object","null"],"additionalProperties":{"type":"array","items":{"type":"string"}}},"basic_auth":{"$ref":"#/definitions/basic_auth"},"bearer_token":{"$ref":"#/definitions/bearer_token"},"bearer_token_file":{"$ref":"#/definitions/bearer_token_file"},"tls_config":{"$ref":"#/definitions/tls_config"},"proxy_url":{"type":["string","null"],"format":"uri-reference"},"azure_sd_configs":{"$ref":"#/definitions/azure_sd_configs"},"consul_sd_configs":{"$ref":"#/definitions/consul_sd_configs"},"dns_sd_configs":{"$ref":"#/definitions/dns_sd_configs"},"ec2_sd_configs":{"$ref":"#/definitions/ec2_sd_configs"},"openstack_sd_configs":{"$ref":"#/definitions/openstack_sd_configs"},"file_sd_configs":{"$ref":"#/definitions/file_sd_configs"},"gce_sd_configs":{"$ref":"#/definitions/gce_sd_configs"},"kubernetes_sd_configs":{"$ref":"#/definitions/kubernetes_sd_configs"},"marathon_sd_configs":{"$ref":"#/definitions/marathon_sd_configs"},"nerve_sd_configs":{"$ref":"#/definitions/nerve_sd_configs"},"serverset_sd_configs":{"$ref":"#/definitions/serverset_sd_configs"},"triton_sd_configs":{"$ref":"#/definitions/triton_sd_configs"},"static_configs":{"$ref":"#/definitions/static_configs"},"relabel_configs":{"$ref":"#/definitions/relabel_configs"},"metric_relabel_configs":{"$ref":"#/definitions/relabel_configs"},"sample_limit":{"type":["integer","null"],"default":0}},"allOf":[{"$ref":"#/definitions/auth"}],"additionalProperties":false,"required":["job_name"]}},"alerting":{"type":["object","null"],"properties":{"alert_relabel_configs":{"$ref":"#/definitions/relabel_configs"},"alertmanagers":{"type":["array","null"],"items":{"type":"object","properties":{"timeout":{"$ref":"#/definitions/duration","default":"10s"},"api_version":{"type":["string","null"],"default":"v1"},"path_prefix":{"type":["string","null"],"default":"/"},"scheme":{"$ref":"#/definitions/scheme"},"basic_auth":{"$ref":"#/definitions/basic_auth"},"bearer_token":{"$ref":"#/definitions/bearer_token"},"bearer_token_file":{"$ref":"#/definitions/bearer_token_file"},"tls_config":{"$ref":"#/definitions/tls_config"},"proxy_url":{"type":["string","null"],"format":"uri-reference"},"azure_sd_configs":{"$ref":"#/definitions/azure_sd_configs"},"consul_sd_configs":{"$ref":"#/definitions/consul_sd_configs"},"dns_sd_configs":{"$ref":"#/definitions/dns_sd_configs"},"ec2_sd_configs":{"$ref":"#/definitions/ec2_sd_configs"},"file_sd_configs":{"$ref":"#/definitions/file_sd_configs"},"gce_sd_configs":{"$ref":"#/definitions/gce_sd_configs"},"kubernetes_sd_configs":{"$ref":"#/definitions/kubernetes_sd_configs"},"marathon_sd_configs":{"$ref":"#/definitions/marathon_sd_configs"},"nerve_sd_configs":{"$ref":"#/definitions/nerve_sd_configs"},"serverset_sd_configs":{"$ref":"#/definitions/serverset_sd_configs"},"triton_sd_configs":{"$ref":"#/definitions/triton_sd_configs"},"static_configs":{"$ref":"#/definitions/static_configs"},"relabel_configs":{"$ref":"#/definitions/relabel_configs"}},"allOf":[{"$ref":"#/definitions/auth"}]}}}}},"additionalProperties":false,"definitions":{"duration":{"type":["string","null"],"pattern":"^[0-9]+(ms|[smhdwy])$"},"label_name":{"type":"string","pattern":"^[a-zA-Z_][a-zA-Z0-9_]*$"},"label_value":{"type":"string"},"labels":{"type":["object","null"],"patternProperties":{"^[a-zA-Z_][a-zA-Z0-9_]*$":{"$ref":"#/definitions/label_value"}},"additionalProperties":false},"filepath_glob":{"type":"string"},"filepath":{"type":["string","null"],"format":"uri-reference"},"basic_auth":{"type":["object","null"],"properties":{"username":{"type":"string"},"password":{"type":["string","null"]},"password_file":{"$ref":"#/definitions/filepath"}},"oneOf":[{"required":["password"]},{"required":["password_file"]}],"additionalProperties":false,"required":["username"]},"bearer_token":{"type":["string","null"]},"bearer_token_file":{"$ref":"#/definitions/filepath"},"auth":{"allOf":[{"if":{"not":{"properties":{"basic_auth":{"const":null}}}},"then":{"properties":{"bearer_token":{"const":null},"bearer_token_file":{"const":null}}}},{"if":{"not":{"properties":{"bearer_token":{"const":null}}}},"then":{"properties":{"basic_auth":{"const":null},"bearer_token_file":{"const":null}}}},{"if":{"not":{"properties":{"bearer_token_file":{"const":null}}}},"then":{"properties":{"basic_auth":{"const":null},"bearer_token":{"const":null}}}}]},"relabel_configs":{"type":["array","null"],"items":{"type":"object","properties":{"source_labels":{"type":"array","items":{"$ref":"#/definitions/label_name"}},"separator":{"type":"string","default":";"},"target_label":{"$comment":"https://github.com/prometheus/prometheus/blob/release-2.13/config/testdata/conf.good.yml#L146 has a regex capture group, violating vanilla label_name definition.","type":"string"},"regex":{"$comment":"https://github.com/prometheus/prometheus/blob/release-2.13/config/testdata/conf.good.yml#L111 has integer instead of string","default":"(.*)"},"modulus":{"type":"integer"},"replacement":{"type":"string","default":"$1"},"action":{"type":"string","enum":["replace","keep","drop","hashmod","labelmap","labeldrop","labelkeep"],"default":"replace"}},"if":{"properties":{"action":{"const":"replace"}}},"then":{"required":["target_label"]}}},"tls_config":{"type":["object","null"],"properties":{"ca_file":{"$ref":"#/definitions/filepath"},"cert_file":{"$ref":"#/definitions/filepath"},"key_file":{"$ref":"#/definitions/filepath"},"server_name":{"type":["string","null"]},"insecure_skip_verify":{"type":["boolean","null"]}},"additionalProperties":false},"scheme":{"type":["string","null"],"enum":["http","https",null]},"azure_sd_configs":{"type":["array","null"],"items":{"type":"object"}},"consul_sd_configs":{"type":["array","null"],"items":{"type":"object"}},"dns_sd_configs":{"type":["array","null"],"items":{"type":"object"}},"ec2_sd_configs":{"type":["array","null"],"items":{"type":"object"}},"openstack_sd_configs":{"type":["array","null"],"items":{"type":"object"}},"file_sd_configs":{"type":["array","null"],"items":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string"},"minItems":1},"refresh_interval":{"$ref":"#/definitions/duration","default":"5m"}}}},"gce_sd_configs":{"type":["array","null"],"items":{"type":"object"}},"kubernetes_sd_configs":{"type":["array","null"],"items":{"type":"object"}},"marathon_sd_configs":{"type":["array","null"],"items":{"type":"object"}},"nerve_sd_configs":{"type":["array","null"],"items":{"type":"object"}},"serverset_sd_configs":{"type":["array","null"],"items":{"type":"object"}},"triton_sd_configs":{"type":["array","null"],"items":{"type":"object"}},"static_configs":{"type":["array","null"],"items":{"type":"object","properties":{"targets":{"type":["array","null"],"items":{"type":"string"}},"labels":{"$ref":"#/definitions/labels"}}}}}}