litellm-enterprise 0.1.17__tar.gz → 0.1.18__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (133) hide show
  1. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/PKG-INFO +1 -1
  2. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/integrations/prometheus.py +63 -7
  3. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/proxy/auth/route_checks.py +0 -1
  4. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/pyproject.toml +2 -2
  5. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/LICENSE.md +0 -0
  6. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/README.md +0 -0
  7. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/__init__.py +0 -0
  8. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/callback_controls.py +0 -0
  9. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/example_logging_api.py +0 -0
  10. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/generic_api_callback.py +0 -0
  11. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/llama_guard.py +0 -0
  12. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/llm_guard.py +0 -0
  13. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/pagerduty/pagerduty.py +0 -0
  14. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secret_detection.py +0 -0
  15. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/__init__.py +0 -0
  16. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/adafruit.py +0 -0
  17. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/adobe.py +0 -0
  18. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/age_secret_key.py +0 -0
  19. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/airtable_api_key.py +0 -0
  20. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/algolia_api_key.py +0 -0
  21. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/alibaba.py +0 -0
  22. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/asana.py +0 -0
  23. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/atlassian_api_token.py +0 -0
  24. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/authress_access_key.py +0 -0
  25. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/beamer_api_token.py +0 -0
  26. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/bitbucket.py +0 -0
  27. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/bittrex.py +0 -0
  28. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/clojars_api_token.py +0 -0
  29. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/codecov_access_token.py +0 -0
  30. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/coinbase_access_token.py +0 -0
  31. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/confluent.py +0 -0
  32. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/contentful_api_token.py +0 -0
  33. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/databricks_api_token.py +0 -0
  34. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/datadog_access_token.py +0 -0
  35. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/defined_networking_api_token.py +0 -0
  36. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/digitalocean.py +0 -0
  37. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/discord.py +0 -0
  38. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/doppler_api_token.py +0 -0
  39. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/droneci_access_token.py +0 -0
  40. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/dropbox.py +0 -0
  41. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/duffel_api_token.py +0 -0
  42. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/dynatrace_api_token.py +0 -0
  43. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/easypost.py +0 -0
  44. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/etsy_access_token.py +0 -0
  45. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/facebook_access_token.py +0 -0
  46. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/fastly_api_token.py +0 -0
  47. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/finicity.py +0 -0
  48. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/finnhub_access_token.py +0 -0
  49. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/flickr_access_token.py +0 -0
  50. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/flutterwave.py +0 -0
  51. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/frameio_api_token.py +0 -0
  52. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/freshbooks_access_token.py +0 -0
  53. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/gcp_api_key.py +0 -0
  54. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/github_token.py +0 -0
  55. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/gitlab.py +0 -0
  56. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/gitter_access_token.py +0 -0
  57. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/gocardless_api_token.py +0 -0
  58. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/grafana.py +0 -0
  59. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/hashicorp_tf_api_token.py +0 -0
  60. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/heroku_api_key.py +0 -0
  61. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/hubspot_api_key.py +0 -0
  62. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/huggingface.py +0 -0
  63. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/intercom_api_key.py +0 -0
  64. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/jfrog.py +0 -0
  65. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/jwt.py +0 -0
  66. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/kraken_access_token.py +0 -0
  67. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/kucoin.py +0 -0
  68. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/launchdarkly_access_token.py +0 -0
  69. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/linear.py +0 -0
  70. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/linkedin.py +0 -0
  71. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/lob.py +0 -0
  72. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/mailgun.py +0 -0
  73. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/mapbox_api_token.py +0 -0
  74. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/mattermost_access_token.py +0 -0
  75. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/messagebird.py +0 -0
  76. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/microsoft_teams_webhook.py +0 -0
  77. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/netlify_access_token.py +0 -0
  78. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/new_relic.py +0 -0
  79. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/nytimes_access_token.py +0 -0
  80. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/okta_access_token.py +0 -0
  81. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/openai_api_key.py +0 -0
  82. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/planetscale.py +0 -0
  83. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/postman_api_token.py +0 -0
  84. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/prefect_api_token.py +0 -0
  85. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/pulumi_api_token.py +0 -0
  86. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/pypi_upload_token.py +0 -0
  87. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/rapidapi_access_token.py +0 -0
  88. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/readme_api_token.py +0 -0
  89. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/rubygems_api_token.py +0 -0
  90. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/scalingo_api_token.py +0 -0
  91. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/sendbird.py +0 -0
  92. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/sendgrid_api_token.py +0 -0
  93. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/sendinblue_api_token.py +0 -0
  94. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/sentry_access_token.py +0 -0
  95. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/shippo_api_token.py +0 -0
  96. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/shopify.py +0 -0
  97. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/slack.py +0 -0
  98. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/snyk_api_token.py +0 -0
  99. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/squarespace_access_token.py +0 -0
  100. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/sumologic.py +0 -0
  101. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/telegram_bot_api_token.py +0 -0
  102. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/travisci_access_token.py +0 -0
  103. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/twitch_api_token.py +0 -0
  104. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/twitter.py +0 -0
  105. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/typeform_api_token.py +0 -0
  106. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/vault.py +0 -0
  107. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/yandex.py +0 -0
  108. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/secrets_plugins/zendesk_secret_key.py +0 -0
  109. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/send_emails/base_email.py +0 -0
  110. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/send_emails/endpoints.py +0 -0
  111. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/send_emails/resend_email.py +0 -0
  112. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/send_emails/smtp_email.py +0 -0
  113. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/enterprise_callbacks/session_handler.py +0 -0
  114. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/integrations/custom_guardrail.py +0 -0
  115. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/litellm_core_utils/litellm_logging.py +0 -0
  116. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/proxy/audit_logging_endpoints.py +0 -0
  117. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/proxy/auth/__init__.py +0 -0
  118. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/proxy/auth/custom_sso_handler.py +0 -0
  119. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/proxy/auth/user_api_key_auth.py +0 -0
  120. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/proxy/common_utils/check_batch_cost.py +0 -0
  121. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/proxy/enterprise_routes.py +0 -0
  122. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/proxy/guardrails/endpoints.py +0 -0
  123. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/proxy/hooks/managed_files.py +0 -0
  124. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/proxy/management_endpoints/__init__.py +0 -0
  125. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/proxy/management_endpoints/internal_user_endpoints.py +0 -0
  126. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/proxy/management_endpoints/key_management_endpoints.py +0 -0
  127. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/proxy/proxy_server.py +0 -0
  128. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/proxy/readme.md +0 -0
  129. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/proxy/utils.py +0 -0
  130. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/proxy/vector_stores/endpoints.py +0 -0
  131. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/types/enterprise_callbacks/send_emails.py +0 -0
  132. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/types/proxy/audit_logging_endpoints.py +0 -0
  133. {litellm_enterprise-0.1.17 → litellm_enterprise-0.1.18}/litellm_enterprise/types/proxy/proxy_server.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: litellm-enterprise
