One of the key features of Prometheus is, owing to incredibly sane default configurations, that it can scale from a quick test running on a local computer to a production-grade instance, handling millions of samples per second without having to touch almost any of its many knobs and dials. Having said that, it is very useful to know what configuration options are available to be able to get the most value out of Prometheus.
There are two main types of configuration on a Prometheus server—command-line flags and operating logic that provided through configuration files. Command-line flags control the parameters that cannot be changed at runtime, such as the storage path or which TCP port to bind to, and need a full server restart to apply any change done at this level. The configuration files control runtime configuration, such...