f.StringVar(&cfg.PreferredBackend,"backend.preferred","","The hostname of the preferred backend when selecting the response to send back to the client. If no preferred backend is configured then the query-tee will send back to the client the first successful response received without waiting for other backends.")
f.DurationVar(&cfg.BackendReadTimeout,"backend.read-timeout",90*time.Second,"The timeout when reading the response from a backend.")
f.BoolVar(&cfg.CompareResponses,"proxy.compare-responses",false,"Compare responses between preferred and secondary endpoints for supported routes.")
f.StringVar(&cfg.DisableBackendReadProxy,"proxy.disable-backend-read","","Comma separated list of non-primary backend hostnames to disable their read proxy. Typically used for temporarily not passing any read requests to specified backends.")
f.Float64Var(&cfg.ValueComparisonTolerance,"proxy.value-comparison-tolerance",0.000001,"The tolerance to apply when comparing floating point values in the responses. 0 to disable tolerance and require exact match (not recommended).")
f.BoolVar(&cfg.UseRelativeError,"proxy.compare-use-relative-error",false,"Use relative error tolerance when comparing floating point values.")
f.DurationVar(&cfg.SkipRecentSamples,"proxy.compare-skip-recent-samples",60*time.Second,"The window from now to skip comparing samples. 0 to disable.")
level.Warn(p.logger).Log("msg","The proxy is running with only 1 backend. At least 2 backends are required to fulfil the purpose of the proxy and compare results.")