change log to logrus

This commit is contained in:
yuzuki999
2023-06-30 11:07:27 +08:00
parent 07b7ec9b3e
commit 65629c0dfb
9 changed files with 105 additions and 59 deletions

View File

@@ -9,7 +9,7 @@ import (
"github.com/Yuzuki616/V2bX/conf"
vCore "github.com/Yuzuki616/V2bX/core"
"github.com/Yuzuki616/V2bX/limiter"
"log"
log "github.com/sirupsen/logrus"
)
type Controller struct {
@@ -81,7 +81,7 @@ func (c *Controller) Start() error {
if err != nil {
return fmt.Errorf("add users error: %s", err)
}
log.Printf("[%s] Added %d new users", c.Tag, added)
log.WithField("tag", c.Tag).Infof("Added %d new users", added)
c.initTask()
return nil
}

View File

@@ -4,7 +4,7 @@ import (
"github.com/Yuzuki616/V2bX/common/task"
vCore "github.com/Yuzuki616/V2bX/core"
"github.com/Yuzuki616/V2bX/limiter"
"log"
log "github.com/sirupsen/logrus"
"time"
)
@@ -19,10 +19,10 @@ func (c *Controller) initTask() {
Interval: c.nodeInfo.PushInterval,
Execute: c.reportUserTrafficTask,
}
log.Printf("[%s] Start monitor node status", c.Tag)
log.WithField("tag", c.Tag).Info("Start monitor node status")
// delay to start nodeInfoMonitor
_ = c.nodeInfoMonitorPeriodic.Start(false)
log.Printf("[%s] Start report node status", c.Tag)
log.WithField("tag", c.Tag).Info("Start report node status")
_ = c.userReportPeriodic.Start(false)
if c.nodeInfo.Tls {
switch c.CertConfig.CertMode {
@@ -32,7 +32,7 @@ func (c *Controller) initTask() {
Interval: time.Hour * 24,
Execute: c.reportUserTrafficTask,
}
log.Printf("[%s] Start renew cert", c.Tag)
log.WithField("tag", c.Tag).Info("Start renew cert")
// delay to start renewCert
_ = c.renewCertPeriodic.Start(true)
}
@@ -43,22 +43,31 @@ func (c *Controller) nodeInfoMonitor() (err error) {
// get node info
newNodeInfo, err := c.apiClient.GetNodeInfo()
if err != nil {
log.Printf("[%s] Get node info error: %s", c.Tag, err)
log.WithFields(log.Fields{
"tag": c.Tag,
"err": err,
}).Error("Get node info failed")
return nil
}
// get user info
newUserInfo, err := c.apiClient.GetUserList()
if err != nil {
log.Printf("[%s] Get user list error: %s", c.Tag, err)
log.WithFields(log.Fields{
"tag": c.Tag,
"err": err,
}).Error("Get user list failed")
return nil
}
if newNodeInfo != nil {
// nodeInfo changed
// Remove old tag
log.Printf("[%s] Node changed, reload...", c.Tag)
log.WithField("tag", c.Tag).Info("Node changed, reload")
err = c.server.DelNode(c.Tag)
if err != nil {
log.Printf("[%s] Del node error: %s", c.Tag, err)
log.WithFields(log.Fields{
"tag": c.Tag,
"err": err,
}).Error("Delete node failed")
return nil
}
// Remove Old limiter
@@ -70,13 +79,20 @@ func (c *Controller) nodeInfoMonitor() (err error) {
if newNodeInfo.Tls || newNodeInfo.Type == "hysteria" {
err = c.requestCert()
if err != nil {
log.Printf("[%s] Request cert error: %s", c.Tag, err)
log.WithFields(log.Fields{
"tag": c.Tag,
"err": err,
}).Error("Request cert failed")
return nil
}
}
// add new node
err = c.server.AddNode(c.Tag, newNodeInfo, c.ControllerConfig)
if err != nil {
log.Printf("[%s] Add node error: %s", c.Tag, err)
log.WithFields(log.Fields{
"tag": c.Tag,
"err": err,
}).Error("Add node failed")
return nil
}
_, err = c.server.AddUsers(&vCore.AddUsersParams{
@@ -86,12 +102,19 @@ func (c *Controller) nodeInfoMonitor() (err error) {
NodeInfo: newNodeInfo,
})
if err != nil {
log.Printf("[%s] Add users error: %s", c.Tag, err)
log.WithFields(log.Fields{
"tag": c.Tag,
"err": err,
}).Error("Add users failed")
return nil
}
err = l.UpdateRule(newNodeInfo.Rules)
if err != nil {
log.Printf("[%s] Update Rule error: %s", c.Tag, err)
log.WithFields(log.Fields{
"tag": c.Tag,
"err": err,
}).Error("Update Rule failed")
return nil
}
// Check interval
if c.nodeInfoMonitorPeriodic.Interval != newNodeInfo.PullInterval &&
@@ -108,7 +131,7 @@ func (c *Controller) nodeInfoMonitor() (err error) {
}
c.nodeInfo = newNodeInfo
c.userList = newUserInfo
log.Printf("[%s] Added %d new users", c.Tag, len(newUserInfo))
log.WithField("tag", c.Tag).Infof("Added %d new users", len(newUserInfo))
// exit
return nil
}
@@ -119,7 +142,11 @@ func (c *Controller) nodeInfoMonitor() (err error) {
// have deleted users
err = c.server.DelUsers(deleted, c.Tag)
if err != nil {
log.Printf("[%s] Del users error: %s", c.Tag, err)
log.WithFields(log.Fields{
"tag": c.Tag,
"err": err,
}).Error("Delete users failed")
return nil
}
}
if len(added) > 0 {
@@ -131,18 +158,26 @@ func (c *Controller) nodeInfoMonitor() (err error) {
NodeInfo: c.nodeInfo,
})
if err != nil {
log.Printf("[%s] Add users error: %s", c.Tag, err)
log.WithFields(log.Fields{
"tag": c.Tag,
"err": err,
}).Error("Add users failed")
return nil
}
}
if len(added) > 0 || len(deleted) > 0 {
// update Limiter
err = limiter.UpdateLimiter(c.Tag, added, deleted)
if err != nil {
log.Printf("[%s] Update limiter error: %s", c.Tag, err)
log.WithFields(log.Fields{
"tag": c.Tag,
"err": err,
}).Error("limiter users failed")
return nil
}
}
c.userList = newUserInfo
log.Printf("[%s] %d user deleted, %d user added", c.Tag,
len(deleted), len(added))
log.WithField("tag", c.Tag).
Errorf("%d user deleted, %d user added", len(deleted), len(added))
return nil
}

View File

@@ -2,7 +2,7 @@ package node
import (
"github.com/Yuzuki616/V2bX/api/panel"
"log"
log "github.com/sirupsen/logrus"
"runtime"
"strconv"
)
@@ -25,9 +25,12 @@ func (c *Controller) reportUserTrafficTask() (err error) {
if len(userTraffic) > 0 {
err = c.apiClient.ReportUserTraffic(userTraffic)
if err != nil {
log.Printf("Report user traffic faild: %s", err)
log.WithFields(log.Fields{
"tag": c.Tag,
"err": err,
}).Error("Report user traffic faild")
} else {
log.Printf("[%s] Report %d online users", c.Tag, len(userTraffic))
log.WithField("tag", err).Errorf("Report %d online users", len(userTraffic))
}
}
userTraffic = nil