mirror of
https://github.com/gravitl/netmaker.git
synced 2025-10-30 11:46:28 +08:00
log messages
This commit is contained in:
@@ -203,13 +203,13 @@ func LeaveNetwork(network string) error {
|
||||
local.RemoveCIDRRoute(removeIface, queryAddr, cidr)
|
||||
}
|
||||
} else {
|
||||
logger.Log(1, "could not flush peer routes when leaving network, ", cfg.Node.Network)
|
||||
logger.Log(1, "Could not flush peer routes when leaving network, ", cfg.Node.Network)
|
||||
}
|
||||
}
|
||||
|
||||
err = WipeLocal(node.Network)
|
||||
if err != nil {
|
||||
logger.Log(1, "unable to wipe local config")
|
||||
logger.Log(1, "Network: ", node.Network, " unable to wipe local config")
|
||||
} else {
|
||||
logger.Log(1, "removed ", node.Network, " network locally")
|
||||
}
|
||||
@@ -232,7 +232,7 @@ func WipeLocal(network string) error {
|
||||
ifacename := nodecfg.Interface
|
||||
if ifacename != "" {
|
||||
if err = wireguard.RemoveConf(ifacename, true); err == nil {
|
||||
logger.Log(1, "removed WireGuard interface: ", ifacename)
|
||||
logger.Log(1, "Network: ", nodecfg.Network, " removed WireGuard interface: ", ifacename)
|
||||
} else if strings.Contains(err.Error(), "does not exist") {
|
||||
err = nil
|
||||
}
|
||||
@@ -398,8 +398,8 @@ func SetServerInfo(cfg *config.ClientConfig) error {
|
||||
|
||||
func informPortChange(node *models.Node) {
|
||||
if node.ListenPort == 0 {
|
||||
logger.Log(0, "UDP hole punching enabled for node", node.Name)
|
||||
logger.Log(0, "Network: ", node.Network, ". Interface: ", node.Interface, ". UDP hole punching enabled for node", node.Name)
|
||||
} else {
|
||||
logger.Log(0, "node", node.Name, "is using port", strconv.Itoa(int(node.ListenPort)))
|
||||
logger.Log(0, "Network: ", node.Network, ". Interface: ", node.Interface, "node", node.Name, "is using port", strconv.Itoa(int(node.ListenPort)))
|
||||
}
|
||||
}
|
||||
|
||||
@@ -110,19 +110,19 @@ func startGoRoutines(wg *sync.WaitGroup) context.CancelFunc {
|
||||
|
||||
// UpdateKeys -- updates private key and returns new publickey
|
||||
func UpdateKeys(nodeCfg *config.ClientConfig, client mqtt.Client) error {
|
||||
logger.Log(0, "received message to update wireguard keys for network ", nodeCfg.Network)
|
||||
logger.Log(0, "Interface: ", nodeCfg.Node.Interface, "received message to update wireguard keys for network ", nodeCfg.Network)
|
||||
key, err := wgtypes.GeneratePrivateKey()
|
||||
if err != nil {
|
||||
logger.Log(0, "error generating privatekey ", err.Error())
|
||||
logger.Log(0, "Network: ", nodeCfg.Node.Network, "error generating privatekey ", err.Error())
|
||||
return err
|
||||
}
|
||||
file := ncutils.GetNetclientPathSpecific() + nodeCfg.Node.Interface + ".conf"
|
||||
if err := wireguard.UpdatePrivateKey(file, key.String()); err != nil {
|
||||
logger.Log(0, "error updating wireguard key ", err.Error())
|
||||
logger.Log(0, "Network: ", nodeCfg.Node.Network, ". error updating wireguard key ", err.Error())
|
||||
return err
|
||||
}
|
||||
if storeErr := wireguard.StorePrivKey(key.String(), nodeCfg.Network); storeErr != nil {
|
||||
logger.Log(0, "failed to save private key", storeErr.Error())
|
||||
logger.Log(0, "Network: ", nodeCfg.Network, "failed to save private key", storeErr.Error())
|
||||
return storeErr
|
||||
}
|
||||
|
||||
@@ -138,15 +138,15 @@ func UpdateKeys(nodeCfg *config.ClientConfig, client mqtt.Client) error {
|
||||
func setSubscriptions(client mqtt.Client, nodeCfg *config.ClientConfig) {
|
||||
if token := client.Subscribe(fmt.Sprintf("update/%s/%s", nodeCfg.Node.Network, nodeCfg.Node.ID), 0, mqtt.MessageHandler(NodeUpdate)); token.WaitTimeout(mq.MQ_TIMEOUT*time.Second) && token.Error() != nil {
|
||||
if token.Error() == nil {
|
||||
logger.Log(0, "connection timeout")
|
||||
logger.Log(0, "Network: ", nodeCfg.Node.Network, ". connection timeout")
|
||||
} else {
|
||||
logger.Log(0, token.Error().Error())
|
||||
logger.Log(0, "Network: ", nodeCfg.Node.Network, ". ", token.Error().Error())
|
||||
}
|
||||
return
|
||||
}
|
||||
logger.Log(3, fmt.Sprintf("subscribed to node updates for node %s update/%s/%s", nodeCfg.Node.Name, nodeCfg.Node.Network, nodeCfg.Node.ID))
|
||||
if token := client.Subscribe(fmt.Sprintf("peers/%s/%s", nodeCfg.Node.Network, nodeCfg.Node.ID), 0, mqtt.MessageHandler(UpdatePeers)); token.Wait() && token.Error() != nil {
|
||||
logger.Log(0, token.Error().Error())
|
||||
logger.Log(0, "Network: ", nodeCfg.Node.Network, ". ", token.Error().Error())
|
||||
return
|
||||
}
|
||||
logger.Log(3, fmt.Sprintf("subscribed to peer updates for node %s peers/%s/%s", nodeCfg.Node.Name, nodeCfg.Node.Network, nodeCfg.Node.ID))
|
||||
@@ -159,22 +159,22 @@ func unsubscribeNode(client mqtt.Client, nodeCfg *config.ClientConfig) {
|
||||
var ok = true
|
||||
if token := client.Unsubscribe(fmt.Sprintf("update/%s/%s", nodeCfg.Node.Network, nodeCfg.Node.ID)); token.WaitTimeout(mq.MQ_TIMEOUT*time.Second) && token.Error() != nil {
|
||||
if token.Error() == nil {
|
||||
logger.Log(1, "unable to unsubscribe from updates for node ", nodeCfg.Node.Name, "\n", "connection timeout")
|
||||
logger.Log(1, "Network: ", nodeCfg.Node.Network, ". ", "unable to unsubscribe from updates for node ", nodeCfg.Node.Name, "\n", "connection timeout")
|
||||
} else {
|
||||
logger.Log(1, "unable to unsubscribe from updates for node ", nodeCfg.Node.Name, "\n", token.Error().Error())
|
||||
logger.Log(1, "Network: ", nodeCfg.Node.Network, ". ", "unable to unsubscribe from updates for node ", nodeCfg.Node.Name, "\n", token.Error().Error())
|
||||
}
|
||||
ok = false
|
||||
}
|
||||
if token := client.Unsubscribe(fmt.Sprintf("peers/%s/%s", nodeCfg.Node.Network, nodeCfg.Node.ID)); token.WaitTimeout(mq.MQ_TIMEOUT*time.Second) && token.Error() != nil {
|
||||
if token.Error() == nil {
|
||||
logger.Log(1, "unable to unsubscribe from peer updates for node ", nodeCfg.Node.Name, "\n", "connection timeout")
|
||||
logger.Log(1, "Network: ", nodeCfg.Node.Network, ". ", "unable to unsubscribe from peer updates for node ", nodeCfg.Node.Name, "\n", "connection timeout")
|
||||
} else {
|
||||
logger.Log(1, "unable to unsubscribe from peer updates for node ", nodeCfg.Node.Name, "\n", token.Error().Error())
|
||||
logger.Log(1, "Network: ", nodeCfg.Node.Network, ". ", "unable to unsubscribe from peer updates for node ", nodeCfg.Node.Name, "\n", token.Error().Error())
|
||||
}
|
||||
ok = false
|
||||
}
|
||||
if ok {
|
||||
logger.Log(1, "successfully unsubscribed node ", nodeCfg.Node.ID, " : ", nodeCfg.Node.Name)
|
||||
logger.Log(1, "Network: ", nodeCfg.Node.Network, ". ", "successfully unsubscribed node ", nodeCfg.Node.ID, " : ", nodeCfg.Node.Name)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -182,7 +182,7 @@ func unsubscribeNode(client mqtt.Client, nodeCfg *config.ClientConfig) {
|
||||
// the client should subscribe to ALL nodes that exist on server locally
|
||||
func messageQueue(ctx context.Context, wg *sync.WaitGroup, cfg *config.ClientConfig) {
|
||||
defer wg.Done()
|
||||
logger.Log(0, "netclient message queue started for server: ", cfg.Server.Server)
|
||||
logger.Log(0, "Network: ", cfg.Node.Network, ". ", "netclient message queue started for server: ", cfg.Server.Server)
|
||||
client, err := setupMQTT(cfg, false)
|
||||
if err != nil {
|
||||
logger.Log(0, "unable to connect to broker", cfg.Server.Server, err.Error())
|
||||
@@ -259,7 +259,7 @@ func setupMQTT(cfg *config.ClientConfig, publish bool) (mqtt.Client, error) {
|
||||
opts.SetOrderMatters(true)
|
||||
opts.SetResumeSubs(true)
|
||||
opts.SetConnectionLostHandler(func(c mqtt.Client, e error) {
|
||||
logger.Log(0, "detected broker connection lost for", cfg.Server.Server)
|
||||
logger.Log(0, "Network: ", cfg.Node.Network, ". ", "detected broker connection lost for", cfg.Server.Server)
|
||||
})
|
||||
client := mqtt.NewClient(opts)
|
||||
var connecterr error
|
||||
|
||||
@@ -76,7 +76,7 @@ func JoinNetwork(cfg *config.ClientConfig, privateKey string) error {
|
||||
if err == nil {
|
||||
cfg.Node.LocalAddress = intIP
|
||||
} else {
|
||||
logger.Log(1, "error retrieving private address: ", err.Error())
|
||||
logger.Log(1, "Network: ", cfg.Network, ". ", "error retrieving private address: ", err.Error())
|
||||
}
|
||||
}
|
||||
|
||||
@@ -88,7 +88,7 @@ func JoinNetwork(cfg *config.ClientConfig, privateKey string) error {
|
||||
cfg.Node.Endpoint, err = ncutils.GetPublicIP()
|
||||
}
|
||||
if err != nil || cfg.Node.Endpoint == "" {
|
||||
logger.Log(0, "Error setting cfg.Node.Endpoint.")
|
||||
logger.Log(0, "Network: ", cfg.Network, ". ", "Error setting cfg.Node.Endpoint.")
|
||||
return err
|
||||
}
|
||||
}
|
||||
@@ -163,13 +163,13 @@ func JoinNetwork(cfg *config.ClientConfig, privateKey string) error {
|
||||
return err
|
||||
}
|
||||
if node.IsPending == "yes" {
|
||||
logger.Log(0, "Node is marked as PENDING.")
|
||||
logger.Log(0, "Awaiting approval from Admin before configuring WireGuard.")
|
||||
logger.Log(0, "Network: ", cfg.Network, ". ", "Node is marked as PENDING.")
|
||||
logger.Log(0, "Network: ", cfg.Network, ". ", "Awaiting approval from Admin before configuring WireGuard.")
|
||||
if cfg.Daemon != "off" {
|
||||
return daemon.InstallDaemon()
|
||||
}
|
||||
}
|
||||
logger.Log(1, "node created on remote server...updating configs")
|
||||
logger.Log(1, "Network: ", cfg.Node.Network, ". ", "node created on remote server...updating configs")
|
||||
err = ncutils.ModPort(&node)
|
||||
if err != nil {
|
||||
return err
|
||||
@@ -186,7 +186,7 @@ func JoinNetwork(cfg *config.ClientConfig, privateKey string) error {
|
||||
}
|
||||
// attempt to make backup
|
||||
if err = config.SaveBackup(node.Network); err != nil {
|
||||
logger.Log(0, "failed to make backup, node will not auto restore if config is corrupted")
|
||||
logger.Log(0, "Network: ", node.Network, ". ", "failed to make backup, node will not auto restore if config is corrupted")
|
||||
}
|
||||
logger.Log(0, "starting wireguard")
|
||||
err = wireguard.InitWireguard(&node, privateKey, nodeGET.Peers[:], false)
|
||||
@@ -202,7 +202,7 @@ func JoinNetwork(cfg *config.ClientConfig, privateKey string) error {
|
||||
}
|
||||
// update server with latest data
|
||||
if err := PublishNodeUpdate(cfg); err != nil {
|
||||
logger.Log(0, "failed to publish update for join", err.Error())
|
||||
logger.Log(0, "Network: ", cfg.Network, ". ", "failed to publish update for join", err.Error())
|
||||
}
|
||||
|
||||
if cfg.Daemon == "install" || ncutils.IsFreeBSD() {
|
||||
@@ -231,8 +231,8 @@ func formatName(node models.Node) string {
|
||||
node.Name = ncutils.ShortenString(node.Name, models.MAX_NAME_LENGTH)
|
||||
}
|
||||
if !node.NameInNodeCharSet() || len(node.Name) > models.MAX_NAME_LENGTH {
|
||||
logger.Log(1, "could not properly format name: "+node.Name)
|
||||
logger.Log(1, "setting name to blank")
|
||||
logger.Log(1, "Network: ", node.Network, ". ", "could not properly format name: "+node.Name)
|
||||
logger.Log(1, "Network: ", node.Network, ". ", "setting name to blank")
|
||||
node.Name = ""
|
||||
}
|
||||
return node.Name
|
||||
|
||||
@@ -35,9 +35,9 @@ func UpdateLocalListenPort(nodeCfg *config.ClientConfig) error {
|
||||
ifacename := getRealIface(nodeCfg.Node.Interface, nodeCfg.Node.Address)
|
||||
localPort, err := GetLocalListenPort(ifacename)
|
||||
if err != nil {
|
||||
logger.Log(1, "error encountered checking local listen port: ", ifacename, err.Error())
|
||||
logger.Log(1, "Network: ", nodeCfg.Node.Network, ". ", "error encountered checking local listen port: ", ifacename, err.Error())
|
||||
} else if nodeCfg.Node.LocalListenPort != localPort && localPort != 0 {
|
||||
logger.Log(1, "local port has changed from ", strconv.Itoa(int(nodeCfg.Node.LocalListenPort)), " to ", strconv.Itoa(int(localPort)))
|
||||
logger.Log(1, "Network: ", nodeCfg.Node.Network, ". ", "Interface: ", ifacename, ". local port has changed from ", strconv.Itoa(int(nodeCfg.Node.LocalListenPort)), " to ", strconv.Itoa(int(localPort)))
|
||||
nodeCfg.Node.LocalListenPort = localPort
|
||||
err = config.ModNodeConfig(&nodeCfg.Node)
|
||||
if err != nil {
|
||||
|
||||
@@ -34,16 +34,16 @@ func UpdateLocalListenPort(nodeCfg *config.ClientConfig) error {
|
||||
var err error
|
||||
localPort, err := GetLocalListenPort(nodeCfg.Node.Interface)
|
||||
if err != nil {
|
||||
logger.Log(1, "error encountered checking local listen port for interface : ", nodeCfg.Node.Interface, err.Error())
|
||||
logger.Log(1, "Network: ", nodeCfg.Node.Network, ". ", "error encountered checking local listen port for interface : ", nodeCfg.Node.Interface, err.Error())
|
||||
} else if nodeCfg.Node.LocalListenPort != localPort && localPort != 0 {
|
||||
logger.Log(1, "local port has changed from ", strconv.Itoa(int(nodeCfg.Node.LocalListenPort)), " to ", strconv.Itoa(int(localPort)))
|
||||
logger.Log(1, "Network: ", nodeCfg.Node.Network, ". ", "local port has changed from ", strconv.Itoa(int(nodeCfg.Node.LocalListenPort)), " to ", strconv.Itoa(int(localPort)))
|
||||
nodeCfg.Node.LocalListenPort = localPort
|
||||
err = config.ModNodeConfig(&nodeCfg.Node)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err := PublishNodeUpdate(nodeCfg); err != nil {
|
||||
logger.Log(0, "could not publish local port change")
|
||||
logger.Log(0, "Network: ", nodeCfg.Node.Network, ". ", "could not publish local port change")
|
||||
}
|
||||
}
|
||||
return err
|
||||
|
||||
Reference in New Issue
Block a user