diff --git a/web/controller/server.go b/web/controller/server.go index 673a96d8..7b7239d5 100644 --- a/web/controller/server.go +++ b/web/controller/server.go @@ -1,10 +1,11 @@ package controller import ( - "github.com/gin-gonic/gin" "time" "x-ui/web/global" "x-ui/web/service" + + "github.com/gin-gonic/gin" ) type ServerController struct { @@ -37,6 +38,7 @@ func (a *ServerController) initRouter(g *gin.RouterGroup) { g.POST("/stopXrayService", a.stopXrayService) g.POST("/restartXrayService", a.restartXrayService) g.POST("/installXray/:version", a.installXray) + g.POST("/logs", a.getLogs) } func (a *ServerController) refreshStatus() { @@ -87,13 +89,13 @@ func (a *ServerController) installXray(c *gin.Context) { } func (a *ServerController) stopXrayService(c *gin.Context) { - a.lastGetStatusTime = time.Now() + a.lastGetStatusTime = time.Now() err := a.serverService.StopXrayService() if err != nil { jsonMsg(c, "", err) return } - jsonMsg(c, "Xray stoped",err) + jsonMsg(c, "Xray stoped", err) } func (a *ServerController) restartXrayService(c *gin.Context) { @@ -102,6 +104,15 @@ func (a *ServerController) restartXrayService(c *gin.Context) { jsonMsg(c, "", err) return } - jsonMsg(c, "Xray restarted",err) + jsonMsg(c, "Xray restarted", err) -} \ No newline at end of file +} + +func (a *ServerController) getLogs(c *gin.Context) { + logs, err := a.serverService.GetLogs() + if err != nil { + jsonMsg(c, I18n(c, "getLogs"), err) + return + } + jsonObj(c, logs, nil) +} diff --git a/web/html/xui/index.html b/web/html/xui/index.html index b8a1e4b5..713d5b7e 100644 --- a/web/html/xui/index.html +++ b/web/html/xui/index.html @@ -84,16 +84,18 @@ - [[ status.xray.version ]] - {{ i18n "pages.index.stopXray" }} - {{ i18n "pages.index.restartXray" }} - {{ i18n "pages.index.xraySwitch" }} + [[ status.xray.version ]] + {{ i18n "pages.index.stopXray" }} + {{ i18n "pages.index.restartXray" }} + {{ i18n "pages.index.xraySwitch" }} + x-ui: {{ .cur_ver }} + Logs {{ i18n "pages.index.operationHours" }}: - [[ formatSecond(status.uptime) ]] + [[ formatSecond(status.uptime) ]]