diff options
| author | MHSanaei <33454419+MHSanaei@users.noreply.github.com> | 2023-03-24 16:44:26 +0300 |
|---|---|---|
| committer | MHSanaei <33454419+MHSanaei@users.noreply.github.com> | 2023-03-24 16:44:26 +0300 |
| commit | 9c0718bc44037d6415bcf3bcb300de62c67ad782 (patch) | |
| tree | c5abba4c47baa60a3e5c1274b211e92bde7090ae /web/service/server.go | |
| parent | 826c7264b5cbea4e4149645bef220fd3c6a010e7 (diff) | |
Revert "Add version and log"
This reverts commit 826c7264b5cbea4e4149645bef220fd3c6a010e7.
Diffstat (limited to 'web/service/server.go')
| -rw-r--r-- | web/service/server.go | 47 |
1 files changed, 36 insertions, 11 deletions
diff --git a/web/service/server.go b/web/service/server.go index 6737bef2..5e6065b5 100644 --- a/web/service/server.go +++ b/web/service/server.go @@ -9,7 +9,9 @@ import ( "io/fs" "net/http" "os" + "os/exec" "runtime" + "strings" "time" "x-ui/logger" "x-ui/util/sys" @@ -200,24 +202,24 @@ func (s *ServerService) GetXrayVersions() ([]string, error) { func (s *ServerService) StopXrayService() (string error) { - err := s.xrayService.StopXray() - if err != nil { - logger.Error("stop xray failed:", err) - return err - } + err := s.xrayService.StopXray() + if err != nil { + logger.Error("stop xray failed:", err) + return err + } return nil } func (s *ServerService) RestartXrayService() (string error) { - s.xrayService.StopXray() - defer func() { - err := s.xrayService.RestartXray(true) - if err != nil { - logger.Error("start xray failed:", err) + s.xrayService.StopXray() + defer func() { + err := s.xrayService.RestartXray(true) + if err != nil { + logger.Error("start xray failed:", err) } - }() + }() return nil } @@ -324,3 +326,26 @@ func (s *ServerService) UpdateXray(version string) error { return nil } + +func (s *ServerService) GetLogs() ([]string, error) { + // Define the journalctl command and its arguments + var cmdArgs []string + if runtime.GOOS == "linux" { + cmdArgs = []string{"journalctl", "-u", "x-ui", "--no-pager", "-n", "100"} + } else { + return []string{"Unsupported operating system"}, nil + } + + // Run the command + cmd := exec.Command(cmdArgs[0], cmdArgs[1:]...) + var out bytes.Buffer + cmd.Stdout = &out + err := cmd.Run() + if err != nil { + return nil, err + } + + lines := strings.Split(out.String(), "\n") + + return lines, nil +} |
