Skip to content

Commit 3656b42

Browse files
committed
Updated more logs in test
1 parent 08961d9 commit 3656b42

File tree

5 files changed

+57
-40
lines changed

5 files changed

+57
-40
lines changed

test/mock/grpc/cmd/main.go

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,8 @@ const (
2626
directoryPermissions = 0o700
2727
)
2828

29+
var logOrigin = slog.String("log_origin", "main.go")
30+
2931
var (
3032
sleepDuration = flag.Duration("sleepDuration", defaultSleepDuration, "duration between changes in health")
3133
configDirectory = flag.String("configDirectory", "", "set the directory where the config files are stored")
@@ -41,12 +43,12 @@ func main() {
4143
agentConfig := types.AgentConfig()
4244
grpcHost, grpcPort, err := net.SplitHostPort(*grpcAddress)
4345
if err != nil {
44-
slog.ErrorContext(ctx, "Failed to read host and port", "error", err)
46+
slog.ErrorContext(ctx, "Failed to read host and port", "error", err, logOrigin)
4547
os.Exit(1)
4648
}
4749
portInt, err := strconv.Atoi(grpcPort)
4850
if err != nil {
49-
slog.ErrorContext(ctx, "Failed to convert port", "error", err)
51+
slog.ErrorContext(ctx, "Failed to convert port", "error", err, logOrigin)
5052
os.Exit(1)
5153
}
5254

@@ -67,33 +69,33 @@ func main() {
6769
defaultConfigDirectory, configDirErr := generateDefaultConfigDirectory()
6870
configDirectory = &defaultConfigDirectory
6971
if configDirErr != nil {
70-
slog.ErrorContext(ctx, "Failed to create default config directory", "error", err)
72+
slog.ErrorContext(ctx, "Failed to create default config directory", "error", err, logOrigin)
7173
os.Exit(1)
7274
}
7375
}
7476

75-
slog.DebugContext(ctx, "Config directory", "directory", *configDirectory)
77+
slog.DebugContext(ctx, "Config directory", "directory", *configDirectory, logOrigin)
7678

7779
_, err = grpc.NewMockManagementServer(*apiAddress, agentConfig, configDirectory)
7880
if err != nil {
79-
slog.ErrorContext(ctx, "Failed to start mock management server", "error", err)
81+
slog.ErrorContext(ctx, "Failed to start mock management server", "error", err, logOrigin)
8082
os.Exit(1)
8183
}
8284
<-ctx.Done()
8385
}
8486

8587
func generateDefaultConfigDirectory() (string, error) {
86-
slog.Info("Generating default configs")
88+
slog.Info("Generating default configs", logOrigin)
8789
tempDirectory := os.TempDir()
8890
configDirectory := filepath.Join(tempDirectory, "config")
8991

9092
err := os.MkdirAll(configDirectory, directoryPermissions)
9193
if err != nil {
92-
slog.Error("Failed to create directories", "error", err)
94+
slog.Error("Failed to create directories", "error", err, logOrigin)
9395
return "", err
9496
}
9597

96-
slog.Info("Created default config directory", "directory", configDirectory)
98+
slog.Info("Created default config directory", "directory", configDirectory, logOrigin)
9799

98100
return configDirectory, nil
99101
}

test/mock/grpc/mock_management_command_service.go

Lines changed: 24 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,8 @@ import (
3030
sloggin "github.com/samber/slog-gin"
3131
)
3232

33+
var commandLogOrigin = slog.String("log_origin", "mock_management_command_service.go")
34+
3335
type CommandService struct {
3436
mpi.UnimplementedCommandServiceServer
3537
server *gin.Engine
@@ -76,10 +78,10 @@ func NewCommandService(requestChan chan *mpi.ManagementPlaneRequest, configDirec
7678
}
7779

7880
func (cs *CommandService) StartServer(listener net.Listener) {
79-
slog.Info("Starting mock management plane http server", "address", listener.Addr().String())
81+
slog.Info("Starting mock management plane http server", "address", listener.Addr().String(), commandLogOrigin)
8082
err := cs.server.RunListener(listener)
8183
if err != nil {
82-
slog.Error("Failed to start mock management plane http server", "error", err)
84+
slog.Error("Failed to start mock management plane http server", "error", err, commandLogOrigin)
8385
}
8486
}
8587

@@ -89,7 +91,7 @@ func (cs *CommandService) CreateConnection(
8991
*mpi.CreateConnectionResponse,
9092
error,
9193
) {
92-
slog.DebugContext(ctx, "Create connection request", "request", request)
94+
slog.DebugContext(ctx, "Create connection request", "request", request, commandLogOrigin)
9395

9496
if request == nil {
9597
return nil, errors.New("empty connection request")
@@ -114,7 +116,7 @@ func (cs *CommandService) UpdateDataPlaneStatus(
114116
*mpi.UpdateDataPlaneStatusResponse,
115117
error,
116118
) {
117-
slog.Debug("Update data plane status request", "request", request)
119+
slog.Debug("Update data plane status request", "request", request, commandLogOrigin)
118120

119121
if request == nil {
120122
return nil, errors.New("empty update data plane status request")
@@ -133,7 +135,7 @@ func (cs *CommandService) UpdateDataPlaneHealth(
133135
*mpi.UpdateDataPlaneHealthResponse,
134136
error,
135137
) {
136-
slog.Debug("Update data plane health request", "request", request)
138+
slog.Debug("Update data plane health request", "request", request, commandLogOrigin)
137139

138140
if request == nil {
139141
return nil, errors.New("empty update dataplane health request")
@@ -151,7 +153,7 @@ func (cs *CommandService) Subscribe(in mpi.CommandService_SubscribeServer) error
151153

152154
go cs.listenForDataPlaneResponses(ctx, in)
153155

154-
slog.InfoContext(ctx, "Starting Subscribe")
156+
slog.InfoContext(ctx, "Starting Subscribe", commandLogOrigin)
155157

156158
for {
157159
select {
@@ -160,15 +162,15 @@ func (cs *CommandService) Subscribe(in mpi.CommandService_SubscribeServer) error
160162
default:
161163
request := <-cs.requestChan
162164

163-
slog.InfoContext(ctx, "Subscribe", "request", request)
165+
slog.InfoContext(ctx, "Subscribe", "request", request, commandLogOrigin)
164166

165167
if upload, ok := request.GetRequest().(*mpi.ManagementPlaneRequest_ConfigUploadRequest); ok {
166168
cs.handleConfigUploadRequest(ctx, upload)
167169
}
168170

169171
err := in.Send(request)
170172
if err != nil {
171-
slog.ErrorContext(ctx, "Failed to send management request", "error", err)
173+
slog.ErrorContext(ctx, "Failed to send management request", "error", err, commandLogOrigin)
172174
}
173175
}
174176
}
@@ -188,7 +190,7 @@ func (cs *CommandService) handleConfigUploadRequest(
188190
for _, fileToDelete := range filesToDelete {
189191
err := os.Remove(fileToDelete)
190192
if err != nil {
191-
slog.ErrorContext(ctx, "Failed to delete file", "error", err, "path", fileToDelete)
193+
slog.ErrorContext(ctx, "Failed to delete file", "error", err, "path", fileToDelete, commandLogOrigin)
192194
}
193195
}
194196
}
@@ -223,9 +225,12 @@ func (cs *CommandService) listenForDataPlaneResponses(ctx context.Context, in mp
223225
return
224226
default:
225227
dataPlaneResponse, err := in.Recv()
226-
slog.DebugContext(ctx, "Received data plane response", "data_plane_response", dataPlaneResponse)
228+
slog.DebugContext(ctx, "Received data plane response",
229+
"data_plane_response", dataPlaneResponse,
230+
commandLogOrigin,
231+
)
227232
if err != nil {
228-
slog.ErrorContext(ctx, "Failed to receive data plane response", "error", err)
233+
slog.ErrorContext(ctx, "Failed to receive data plane response", "error", err, commandLogOrigin)
229234
return
230235
}
231236
cs.dataPlaneResponsesMutex.Lock()
@@ -258,7 +263,7 @@ func (cs *CommandService) addConnectionEndpoint() {
258263
} else {
259264
var data map[string]interface{}
260265
if err := json.Unmarshal([]byte(protojson.Format(cs.connectionRequest)), &data); err != nil {
261-
slog.Error("Failed to return connection", "error", err)
266+
slog.Error("Failed to return connection", "error", err, commandLogOrigin)
262267
c.JSON(http.StatusInternalServerError, nil)
263268
}
264269
c.JSON(http.StatusOK, data)
@@ -276,7 +281,7 @@ func (cs *CommandService) addStatusEndpoint() {
276281
} else {
277282
var data map[string]interface{}
278283
if err := json.Unmarshal([]byte(protojson.Format(cs.updateDataPlaneStatusRequest)), &data); err != nil {
279-
slog.Error("Failed to return status", "error", err)
284+
slog.Error("Failed to return status", "error", err, commandLogOrigin)
280285
c.JSON(http.StatusInternalServerError, nil)
281286
}
282287
c.JSON(http.StatusOK, data)
@@ -294,7 +299,7 @@ func (cs *CommandService) addHealthEndpoint() {
294299
} else {
295300
var data map[string]interface{}
296301
if err := json.Unmarshal([]byte(protojson.Format(cs.updateDataPlaneHealthRequest)), &data); err != nil {
297-
slog.Error("Failed to return data plane health", "error", err)
302+
slog.Error("Failed to return data plane health", "error", err, commandLogOrigin)
298303
c.JSON(http.StatusInternalServerError, nil)
299304
}
300305
c.JSON(http.StatusOK, data)
@@ -326,9 +331,9 @@ func (cs *CommandService) addResponseAndRequestEndpoints() {
326331
cs.server.POST("/api/v1/requests", func(c *gin.Context) {
327332
request := mpi.ManagementPlaneRequest{}
328333
body, err := io.ReadAll(c.Request.Body)
329-
slog.Debug("Received request", "body", body)
334+
slog.Debug("Received request", "body", body, commandLogOrigin)
330335
if err != nil {
331-
slog.Error("Error reading request body", "err", err)
336+
slog.Error("Error reading request body", "err", err, commandLogOrigin)
332337
c.JSON(http.StatusBadRequest, err)
333338

334339
return
@@ -337,7 +342,7 @@ func (cs *CommandService) addResponseAndRequestEndpoints() {
337342
pb := protojson.UnmarshalOptions{DiscardUnknown: true, AllowPartial: true}
338343
err = pb.Unmarshal(body, &request)
339344
if err != nil {
340-
slog.Error("Error unmarshalling request body", "err", err)
345+
slog.Error("Error unmarshalling request body", "err", err, commandLogOrigin)
341346
c.JSON(http.StatusBadRequest, err)
342347

343348
return
@@ -395,7 +400,7 @@ func (cs *CommandService) findInstanceConfigFiles(instanceID string) (configFile
395400
}
396401

397402
if isValidFile(info, path) {
398-
slog.Debug("Found file", "path", path)
403+
slog.Debug("Found file", "path", path, commandLogOrigin)
399404

400405
filePath := strings.Split(path, instanceDirectory)[1]
401406

@@ -408,6 +413,7 @@ func (cs *CommandService) findInstanceConfigFiles(instanceID string) (configFile
408413
"File found:",
409414
"path", file.GetFileMeta().GetName(),
410415
"hash", file.GetFileMeta().GetHash(),
416+
commandLogOrigin,
411417
)
412418

413419
configFiles = append(configFiles, file)

test/mock/grpc/mock_management_file_service.go

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@ import (
2121
"google.golang.org/protobuf/types/known/timestamppb"
2222
)
2323

24+
var fileLogOrigin = slog.String("log_origin", "mock_management_file_service.go")
25+
2426
const defaultFilePermissions = 0o644
2527

2628
type FileService struct {
@@ -44,10 +46,10 @@ func (mgs *FileService) GetOverview(
4446
) (*v1.GetOverviewResponse, error) {
4547
configVersion := request.GetConfigVersion()
4648

47-
slog.Info("Getting overview", "config_version", configVersion)
49+
slog.Info("Getting overview", "config_version", configVersion, fileLogOrigin)
4850

4951
if _, ok := mgs.instanceFiles[request.GetConfigVersion().GetInstanceId()]; !ok {
50-
slog.Error("Config version not found", "config_version", configVersion)
52+
slog.Error("Config version not found", "config_version", configVersion, fileLogOrigin)
5153
return nil, status.Errorf(codes.NotFound, "Config version not found")
5254
}
5355

@@ -70,7 +72,7 @@ func (mgs *FileService) UpdateOverview(
7072
if errMarshaledJSON != nil {
7173
return nil, fmt.Errorf("failed to marshal struct back to JSON: %w", errMarshaledJSON)
7274
}
73-
slog.Info("Updating overview JSON", "overview", marshaledJSON)
75+
slog.Info("Updating overview JSON", "overview", marshaledJSON, fileLogOrigin)
7476

7577
mgs.instanceFiles[overview.GetConfigVersion().GetInstanceId()] = overview.GetFiles()
7678

@@ -98,18 +100,18 @@ func (mgs *FileService) GetFile(
98100
fileName := request.GetFileMeta().GetName()
99101
fileHash := request.GetFileMeta().GetHash()
100102

101-
slog.Info("Getting file", "name", fileName, "hash", fileHash)
103+
slog.Info("Getting file", "name", fileName, "hash", fileHash, fileLogOrigin)
102104

103105
fullFilePath := mgs.findFile(request.GetFileMeta())
104106

105107
if fullFilePath == "" {
106-
slog.Error("File not found", "file_name", fileName)
108+
slog.Error("File not found", "file_name", fileName, fileLogOrigin)
107109
return nil, status.Errorf(codes.NotFound, "File not found")
108110
}
109111

110112
bytes, err := os.ReadFile(fullFilePath)
111113
if err != nil {
112-
slog.Error("Failed to get file contents", "full_file_path", fullFilePath, "error", err)
114+
slog.Error("Failed to get file contents", "full_file_path", fullFilePath, "error", err, fileLogOrigin)
113115
return nil, status.Errorf(codes.Internal, "Failed to get file contents")
114116
}
115117

@@ -130,21 +132,21 @@ func (mgs *FileService) UpdateFile(
130132
fileHash := fileMeta.GetHash()
131133
filePermissions := fileMeta.GetPermissions()
132134

133-
slog.Info("Updating file", "name", fileName, "hash", fileHash)
135+
slog.Info("Updating file", "name", fileName, "hash", fileHash, fileLogOrigin)
134136

135137
fullFilePath := mgs.findFile(request.GetFile().GetFileMeta())
136138

137139
if _, err := os.Stat(fullFilePath); os.IsNotExist(err) {
138140
statErr := os.MkdirAll(filepath.Dir(fullFilePath), os.ModePerm)
139141
if statErr != nil {
140-
slog.Info("Failed to create/update file", "full_file_path", fullFilePath, "error", statErr)
142+
slog.Info("Failed to create/update file", "full_file_path", fullFilePath, "error", statErr, fileLogOrigin)
141143
return nil, status.Errorf(codes.Internal, "Failed to create/update file")
142144
}
143145
}
144146

145147
err := os.WriteFile(fullFilePath, fileContents, getFileMode(filePermissions))
146148
if err != nil {
147-
slog.Info("Failed to create/update file", "full_file_path", fullFilePath, "error", err)
149+
slog.Info("Failed to create/update file", "full_file_path", fullFilePath, "error", err, fileLogOrigin)
148150
return nil, status.Errorf(codes.Internal, "Failed to create/update file")
149151
}
150152

test/mock/grpc/mock_management_server.go

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,8 @@ const (
4141
connectionType = "tcp"
4242
)
4343

44+
var serverLogOrigin = slog.String("log_origin", "mock_management_server.go")
45+
4446
var (
4547
commandServiceLock sync.Mutex
4648
fileServiceLock sync.Mutex
@@ -82,7 +84,7 @@ func NewMockManagementServer(
8284
grpcListener, err := net.Listen(connectionType,
8385
fmt.Sprintf("%s:%d", agentConfig.Command.Server.Host, agentConfig.Command.Server.Port))
8486
if err != nil {
85-
slog.Error("Failed to listen", "error", err)
87+
slog.Error("Failed to listen", "error", err, serverLogOrigin)
8688
return nil, err
8789
}
8890

@@ -96,10 +98,13 @@ func NewMockManagementServer(
9698
go reportHealth(healthcheck, agentConfig)
9799

98100
go func() {
99-
slog.Info("Starting mock management plane gRPC server", "address", grpcListener.Addr().String())
101+
slog.Info("Starting mock management plane gRPC server",
102+
"address", grpcListener.Addr().String(),
103+
serverLogOrigin,
104+
)
100105
grpcErr := grpcServer.Serve(grpcListener)
101106
if grpcErr != nil {
102-
slog.Error("Failed to start mock management plane gRPC server", "error", grpcErr)
107+
slog.Error("Failed to start mock management plane gRPC server", "error", grpcErr, serverLogOrigin)
103108
}
104109
}()
105110

@@ -202,7 +207,7 @@ func createListener(apiAddress string, agentConfig *config.Config) (net.Listener
202207
cert, keyPairErr := tls.LoadX509KeyPair(agentConfig.Command.TLS.Cert, agentConfig.Command.TLS.Key)
203208

204209
if keyPairErr == nil {
205-
slog.Error("Failed to load key and cert pair", "error", keyPairErr)
210+
slog.Error("Failed to load key and cert pair", "error", keyPairErr, serverLogOrigin)
206211
return tls.Listen(connectionType, apiAddress, &tls.Config{
207212
Certificates: []tls.Certificate{cert},
208213
MinVersion: tls.VersionTLS12,

test/protos/common.go

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,12 +14,14 @@ import (
1414
"google.golang.org/protobuf/types/known/timestamppb"
1515
)
1616

17+
var logOrigin = slog.String("log_origin", "common.go")
18+
1719
const messageID = "964e1e51-44cc-4c55-8422-2a3205bdfc2f"
1820

1921
func CreateProtoTime(timeString string) (*timestamppb.Timestamp, error) {
2022
newTime, err := time.Parse(time.RFC3339, timeString)
2123
if err != nil {
22-
slog.Error("failed to parse time")
24+
slog.Error("failed to parse time", logOrigin)
2325
return timestamppb.Now(), err
2426
}
2527

0 commit comments

Comments
 (0)