3
- Version: 0.1.17
3
+ Version: 0.1.18
4
4
  Summary: Package for LiteLLM Enterprise features
5
5
  Author: BerriAI
6
6
  Requires-Python: >=3.8, !=2.7.*, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*, !=3.6.*, !=3.7.*
@@ -2293,10 +2293,60 @@ def get_custom_labels_from_metadata(metadata: dict) -> Dict[str, str]:
2293
2293
  return result
2294
2294
 
2295
2295
 
2296
+ def _tag_matches_wildcard_configured_pattern(tags: List[str], configured_tag: str) -> bool:
2297
+ """
2298
+ Check if any of the request tags matches a wildcard configured pattern
2299
+
2300
+ Args:
2301
+ tags: List[str] - The request tags
2302
+ configured_tag: str - The configured tag
2303
+
2304
+ Returns:
2305
+ bool - True if any of the request tags matches the configured tag, False otherwise
2306
+
2307
+ e.g.
2308
+ tags = ["User-Agent: curl/7.68.0", "User-Agent: python-requests/2.28.1", "prod"]
2309
+ configured_tag = "User-Agent: curl/*"
2310
+ _tag_matches_wildcard_configured_pattern(tags=tags, configured_tag=configured_tag) # True
2311
+
2312
+ configured_tag = "User-Agent: python-requests/*"
2313
+ _tag_matches_wildcard_configured_pattern(tags=tags, configured_tag=configured_tag) # True
2314
+
2315
+ configured_tag = "gm"
2316
+ _tag_matches_wildcard_configured_pattern(tags=tags, configured_tag=configured_tag) # False
2317
+ """
2318
+ import re
2319
+
2320
+ from litellm.router_utils.pattern_match_deployments import PatternMatchRouter
2321
+ pattern_router = PatternMatchRouter()
2322
+ regex_pattern = pattern_router._pattern_to_regex(configured_tag)
2323
+ return any(re.match(pattern=regex_pattern, string=tag) for tag in tags)
2324
+
2325
+
2296
2326
  def get_custom_labels_from_tags(tags: List[str]) -> Dict[str, str]:
