-
Notifications
You must be signed in to change notification settings - Fork 11.8k
/
setting_data_proxy.go
36 lines (29 loc) · 1.38 KB
/
setting_data_proxy.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
package setting
import (
"fmt"
"gopkg.in/ini.v1"
)
const defaultDataProxyRowLimit = int64(1000000)
func readDataProxySettings(iniFile *ini.File, cfg *Cfg) error {
dataproxy := iniFile.Section("dataproxy")
cfg.SendUserHeader = dataproxy.Key("send_user_header").MustBool(false)
cfg.DataProxyLogging = dataproxy.Key("logging").MustBool(false)
cfg.DataProxyTimeout = dataproxy.Key("timeout").MustInt(10)
cfg.DataProxyDialTimeout = dataproxy.Key("dialTimeout").MustInt(30)
cfg.DataProxyKeepAlive = dataproxy.Key("keep_alive_seconds").MustInt(30)
cfg.DataProxyTLSHandshakeTimeout = dataproxy.Key("tls_handshake_timeout_seconds").MustInt(10)
cfg.DataProxyExpectContinueTimeout = dataproxy.Key("expect_continue_timeout_seconds").MustInt(1)
cfg.DataProxyMaxConnsPerHost = dataproxy.Key("max_conns_per_host").MustInt(0)
cfg.DataProxyMaxIdleConns = dataproxy.Key("max_idle_connections").MustInt()
cfg.DataProxyIdleConnTimeout = dataproxy.Key("idle_conn_timeout_seconds").MustInt(90)
cfg.ResponseLimit = dataproxy.Key("response_limit").MustInt64(0)
cfg.DataProxyRowLimit = dataproxy.Key("row_limit").MustInt64(defaultDataProxyRowLimit)
cfg.DataProxyUserAgent = dataproxy.Key("user_agent").String()
if cfg.DataProxyUserAgent == "" {
cfg.DataProxyUserAgent = fmt.Sprintf("Grafana/%s", BuildVersion)
}
if cfg.DataProxyRowLimit <= 0 {
cfg.DataProxyRowLimit = defaultDataProxyRowLimit
}
return nil
}