mirror of
https://github.com/Monibuca/engine.git
synced 2025-10-06 00:56:58 +08:00
升级日志系统
This commit is contained in:
@@ -3,7 +3,7 @@ package util
|
||||
import (
|
||||
"context"
|
||||
"encoding/json"
|
||||
"log"
|
||||
log "github.com/sirupsen/logrus"
|
||||
"net"
|
||||
"net/http"
|
||||
"time"
|
||||
@@ -14,26 +14,41 @@ type TCPListener interface {
|
||||
Process(*net.TCPConn)
|
||||
}
|
||||
|
||||
func GetJsonHandler[T any](fetch func() T, tickDur time.Duration) http.HandlerFunc {
|
||||
return func(rw http.ResponseWriter, r *http.Request) {
|
||||
if r.URL.Query().Get("json") != "" {
|
||||
if err := json.NewEncoder(rw).Encode(fetch()); err != nil {
|
||||
rw.WriteHeader(500)
|
||||
}
|
||||
return
|
||||
func ReturnJson[T any](fetch func() T, tickDur time.Duration, rw http.ResponseWriter, r *http.Request) {
|
||||
if r.URL.Query().Get("json") != "" {
|
||||
if err := json.NewEncoder(rw).Encode(fetch()); err != nil {
|
||||
rw.WriteHeader(500)
|
||||
}
|
||||
sse := NewSSE(rw, r.Context())
|
||||
tick := time.NewTicker(tickDur)
|
||||
for range tick.C {
|
||||
if sse.WriteJSON(fetch()) != nil {
|
||||
tick.Stop()
|
||||
break
|
||||
}
|
||||
return
|
||||
}
|
||||
sse := NewSSE(rw, r.Context())
|
||||
tick := time.NewTicker(tickDur)
|
||||
for range tick.C {
|
||||
if sse.WriteJSON(fetch()) != nil {
|
||||
tick.Stop()
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// func GetJsonHandler[T any](fetch func() T, tickDur time.Duration) http.HandlerFunc {
|
||||
// return func(rw http.ResponseWriter, r *http.Request) {
|
||||
// if r.URL.Query().Get("json") != "" {
|
||||
// if err := json.NewEncoder(rw).Encode(fetch()); err != nil {
|
||||
// rw.WriteHeader(500)
|
||||
// }
|
||||
// return
|
||||
// }
|
||||
// sse := NewSSE(rw, r.Context())
|
||||
// tick := time.NewTicker(tickDur)
|
||||
// for range tick.C {
|
||||
// if sse.WriteJSON(fetch()) != nil {
|
||||
// tick.Stop()
|
||||
// break
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
|
||||
func ListenUDP(address string, networkBuffer int) (*net.UDPConn, error) {
|
||||
addr, err := net.ResolveUDPAddr("udp", address)
|
||||
@@ -45,10 +60,10 @@ func ListenUDP(address string, networkBuffer int) (*net.UDPConn, error) {
|
||||
log.Fatalf("udp server ListenUDP :%s error, %v", address, err)
|
||||
}
|
||||
if err = conn.SetReadBuffer(networkBuffer); err != nil {
|
||||
Printf("udp server video conn set read buffer error, %v", err)
|
||||
log.Errorf("udp server video conn set read buffer error, %v", err)
|
||||
}
|
||||
if err = conn.SetWriteBuffer(networkBuffer); err != nil {
|
||||
Printf("udp server video conn set write buffer error, %v", err)
|
||||
log.Errorf("udp server video conn set write buffer error, %v", err)
|
||||
}
|
||||
return conn, err
|
||||
}
|
||||
|
Reference in New Issue
Block a user