From 6e052a5a0b7023ecc6a11face42c9dcbdf43f062 Mon Sep 17 00:00:00 2001 From: naison <895703375@qq.com> Date: Wed, 30 Oct 2024 09:10:20 +0800 Subject: [PATCH] feat: logs lines support '-' sign means starting log file lines (#365) --- cmd/kubevpn/cmds/logs.go | 2 +- pkg/daemon/action/logs.go | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/cmd/kubevpn/cmds/logs.go b/cmd/kubevpn/cmds/logs.go index 677dc41b..4ba32343 100644 --- a/cmd/kubevpn/cmds/logs.go +++ b/cmd/kubevpn/cmds/logs.go @@ -58,6 +58,6 @@ func CmdLogs(f cmdutil.Factory) *cobra.Command { }, } cmd.Flags().BoolVarP(&req.Follow, "follow", "f", false, "Specify if the logs should be streamed.") - cmd.Flags().Int32VarP(&req.Lines, "number", "N", 10, "The location is number lines.") + cmd.Flags().Int32VarP(&req.Lines, "number", "N", 10, "Lines of recent log file to display.") return cmd } diff --git a/pkg/daemon/action/logs.go b/pkg/daemon/action/logs.go index 34668661..5784ea83 100644 --- a/pkg/daemon/action/logs.go +++ b/pkg/daemon/action/logs.go @@ -20,7 +20,11 @@ func (svr *Server) Logs(req *rpc.LogRequest, resp rpc.Daemon_LogsServer) error { } // only show latest N lines - lines -= req.Lines + if req.Lines < 0 { + lines = -req.Lines + } else { + lines -= req.Lines + } config := tail.Config{Follow: req.Follow, ReOpen: false, MustExist: true, Logger: log.New(io.Discard, "", log.LstdFlags)} if !req.Follow {