Each stream uses a different color, fixes #136

This commit is contained in:
Quentin McGaw
2020-04-19 20:40:31 +00:00
parent 4cb32ef9dc
commit f1569dac05
3 changed files with 29 additions and 5 deletions

View File

@@ -146,7 +146,7 @@ func main() {
stream, waitFn, err := dnsConf.Start(ctx, allSettings.DNS.VerbosityDetailsLevel) stream, waitFn, err := dnsConf.Start(ctx, allSettings.DNS.VerbosityDetailsLevel)
e.FatalOnError(err) e.FatalOnError(err)
waiter.Add(waitFn) waiter.Add(waitFn)
go streamMerger.Merge(stream, command.MergeName("unbound")) go streamMerger.Merge(stream, command.MergeName("unbound"), command.MergeColor(constants.ColorUnbound()))
dnsConf.UseDNSInternally(net.IP{127, 0, 0, 1}) // use Unbound dnsConf.UseDNSInternally(net.IP{127, 0, 0, 1}) // use Unbound
err = dnsConf.UseDNSSystemWide(net.IP{127, 0, 0, 1}) // use Unbound err = dnsConf.UseDNSSystemWide(net.IP{127, 0, 0, 1}) // use Unbound
e.FatalOnError(err) e.FatalOnError(err)
@@ -235,7 +235,7 @@ func main() {
stream, waitFn, err := tinyProxyConf.Start(ctx) stream, waitFn, err := tinyProxyConf.Start(ctx)
e.FatalOnError(err) e.FatalOnError(err)
waiter.Add(waitFn) waiter.Add(waitFn)
go streamMerger.Merge(stream, command.MergeName("tinyproxy")) go streamMerger.Merge(stream, command.MergeName("tinyproxy"), command.MergeColor(constants.ColorTinyproxy()))
} }
if allSettings.ShadowSocks.Enabled { if allSettings.ShadowSocks.Enabled {
@@ -251,14 +251,14 @@ func main() {
stdout, stderr, waitFn, err := shadowsocksConf.Start(ctx, "0.0.0.0", allSettings.ShadowSocks.Port, allSettings.ShadowSocks.Password, allSettings.ShadowSocks.Log) stdout, stderr, waitFn, err := shadowsocksConf.Start(ctx, "0.0.0.0", allSettings.ShadowSocks.Port, allSettings.ShadowSocks.Password, allSettings.ShadowSocks.Log)
e.FatalOnError(err) e.FatalOnError(err)
waiter.Add(waitFn) waiter.Add(waitFn)
go streamMerger.Merge(stdout, command.MergeName("shadowsocks")) go streamMerger.Merge(stdout, command.MergeName("shadowsocks"), command.MergeColor(constants.ColorShadowsocks()))
go streamMerger.Merge(stderr, command.MergeName("shadowsocks error")) go streamMerger.Merge(stderr, command.MergeName("shadowsocks error"), command.MergeColor(constants.ColorShadowsocksError()))
} }
stream, waitFn, err := ovpnConf.Start(ctx) stream, waitFn, err := ovpnConf.Start(ctx)
e.FatalOnError(err) e.FatalOnError(err)
waiter.Add(waitFn) waiter.Add(waitFn)
go streamMerger.Merge(stream, command.MergeName("openvpn")) go streamMerger.Merge(stream, command.MergeName("openvpn"), command.MergeColor(constants.ColorOpenvpn()))
signals.WaitForExit(func(signal string) int { signals.WaitForExit(func(signal string) int {
logger.Warn("Caught OS signal %s, shutting down", signal) logger.Warn("Caught OS signal %s, shutting down", signal)
if allSettings.VPNSP == "pia" && allSettings.PIA.PortForwarding.Enabled { if allSettings.VPNSP == "pia" && allSettings.PIA.PortForwarding.Enabled {

1
go.mod
View File

@@ -3,6 +3,7 @@ module github.com/qdm12/private-internet-access-docker
go 1.14 go 1.14
require ( require (
github.com/fatih/color v1.9.0
github.com/golang/mock v1.4.3 github.com/golang/mock v1.4.3
github.com/kyokomi/emoji v2.2.2+incompatible github.com/kyokomi/emoji v2.2.2+incompatible
github.com/qdm12/golibs v0.0.0-20200419200147-04dea671b563 github.com/qdm12/golibs v0.0.0-20200419200147-04dea671b563

View File

@@ -0,0 +1,23 @@
package constants
import "github.com/fatih/color"
func ColorUnbound() color.Color {
return *color.New(color.FgCyan)
}
func ColorTinyproxy() color.Color {
return *color.New(color.FgHiMagenta)
}
func ColorShadowsocks() color.Color {
return *color.New(color.FgHiYellow)
}
func ColorShadowsocksError() color.Color {
return *color.New(color.FgHiRed)
}
func ColorOpenvpn() color.Color {
return *color.New(color.FgHiMagenta)
}