Files
cftunnel/cmd/logs.go
T
admin b4da59cb07 feat: cftunnel MVP — Cloudflare Tunnel 一键管理工具
- cfapi: 基于 cloudflare-go/v6 SDK 封装隧道 CRUD、DNS CNAME、Zone 查询
- config: YAML 配置读写 (~/.cftunnel/config.yml)
- daemon: cloudflared 自动下载 + 进程管理
- service: macOS launchd 系统服务注册
- CLI: init/add/remove/list/up/down/status/install/uninstall/logs
2026-02-22 21:05:59 +08:00

38 lines
781 B
Go

package cmd
import (
"fmt"
"os"
"os/exec"
"path/filepath"
"github.com/spf13/cobra"
)
var follow bool
func init() {
logsCmd.Flags().BoolVarP(&follow, "follow", "f", false, "实时跟踪日志")
rootCmd.AddCommand(logsCmd)
}
var logsCmd = &cobra.Command{
Use: "logs",
Short: "查看隧道日志",
RunE: func(cmd *cobra.Command, args []string) error {
home, _ := os.UserHomeDir()
logFile := filepath.Join(home, "Library/Logs/cftunnel.log")
if _, err := os.Stat(logFile); err != nil {
return fmt.Errorf("日志文件不存在: %s", logFile)
}
tailArgs := []string{"-100", logFile}
if follow {
tailArgs = []string{"-100", "-f", logFile}
}
c := exec.Command("tail", tailArgs...)
c.Stdout = os.Stdout
c.Stderr = os.Stderr
return c.Run()
},
}