54684fc2ea39d69c3c0ceb38428081167a129a68

Author
TheEdgeOfRage <git@theedgeofrage.com>
Committer
TheEdgeOfRage <git@theedgeofrage.com>
Date

Message

chore: log http requests

Diff

 1diff --git a/http.go b/http.go
 2index f364f1f0743b6c75feb3ae3ff4330121a1fe785e..1303aa9e2e644eb44dc991d5223d89a2f8ddd3ab 100644
 3--- a/http.go
 4+++ b/http.go
 5@@ -150,7 +150,7 @@ func buildHandler(jobs chan<- buildJob, statuses *buildStatuses) http.HandlerFun
 6 			slog.Info("build queued", "repository", buildRequest.Repository, "sha", buildRequest.SHA, "ref", buildRequest.Ref)
 7 			writer.WriteHeader(http.StatusAccepted)
 8 		default:
 9-			slog.Warn("build request rejected", "reason", "queue full", "repository", buildRequest.Repository, "sha", buildRequest.SHA)
10+			slog.Error("build queue full", "repository", buildRequest.Repository, "sha", buildRequest.SHA, "ref", buildRequest.Ref)
11 			http.Error(writer, "build queue is full", http.StatusServiceUnavailable)
12 		}
13 	}
14@@ -169,10 +169,12 @@ func buildStatusHandler(statuses *buildStatuses) http.HandlerFunc {
15 		decoder := json.NewDecoder(request.Body)
16 		decoder.DisallowUnknownFields()
17 		if err := decoder.Decode(&statusRequest); err != nil || !validBuildStatusRequest(statusRequest) || ensureSingleJSONValue(decoder) != nil {
18+			slog.Warn("build status request rejected", "reason", "invalid request", "remote_address", request.RemoteAddr)
19 			http.Error(writer, "invalid build status request", http.StatusBadRequest)
20 			return
21 		}
22 
23+		slog.Info("build statuses requested", "repository_count", len(statusRequest.Repositories), "remote_address", request.RemoteAddr)
24 		writer.Header().Set("Content-Type", "application/json")
25 		if err := json.NewEncoder(writer).Encode(buildStatusResponse{Statuses: statuses.requested(statusRequest.Repositories)}); err != nil {
26 			slog.Warn("write build statuses", "error", err)