mirror of
				https://github.com/oneclickvirt/backtrace.git
				synced 2025-11-04 15:52:37 +08:00 
			
		
		
		
	feat: 添加测试模式,方便开发调试
This commit is contained in:
		
							parent
							
								
									1a985cfbbe
								
							
						
					
					
						commit
						c9c62e86f3
					
				@ -5,7 +5,8 @@ import (
 | 
			
		||||
	"time"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func BackTrace() {
 | 
			
		||||
func BackTrace(test bool) {
 | 
			
		||||
	if !test {
 | 
			
		||||
		// 获取IP地址数量
 | 
			
		||||
		ipCount := len(ipv4s)
 | 
			
		||||
		var (
 | 
			
		||||
@ -16,8 +17,7 @@ func BackTrace() {
 | 
			
		||||
		for i := range ipv4s {
 | 
			
		||||
			go trace(c, i)
 | 
			
		||||
		}
 | 
			
		||||
    
 | 
			
		||||
loop:
 | 
			
		||||
	loop:
 | 
			
		||||
		for range s {
 | 
			
		||||
			select {
 | 
			
		||||
			case o := <-c:
 | 
			
		||||
@ -26,10 +26,10 @@ loop:
 | 
			
		||||
				break loop
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
    
 | 
			
		||||
		for _, r := range s {
 | 
			
		||||
			if r != "" {
 | 
			
		||||
				fmt.Println(r)
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -16,5 +16,5 @@ import (
 | 
			
		||||
//}
 | 
			
		||||
 | 
			
		||||
func TestBackTrace(t *testing.T) {
 | 
			
		||||
	BackTrace()
 | 
			
		||||
	BackTrace(false)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -25,12 +25,13 @@ func main() {
 | 
			
		||||
		http.Get("https://hits.spiritlhl.net/backtrace.svg?action=hit&title=Hits&title_bg=%23555555&count_bg=%230eecf8&edge_flat=false")
 | 
			
		||||
	}()
 | 
			
		||||
	fmt.Println(Green("项目地址:"), Yellow("https://github.com/oneclickvirt/backtrace"))
 | 
			
		||||
	var showVersion, showIpInfo, help bool
 | 
			
		||||
	var showVersion, showIpInfo, help, test bool
 | 
			
		||||
	backtraceFlag := flag.NewFlagSet("backtrace", flag.ContinueOnError)
 | 
			
		||||
	backtraceFlag.BoolVar(&help, "h", false, "Show help information")
 | 
			
		||||
	backtraceFlag.BoolVar(&showVersion, "v", false, "Show version")
 | 
			
		||||
	backtraceFlag.BoolVar(&showIpInfo, "s", true, "Disabe show ip info")
 | 
			
		||||
	backtraceFlag.BoolVar(&backtrace.EnableLoger, "e", false, "Enable logging")
 | 
			
		||||
	backtraceFlag.BoolVar(&test, "test", false, "Test Mode")
 | 
			
		||||
	backtraceFlag.Parse(os.Args[1:])
 | 
			
		||||
	if help {
 | 
			
		||||
		fmt.Printf("Usage: %s [options]\n", os.Args[0])
 | 
			
		||||
@ -56,7 +57,7 @@ func main() {
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	backtrace.BackTrace()
 | 
			
		||||
	backtrace.BackTrace(test)
 | 
			
		||||
	fmt.Println(Yellow("准确线路自行查看详细路由,本测试结果仅作参考"))
 | 
			
		||||
	fmt.Println(Yellow("同一目标地址多个线路时,可能检测已越过汇聚层,除了第一个线路外,后续信息可能无效"))
 | 
			
		||||
	if runtime.GOOS == "windows" || runtime.GOOS == "darwin" {
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user