feat(observability): add MCP tool name logging in access log
Some checks failed
CI / build-and-test (push) Failing after -32m45s
Some checks failed
CI / build-and-test (push) Failing after -32m45s
* Include tool name from request in access log entries * Update user agent header in HTTP requests * Add tests for MCP tool name logging
This commit is contained in:
@@ -21,6 +21,8 @@ var (
|
||||
cfg Config
|
||||
)
|
||||
|
||||
const cliUserAgent = "amcs-cli/0.0.1"
|
||||
|
||||
var rootCmd = &cobra.Command{
|
||||
Use: "amcs-cli",
|
||||
Short: "CLI for connecting to a remote AMCS MCP server",
|
||||
@@ -114,6 +116,9 @@ func (t *bearerTransport) RoundTrip(req *http.Request) (*http.Response, error) {
|
||||
base = http.DefaultTransport
|
||||
}
|
||||
clone := req.Clone(req.Context())
|
||||
if strings.TrimSpace(clone.Header.Get("User-Agent")) == "" {
|
||||
clone.Header.Set("User-Agent", cliUserAgent)
|
||||
}
|
||||
if strings.TrimSpace(t.token) != "" {
|
||||
clone.Header.Set("Authorization", "Bearer "+t.token)
|
||||
}
|
||||
|
||||
@@ -8,11 +8,15 @@ import (
|
||||
|
||||
func TestBearerTransportFormatsBearerToken(t *testing.T) {
|
||||
const want = "Bearer X"
|
||||
const wantUA = "amcs-cli/0.0.1"
|
||||
|
||||
ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
|
||||
if got := r.Header.Get("Authorization"); got != want {
|
||||
t.Fatalf("Authorization header = %q, want %q", got, want)
|
||||
}
|
||||
if got := r.Header.Get("User-Agent"); got != wantUA {
|
||||
t.Fatalf("User-Agent header = %q, want %q", got, wantUA)
|
||||
}
|
||||
w.WriteHeader(http.StatusNoContent)
|
||||
}))
|
||||
defer ts.Close()
|
||||
|
||||
Reference in New Issue
Block a user