mirror of
				https://github.com/grafana/grafana.git
				synced 2025-02-25 18:55:37 -06:00 
			
		
		
		
	@@ -25,7 +25,7 @@ plugins = data/plugins
 | 
			
		||||
 | 
			
		||||
#################################### Server ##############################
 | 
			
		||||
[server]
 | 
			
		||||
# Protocol (http or https)
 | 
			
		||||
# Protocol (http, https, socket)
 | 
			
		||||
protocol = http
 | 
			
		||||
 | 
			
		||||
# The ip address to bind to, empty will bind to all interfaces
 | 
			
		||||
@@ -57,6 +57,9 @@ enable_gzip = false
 | 
			
		||||
cert_file =
 | 
			
		||||
cert_key =
 | 
			
		||||
 | 
			
		||||
# Unix socket path
 | 
			
		||||
socket = /tmp/grafana.sock
 | 
			
		||||
 | 
			
		||||
#################################### Database ############################
 | 
			
		||||
[database]
 | 
			
		||||
# You can configure the database connection by specifying type, host, name, user and password
 | 
			
		||||
 
 | 
			
		||||
@@ -26,7 +26,7 @@
 | 
			
		||||
#
 | 
			
		||||
#################################### Server ####################################
 | 
			
		||||
[server]
 | 
			
		||||
# Protocol (http or https)
 | 
			
		||||
# Protocol (http, https, socket)
 | 
			
		||||
;protocol = http
 | 
			
		||||
 | 
			
		||||
# The ip address to bind to, empty will bind to all interfaces
 | 
			
		||||
@@ -59,6 +59,9 @@
 | 
			
		||||
;cert_file =
 | 
			
		||||
;cert_key =
 | 
			
		||||
 | 
			
		||||
# Unix socket path
 | 
			
		||||
;socket =
 | 
			
		||||
 | 
			
		||||
#################################### Database ####################################
 | 
			
		||||
[database]
 | 
			
		||||
# You can configure the database connection by specifying type, host, name, user and password
 | 
			
		||||
 
 | 
			
		||||
@@ -5,6 +5,7 @@ import (
 | 
			
		||||
	"crypto/tls"
 | 
			
		||||
	"errors"
 | 
			
		||||
	"fmt"
 | 
			
		||||
	"net"
 | 
			
		||||
	"net/http"
 | 
			
		||||
	"os"
 | 
			
		||||
	"path"
 | 
			
		||||
@@ -49,7 +50,7 @@ func (hs *HttpServer) Start(ctx context.Context) error {
 | 
			
		||||
	hs.streamManager.Run(ctx)
 | 
			
		||||
 | 
			
		||||
	listenAddr := fmt.Sprintf("%s:%s", setting.HttpAddr, setting.HttpPort)
 | 
			
		||||
	hs.log.Info("Initializing HTTP Server", "address", listenAddr, "protocol", setting.Protocol, "subUrl", setting.AppSubUrl)
 | 
			
		||||
	hs.log.Info("Initializing HTTP Server", "address", listenAddr, "protocol", setting.Protocol, "subUrl", setting.AppSubUrl, "socket", setting.SocketPath)
 | 
			
		||||
 | 
			
		||||
	hs.httpSrv = &http.Server{Addr: listenAddr, Handler: hs.macaron}
 | 
			
		||||
	switch setting.Protocol {
 | 
			
		||||
@@ -65,6 +66,18 @@ func (hs *HttpServer) Start(ctx context.Context) error {
 | 
			
		||||
			hs.log.Debug("server was shutdown gracefully")
 | 
			
		||||
			return nil
 | 
			
		||||
		}
 | 
			
		||||
	case setting.SOCKET:
 | 
			
		||||
		ln, err := net.Listen("unix", setting.SocketPath)
 | 
			
		||||
		if err != nil {
 | 
			
		||||
			hs.log.Debug("server was shutdown gracefully")
 | 
			
		||||
			return nil
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		err = hs.httpSrv.Serve(ln)
 | 
			
		||||
		if err != nil {
 | 
			
		||||
			hs.log.Debug("server was shutdown gracefully")
 | 
			
		||||
			return nil
 | 
			
		||||
		}
 | 
			
		||||
	default:
 | 
			
		||||
		hs.log.Error("Invalid protocol", "protocol", setting.Protocol)
 | 
			
		||||
		err = errors.New("Invalid Protocol")
 | 
			
		||||
 
 | 
			
		||||
@@ -27,6 +27,7 @@ type Scheme string
 | 
			
		||||
const (
 | 
			
		||||
	HTTP              Scheme = "http"
 | 
			
		||||
	HTTPS             Scheme = "https"
 | 
			
		||||
	SOCKET            Scheme = "socket"
 | 
			
		||||
	DEFAULT_HTTP_ADDR string = "0.0.0.0"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
@@ -65,6 +66,7 @@ var (
 | 
			
		||||
	HttpAddr, HttpPort string
 | 
			
		||||
	SshPort            int
 | 
			
		||||
	CertFile, KeyFile  string
 | 
			
		||||
	SocketPath         string
 | 
			
		||||
	RouterLogging      bool
 | 
			
		||||
	DataProxyLogging   bool
 | 
			
		||||
	StaticRootPath     string
 | 
			
		||||
@@ -473,6 +475,10 @@ func NewConfigContext(args *CommandLineArgs) error {
 | 
			
		||||
		CertFile = server.Key("cert_file").String()
 | 
			
		||||
		KeyFile = server.Key("cert_key").String()
 | 
			
		||||
	}
 | 
			
		||||
	if server.Key("protocol").MustString("http") == "socket" {
 | 
			
		||||
		Protocol = SOCKET
 | 
			
		||||
		SocketPath = server.Key("socket").String()
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	Domain = server.Key("domain").MustString("localhost")
 | 
			
		||||
	HttpAddr = server.Key("http_addr").MustString(DEFAULT_HTTP_ADDR)
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user