@@ -22,17 +22,11 @@ import (
2222 "github.com/HyperloopUPV-H8/h9-backend/internal/excel/ade"
2323 "github.com/HyperloopUPV-H8/h9-backend/internal/excel/utils"
2424 "github.com/HyperloopUPV-H8/h9-backend/internal/info"
25- "github.com/HyperloopUPV-H8/h9-backend/internal/logger_handler"
26- protection_logger "github.com/HyperloopUPV-H8/h9-backend/internal/message_logger"
2725 "github.com/HyperloopUPV-H8/h9-backend/internal/message_transfer"
28- "github.com/HyperloopUPV-H8/h9-backend/internal/order_logger"
2926 "github.com/HyperloopUPV-H8/h9-backend/internal/order_transfer"
30- "github.com/HyperloopUPV-H8/h9-backend/internal/packet_logger"
3127 "github.com/HyperloopUPV-H8/h9-backend/internal/pod_data"
3228 "github.com/HyperloopUPV-H8/h9-backend/internal/server"
33- "github.com/HyperloopUPV-H8/h9-backend/internal/state_space_logger"
3429 "github.com/HyperloopUPV-H8/h9-backend/internal/update_factory"
35- "github.com/HyperloopUPV-H8/h9-backend/internal/value_logger"
3630 vehicle_models "github.com/HyperloopUPV-H8/h9-backend/internal/vehicle/models"
3731 "github.com/HyperloopUPV-H8/h9-backend/internal/ws_handle"
3832 "github.com/HyperloopUPV-H8/h9-backend/pkg/abstraction"
@@ -51,6 +45,12 @@ import (
5145 "github.com/google/gopacket/pcap"
5246 "github.com/pelletier/go-toml/v2"
5347 trace "github.com/rs/zerolog/log"
48+
49+ "github.com/HyperloopUPV-H8/h9-backend/pkg/logger"
50+ data_logger "github.com/HyperloopUPV-H8/h9-backend/pkg/logger/data"
51+ messages_logger "github.com/HyperloopUPV-H8/h9-backend/pkg/logger/messages"
52+ order_logger "github.com/HyperloopUPV-H8/h9-backend/pkg/logger/order"
53+ state_logger "github.com/HyperloopUPV-H8/h9-backend/pkg/logger/state"
5454)
5555
5656var traceLevel = flag .String ("trace" , "info" , "set the trace level (\" fatal\" , \" error\" , \" warn\" , \" info\" , \" debug\" , \" trace\" )" )
@@ -124,20 +124,15 @@ func main() {
124124 updateFactory := update_factory .NewFactory ()
125125
126126 // <--- logger --->
127- packetLogger := packet_logger .NewPacketLogger (podData .Boards , config .PacketLogger )
128- valueLogger := value_logger .NewValueLogger (podData .Boards , config .ValueLogger )
129- orderLogger := order_logger .NewOrderLogger (podData .Boards , config .OrderLogger )
130- protectionLogger := protection_logger .NewMessageLogger (config .Vehicle .Messages .InfoIdKey , config .Vehicle .Messages .FaultIdKey , config .Vehicle .Messages .WarningIdKey , config .ProtectionLogger )
131- stateSpaceLogger := state_space_logger .NewStateSpaceLogger (info .MessageIds .StateSpace )
132-
133- loggers := map [string ]logger_handler.Logger {
134- "packets" : & packetLogger ,
135- "values" : & valueLogger ,
136- "orders" : & orderLogger ,
137- "protections" : & protectionLogger ,
138- "stateSpace" : & stateSpaceLogger ,
127+ var boardMap map [abstraction.BoardId ]string
128+ var subloggers = map [abstraction.LoggerName ]abstraction.Logger {
129+ data_logger .Name : data_logger .NewLogger (),
130+ messages_logger .Name : messages_logger .NewLogger (boardMap ),
131+ order_logger .Name : order_logger .NewLogger (),
132+ state_logger .Name : state_logger .NewLogger (),
139133 }
140- loggerHandler := logger_handler .NewLoggerHandler (loggers , config .LoggerHandler )
134+
135+ loggerHandler := logger .NewLogger (subloggers )
141136
142137 // <--- order transfer --->
143138 idToBoard := make (map [uint16 ]string )
@@ -167,37 +162,64 @@ func main() {
167162 transp .SetAPI (& TransportAPI {
168163 OnNotification : func (notification abstraction.TransportNotification ) {
169164 packet := notification .(transport.PacketNotification )
165+
170166 switch p := packet .Packet .(type ) {
171167 case * data.Packet :
172- if _ , ok := orders [p .Id ()]; ok {
173- loggerHandler .Log (order_logger .LoggableOrder (* p ))
174- return
175- }
176-
177168 update := updateFactory .NewUpdate (p )
178169 dataTransfer .Update (update )
179170
180- loggerHandler .Log (packet_logger .ToLoggablePacket (p ))
171+ err = loggerHandler .PushRecord (& data_logger.Record {
172+ Packet : p ,
173+ })
181174
182- for id , value := range p . GetValues () {
183- loggerHandler . Log ( value_logger . ToLoggableValue ( string ( id ), value , p . Timestamp ()) )
175+ if err != nil {
176+ fmt . Println ( "Error pushing record to logger: " , err )
184177 }
178+
185179 case * info_packet.Packet :
186180 messageTransfer .SendMessage (p )
187- loggerHandler .Log (protection_logger .LoggableInfo (* p ))
181+
182+ err = loggerHandler .PushRecord (& messages_logger.Record {
183+ Packet : p ,
184+ })
185+
186+ if err != nil {
187+ fmt .Println ("Error pushing record to logger: " , err )
188+ }
189+
188190 case * protection.Packet :
189191 messageTransfer .SendMessage (p )
190- loggerHandler .Log (protection_logger .LoggableProtection (* p ))
192+
193+ packet := info_packet .NewPacket (p .Id ())
194+ packet .BoardId = p .BoardId
195+ packet .Timestamp = p .Timestamp
196+ packet .Msg = info_packet .InfoData (fmt .Sprint (p ))
197+
198+ err = loggerHandler .PushRecord (& messages_logger.Record {
199+ Packet : packet ,
200+ })
201+
202+ if err != nil {
203+ fmt .Println ("Error pushing record to logger: " , err )
204+ }
205+
191206 case * blcu_packet.Ack :
192207 if useBlcu {
193208 blcu .NotifyAck ()
194209 }
210+
195211 case * state.Space :
196- for _ , row := range p .State () {
197- loggerHandler .Log (state_space_logger .LoggableStateSpaceRow (row ))
212+ err = loggerHandler .PushRecord (& state_logger.Record {
213+ Packet : p ,
214+ })
215+
216+ if err != nil {
217+ fmt .Println ("Error pushing record to logger: " , err )
198218 }
219+
199220 case * order.Add :
200221 orderTransfer .AddStateOrders (* p )
222+
201223 case * order.Remove :
202224 orderTransfer .RemoveStateOrders (* p )
203225 }
@@ -259,7 +281,13 @@ func main() {
259281 trace .Error ().Any ("order" , order ).Err (err ).Msg ("error sending order" )
260282 }
261283
262- loggerHandler .Log (order_logger .LoggableOrder (order ))
284+ err = loggerHandler .PushRecord (& order_logger.Record {
285+ Packet : & order ,
286+ })
287+
288+ if err != nil {
289+ fmt .Println ("Error pushing record to logger: " , err )
290+ }
263291 }
264292 }()
265293
@@ -285,7 +313,7 @@ func main() {
285313
286314 websocketBroker .RegisterHandle (& connectionTransfer , config .Connections .UpdateTopic , "connection/update" )
287315 websocketBroker .RegisterHandle (& dataTransfer , "podData/update" )
288- websocketBroker .RegisterHandle (& loggerHandler , config .LoggerHandler .Topics .Enable )
316+ websocketBroker .RegisterHandle (loggerHandler , config .LoggerHandler .Topics .Enable )
289317 websocketBroker .RegisterHandle (& messageTransfer , "message/update" )
290318 websocketBroker .RegisterHandle (& orderTransfer , config .Orders .SendTopic , "order/stateOrders" )
291319
0 commit comments