2297
2327
  """
2298
- Get custom labels from tags based on admin configuration
2328
+ Get custom labels from tags based on admin configuration.
2329
+
2330
+ Supports both exact matches and wildcard patterns:
2331
+ - Exact match: "prod" matches "prod" exactly
2332
+ - Wildcard pattern: "User-Agent: curl/*" matches "User-Agent: curl/7.68.0"
2333
+
2334
+ Reuses PatternMatchRouter for wildcard pattern matching.
2335
+
2336
+ Returns dict of label_name: "true" if the tag matches the configured tag, "false" otherwise
2337
+
2338
+ {
2339
+ "tag_User-Agent_curl": "true",
2340
+ "tag_User-Agent_python_requests": "false",
2341
+ "tag_Environment_prod": "true",
2342
+ "tag_Environment_dev": "false",
2343
+ "tag_Service_api_gateway_v2": "true",
2344
+ "tag_Service_web_app_v1": "false",
2345
+ }
2299
2346
  """
2347
+ import re
2348
+
2349
+ from litellm.router_utils.pattern_match_deployments import PatternMatchRouter
2300
2350
  from litellm.types.integrations.prometheus import _sanitize_prometheus_label_name
2301
2351
 
2302
2352
  configured_tags = litellm.custom_prometheus_tags
@@ -2304,16 +2354,22 @@ def get_custom_labels_from_tags(tags: List[str]) -> Dict[str, str]:
2304
2354
  return {}
2305
2355
 
2306
2356
  result: Dict[str, str] = {}
2357
+ pattern_router = PatternMatchRouter()
2307
2358
 
2308
- # Map each configured tag to its presence in the request tags
2309
2359
  for configured_tag in configured_tags:
2310
- # Create a safe prometheus label name
2311
2360
  label_name = _sanitize_prometheus_label_name(f"tag_{configured_tag}")
2312
-
2313
- # Check if this tag is present in the request tags
2361
+
2362
+ # Check for exact match first (backwards compatibility)
2314
2363
  if configured_tag in tags:
2315
2364
  result[label_name] = "true"
2316
- else:
2317
- result[label_name] = "false"
2365
+ continue
2366
+
2367
+ # Use PatternMatchRouter for wildcard pattern matching
2368
+ if "*" in configured_tag and _tag_matches_wildcard_configured_pattern(tags=tags, configured_tag=configured_tag):
2369
+ result[label_name] = "true"
2370
+ continue
2371
+
2372
+ # No match found
2373
+ result[label_name] = "false"
2318
2374
 
2319
2375
  return result
@@ -20,7 +20,6 @@ class EnterpriseRouteChecks:
20
20
  status_code=status.HTTP_500_INTERNAL_SERVER_ERROR,
21
21
  detail=f"🚨🚨🚨 DISABLING LLM API ENDPOINTS is an Enterprise feature\n🚨 {CommonProxyErrors.not_premium_user.value}",
22
22
  )
23
- return False
24
23
 
25
24
  return get_secret_bool("DISABLE_LLM_API_ENDPOINTS") is True
26
25
 
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "litellm-enterprise"
3
- version = "0.1.17"
3
+ version = "0.1.18"
4
4
  description = "Package for LiteLLM Enterprise features"
5
5
  authors = ["BerriAI"]
6
6
  readme = "README.md"
@@ -22,7 +22,7 @@ requires = ["poetry-core"]
22
22
  build-backend = "poetry.core.masonry.api"
23
23
 
24
24
  [tool.commitizen]
25
- version = "0.1.17"
25
+ version = "0.1.18"
26
26
  version_files = [
27
27
  "pyproject.toml:version",
28
28
  "../requirements.txt:litellm-enterprise==",