fix: kcp 协议内部日志细节
This commit is contained in:
@@ -17,9 +17,16 @@ func main() {
|
||||
bindDevice := flag.String("bind-device", "", "optional Linux network device used when listening")
|
||||
logPath := flag.String("latency-log", "", "optional JSONL file path for latency timestamp logs")
|
||||
kcpTimestampDebugLogPath := flag.String("kcp-ts-debug-log", "", "optional JSONL file path for KCP packet kernel timestamp debug records")
|
||||
kcpSessionStatsLogPath := flag.String("kcp-session-stats-log", "", "optional JSONL file path for KCP session stats records")
|
||||
kcpSessionStatsInterval := flag.String("kcp-session-stats-interval", transport.DefaultKCPSessionStatsInterval.String(), "sampling interval for KCP session stats, for example 100ms")
|
||||
flag.Parse()
|
||||
|
||||
hubOptions := make([]server.KCPOption, 0, 1)
|
||||
statsInterval, err := transport.ParseKCPSessionStatsInterval(*kcpSessionStatsInterval)
|
||||
if err != nil {
|
||||
log.Fatalf("parse -kcp-session-stats-interval=%q: %v", *kcpSessionStatsInterval, err)
|
||||
}
|
||||
|
||||
hubOptions := make([]server.KCPOption, 0, 2)
|
||||
if *logPath != "" {
|
||||
logger, err := latencylog.NewJSONLLogger(*logPath)
|
||||
if err != nil {
|
||||
@@ -38,6 +45,14 @@ func main() {
|
||||
defer logger.Close()
|
||||
packetLogger = logger
|
||||
}
|
||||
if *kcpSessionStatsLogPath != "" {
|
||||
logger, err := transport.NewJSONLKCPSessionStatsLogger(*kcpSessionStatsLogPath)
|
||||
if err != nil {
|
||||
log.Fatalf("create kcp session stats logger %s: %v", *kcpSessionStatsLogPath, err)
|
||||
}
|
||||
defer logger.Close()
|
||||
hubOptions = append(hubOptions, server.WithKCPSessionStatsLogger(logger, statsInterval))
|
||||
}
|
||||
|
||||
listener, packetConn, err := transport.ListenKCPSessions(*listenAddr, *bindDevice, packetLogger, latencylog.NodeRoleServer, "hub")
|
||||
if err != nil {
|
||||
|
||||
Reference in New Issue
Block a user