Dependency (#27)

This commit is contained in:
link 2022-12-07 11:01:33 +08:00 committed by GitHub
parent cbaba50f6f
commit 6b1d67efb1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 17 additions and 17 deletions

View File

@ -1,7 +1,5 @@
[Unit] [Unit]
After=casaos-gateway.service
After=casaos-message-bus.service After=casaos-message-bus.service
After=casaos-local-storage.service
ConditionFileNotEmpty=/etc/casaos/user-service.conf ConditionFileNotEmpty=/etc/casaos/user-service.conf
Description=CasaOS User Service Description=CasaOS User Service

View File

@ -83,7 +83,6 @@ func init() {
} }
func main() { func main() {
go route.EventListen()
v1Router := route.InitRouter() v1Router := route.InitRouter()
v2Router := route.InitV2Router() v2Router := route.InitV2Router()
@ -125,7 +124,7 @@ func main() {
} else { } else {
logger.Info("This process is not running as a systemd service.") logger.Info("This process is not running as a systemd service.")
} }
go route.EventListen()
logger.Info("User service is listening...", zap.Any("address", listener.Addr().String())) logger.Info("User service is listening...", zap.Any("address", listener.Addr().String()))
s := &http.Server{ s := &http.Server{

View File

@ -3,7 +3,7 @@ package route
import ( import (
"encoding/json" "encoding/json"
"fmt" "fmt"
"log" "strconv"
"strings" "strings"
"time" "time"
@ -18,7 +18,7 @@ import (
) )
func EventListen() { func EventListen() {
for i := 0; i < 100; i++ { for i := 0; i < 1000; i++ {
messageBusUrl, err := external.GetMessageBusAddress(config.CommonInfo.RuntimePath) messageBusUrl, err := external.GetMessageBusAddress(config.CommonInfo.RuntimePath)
if err != nil { if err != nil {
@ -29,28 +29,29 @@ func EventListen() {
wsURL := fmt.Sprintf("ws://%s/event/%s", strings.ReplaceAll(messageBusUrl, "http://", ""), "local-storage") wsURL := fmt.Sprintf("ws://%s/event/%s", strings.ReplaceAll(messageBusUrl, "http://", ""), "local-storage")
ws, err := websocket.Dial(wsURL, "", "http://localhost") ws, err := websocket.Dial(wsURL, "", "http://localhost")
if err != nil { if err != nil {
logger.Error("connect websocket err", zap.Any("error", err)) logger.Error("connect websocket err"+strconv.Itoa(i), zap.Any("error", err))
time.Sleep(time.Second * 5) time.Sleep(time.Second * 1)
continue continue
} }
defer ws.Close() defer ws.Close()
log.Println("subscribed to", wsURL) logger.Info("subscribed to", zap.Any("url", wsURL))
for { for {
msg := make([]byte, 1024) msg := make([]byte, 1024)
n, err := ws.Read(msg) n, err := ws.Read(msg)
if err != nil { if err != nil {
log.Fatalln(err.Error()) logger.Error("err", zap.Any("err", err.Error()))
} }
var event message_bus.Event var event message_bus.Event
if err := json.Unmarshal(msg[:n], &event); err != nil { if err := json.Unmarshal(msg[:n], &event); err != nil {
log.Println(err.Error()) logger.Error("err", zap.Any("err", err.Error()))
} }
propertiesStr, err := json.Marshal(event.Properties) propertiesStr, err := json.Marshal(event.Properties)
if err != nil { if err != nil {
logger.Error("marshal error", zap.Any("err", err.Error()), zap.Any("event", event))
continue continue
} }
model := model.EventModel{ model := model.EventModel{
@ -59,12 +60,14 @@ func EventListen() {
Properties: string(propertiesStr), Properties: string(propertiesStr),
UUID: *event.Uuid, UUID: *event.Uuid,
} }
logger.Info("write to database", zap.Any("model", model))
service.MyService.Event().CreateEvemt(model) service.MyService.Event().CreateEvemt(model)
output, err := json.MarshalIndent(event, "", " ") // logger.Info("info", zap.Any("写入信息1", model))
if err != nil { // output, err := json.MarshalIndent(event, "", " ")
log.Println(err.Error()) // if err != nil {
} // logger.Error("err", zap.Any("err", err.Error()))
log.Println(string(output)) // }
// logger.Info("info", zap.Any("写入信息", string(output)))
} }
} }
} }

View File

@ -13,7 +13,7 @@ import (
func InitRouter() *gin.Engine { func InitRouter() *gin.Engine {
r := gin.Default() r := gin.Default()
r.Use(middleware.Cors()) r.Use(middleware.Cors())
r.Use(middleware.WriteLog()) //r.Use(middleware.WriteLog())
r.Use(gzip.Gzip(gzip.DefaultCompression)) r.Use(gzip.Gzip(gzip.DefaultCompression))
// check if environment variable is set // check if environment variable is set