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) ]]
{{ i18n "pages.index.operationHoursDesc" }}
@@ -177,7 +179,7 @@
versionModal.visible = false"
:class="siderDrawer.isDarkTheme ? darkClass : ''"
- ok-text='{{ i18n "confirm" }}' cancel-text='{{ i18n "cancel"}}'>
+ footer="">
{{ i18n "pages.index.xraySwitchClick"}}
{{ i18n "pages.index.xraySwitchClickDesk"}}
@@ -187,6 +189,17 @@
+ logModal.visible = false" @cancel="() => logModal.visible = false"
+ :class="siderDrawer.isDarkTheme ? darkClass : ''"
+ width="800px"
+ footer="">
+
+
+ [[ index ]] | [[ log ]] |
+
+
+
{{template "js" .}}