Logs
AI Gateway logs provide detailed event tracking for system activities, enabling better monitoring and debugging.
Format
Each log entry contains the namespace and binding that raised it, a timestamp, a trace ID, the event name, and other relevant details.
<namespace>:<binding> [<timestamp>] [<trace id>] <event name> <other details>For example:
north-mcp-gateway:north_http_server [22/Nov/2024:10:28:11 +0000] [0000000000000006d] BINDING_HTTP_REQUEST_ACCEPTED - POST https://localhost:7114/mcpEvents by Component
Named events are grouped by the internal component that raises them. Any of these events can be collected and exported via exporters, for example by adding the stdout exporter to zilla.yaml. The events below are the ones most relevant to an MCP deployment, since AI Gateway terminates connections over TCP, TLS, and HTTP before handing requests to the mcp bindings.
Binding
| Event | Description |
|---|---|
| BINDING_HTTP_REQUEST_ACCEPTED | The server received a valid HTTP request. |
| BINDING_MCP_AUTHORIZATION_FAILED | An authorization failure happened in the mcp binding. |
| BINDING_MCP_ELICITATION_TIMEOUT | An MCP elicitation request (see Elicitation) timed out before the client completed it. |
| BINDING_MCP_HTTP_SCHEMA_ACCESSOR_UNRESOLVED | An expression accessor in an mcp-http request template could not be resolved against the tool call's schema. |
| BINDING_MCP_HYDRATE_FAILED | The mcp proxy binding could not refresh its cached tools, prompts, or resources listing from an upstream MCP server, and will retry. |
| BINDING_MCP_SESSION_ESTABLISHED | An MCP session was established. |
| BINDING_MCP_SESSION_CLOSED | An MCP session was closed. |
| BINDING_TCP_DNS_FAILED | A DNS resolution failure. |
| BINDING_TLS_HANDSHAKE_FAILED | A client could not negotiate the desired level of security with the server. |
| BINDING_TLS_HANDSHAKE_TIMEOUT | The TLS handshake did not complete before the configured handshake timeout expired. |
| BINDING_TLS_KEY_REJECTED | A client or server has a misconfiguration of the server or client SSL certificate and private key. |
| BINDING_TLS_PEER_NOT_VERIFIED | A peer's identity could not be verified. |
| BINDING_TLS_PROTOCOL_REJECTED | An error in the operation of the SSL protocol. |
| BINDING_TLS_TLS_FAILED | A generic error detected by an SSL subsystem. |
Guard
| Event | Description |
|---|---|
| GUARD_JWT_AUTHORIZATION_FAILED | A client failed authorization for a JWT guarded route, such as an MCP tool call missing a valid bearer token. |
| GUARD_AZURE_AD_AUTHORIZATION_FAILED | A client failed authorization for an Azure AD guarded route. |
Vault
| Event | Description |
|---|---|
| VAULT_AWS_SECRETS_KEY_PAIR_INVALID | A TLS key verification failed because the key pair is missing or invalid. |
For the complete, always up to date event reference, see Telemetry Events.
LLM Gateway
The llm binding doesn't raise named events of its own. Each request to the OpenAI or Anthropic API is logged as BINDING_HTTP_REQUEST_ACCEPTED by the http · server in front of llm · server:
llm-gateway-setup:north_http_server_openai [14/Oct/2026:11:22:58 +0000] [0000000000000006d] BINDING_HTTP_REQUEST_ACCEPTED - POST http://localhost:7161/v1/chat/completionsWhen llm · client exits to sys:http_client, a failed TLS handshake with a provider is logged by sys:tls_client, and the caller receives 502 Bad Gateway:
sys:tls_client [14/Oct/2026:11:23:02 +0000] [0000000000000000d] BINDING_TLS_HANDSHAKE_FAILED The client and server could not negotiate the desired level of security.The tokens, latency, and time to first token of each LLM request are recorded by the llm.* metrics.
See Also
Troubleshooting Guides matches these events, and the mcp.* and llm.* metrics, to the symptom you're actually seeing and the fix to apply.

