mirror of
https://github.com/tailscale/tailscale.git
synced 2025-01-07 16:17:41 +00:00
logpolicy: fix, test LogHost to work as documented
Change-Id: I225c9602a7587c69c237e336d0714fc8315ea6bd Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
This commit is contained in:
parent
a5fab23e8f
commit
18159431ab
@ -74,7 +74,9 @@ func getLogTarget() string {
|
|||||||
// logtail server, or the default.
|
// logtail server, or the default.
|
||||||
func LogHost() string {
|
func LogHost() string {
|
||||||
if v := getLogTarget(); v != "" {
|
if v := getLogTarget(); v != "" {
|
||||||
return v
|
if u, err := url.Parse(v); err == nil {
|
||||||
|
return u.Hostname()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return logtail.DefaultHost
|
return logtail.DefaultHost
|
||||||
}
|
}
|
||||||
|
37
logpolicy/logpolicy_test.go
Normal file
37
logpolicy/logpolicy_test.go
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
// Copyright (c) 2022 Tailscale Inc & AUTHORS All rights reserved.
|
||||||
|
// Use of this source code is governed by a BSD-style
|
||||||
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
package logpolicy
|
||||||
|
|
||||||
|
import (
|
||||||
|
"os"
|
||||||
|
"reflect"
|
||||||
|
"testing"
|
||||||
|
)
|
||||||
|
|
||||||
|
func TestLogHost(t *testing.T) {
|
||||||
|
v := reflect.ValueOf(&getLogTargetOnce).Elem()
|
||||||
|
reset := func() {
|
||||||
|
v.Set(reflect.Zero(v.Type()))
|
||||||
|
}
|
||||||
|
defer reset()
|
||||||
|
|
||||||
|
tests := []struct {
|
||||||
|
env string
|
||||||
|
want string
|
||||||
|
}{
|
||||||
|
{"", "log.tailscale.io"},
|
||||||
|
{"http://foo.com", "foo.com"},
|
||||||
|
{"https://foo.com", "foo.com"},
|
||||||
|
{"https://foo.com/", "foo.com"},
|
||||||
|
{"https://foo.com:123/", "foo.com"},
|
||||||
|
}
|
||||||
|
for _, tt := range tests {
|
||||||
|
reset()
|
||||||
|
os.Setenv("TS_LOG_TARGET", tt.env)
|
||||||
|
if got := LogHost(); got != tt.want {
|
||||||
|
t.Errorf("for env %q, got %q, want %q", tt.env, got, tt.want)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user