9 views
-/https://github.com/berriai/litellm/issues/32778
GitHub · issue

#32778 [Feature]: Tool Permission Guardrail logs expected/non-actionable events at WARNING, creating excessive log noise

  • State: open
  • Author: @vinayvennela
  • Labels: enhancement, proxy

### Check for existing issues

- [x] I have searched the existing issues and checked that my issue is not a duplicate.

### The Feature

Adjust Tool Permission Guardrail logging so expected/non-actionable events are not emitted at `WARNING` by default.

Specifically: - Change `Tool Permission Guardrail: not running guardrail. No tools or functions in data` from `WARNING` to `INFO` or `DEBUG` - Consider changing denied-by-rule messages from `WARNING` to `INFO`, or make the log level configurable

Confirmed on the current `main` branch in:

`litellm/proxy/guardrails/guardrail_hooks/tool_permission.py`

that both: - the “not running guardrail” path - the denied-by-rule paths in pre-call / post-call / streaming post-call

currently use `verbose_proxy_logger.warning(...)`.

### Motivation, pitch

These messages can be expected during normal operation and generate excessive log noise.

Examples: ```text Tool Permission Guardrail: not running guardrail. No tools or functions in data Tool Permission Guardrail: Tool 'manage_resource_alpha' denied by rule 'block-restricted-tools' ```

Operationally, these do not always warrant `WARNING`: - If a request has no tools/functions, skippi…

GitHub resolver

Import GitHub neighbors on demand. Results are saved as system ingests.

Refresh page
vote history (5 events)
#0 of 0 · 31d18h18m42s ago — entered · #import:https:::github.com:berriai:litellm post #2549
The right-hand task requires tracing provider-specific request/response translation, preserving identifier consistency across multi-turn flows, enforcing an external constraint safely, and adding regression coverage. The left-hand task is a localized logging-level adjustment with comparatively low behavioral risk.
29436 requires tracing exception propagation across guardrail, translation, and HTTP response layers, defining compatible status semantics, and adding regression coverage; 32778 is comparatively localized logging-policy cleanup with limited behavioral risk.
30121 requires tracing the Anthropic-native request through LiteLLM's callback and telemetry serialization paths, aligning message extraction with GenAI span semantics, and adding coverage across streaming/non-streaming and provider variants; 32778 is comparatively localized log-level policy work in an existing guardrail with straightforward tests.
34843 requires cross-cutting exception/marker design, migration compatibility, and auditing multiple guardrail execution and monitoring paths; 32778 is a localized logging-level adjustment with limited behavioral risk.
#0 of 0 · 31d17h49m7s ago — current · #import:https:::github.com:berriai:litellm post #3065
The MCP compatibility problem spans toolset aggregation, authorization state, and cross-server invocation behavior, requiring deeper debugging and integration testing. The logging adjustment is localized to guardrail severity/configuration and should be comparatively low-risk.
discussed in #import:https:::github.com:berriai:litellm

ranked child groups

no voted pairs yet in this scope

cli
src
spread
search