logfire-api 5.1.0__tar.gz → 6.0.0b2__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 (126) hide show
  1. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/PKG-INFO +1 -1
  2. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/__init__.py +3 -0
  3. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/__init__.pyi +2 -1
  4. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/cli/run.pyi +8 -1
  5. logfire_api-6.0.0b2/logfire_api/_internal/integrations/snowflake.pyi +7 -0
  6. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/main.pyi +16 -0
  7. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/pyproject.toml +1 -1
  8. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/.gitignore +0 -0
  9. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/README.md +0 -0
  10. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/__init__.pyi +0 -0
  11. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/ast_utils.pyi +0 -0
  12. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/async_.pyi +0 -0
  13. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/auth.pyi +0 -0
  14. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/auto_trace/__init__.pyi +0 -0
  15. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/auto_trace/import_hook.pyi +0 -0
  16. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/auto_trace/rewrite_ast.pyi +0 -0
  17. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/auto_trace/types.pyi +0 -0
  18. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/baggage.pyi +0 -0
  19. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/cli/__init__.pyi +0 -0
  20. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/cli/ai_tools.pyi +0 -0
  21. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/cli/auth.pyi +0 -0
  22. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/cli/gateway.pyi +0 -0
  23. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/cli/gateway_auth.pyi +0 -0
  24. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/cli/prompt.pyi +0 -0
  25. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/cli.pyi +0 -0
  26. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/client.pyi +0 -0
  27. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/collect_system_info.pyi +0 -0
  28. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/config.pyi +0 -0
  29. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/config_params.pyi +0 -0
  30. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/constants.pyi +0 -0
  31. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/db_statement_summary.pyi +0 -0
  32. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/exporters/__init__.pyi +0 -0
  33. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/exporters/console.pyi +0 -0
  34. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/exporters/dynamic_batch.pyi +0 -0
  35. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/exporters/logs.pyi +0 -0
  36. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/exporters/otlp.pyi +0 -0
  37. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/exporters/processor_wrapper.pyi +0 -0
  38. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/exporters/quiet_metrics.pyi +0 -0
  39. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/exporters/remove_pending.pyi +0 -0
  40. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/exporters/tail_sampling.pyi +0 -0
  41. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/exporters/wrapper.pyi +0 -0
  42. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/formatter.pyi +0 -0
  43. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/forwarding.pyi +0 -0
  44. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/instrument.pyi +0 -0
  45. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/integrations/__init__.pyi +0 -0
  46. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/integrations/aiohttp_client.pyi +0 -0
  47. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/integrations/aiohttp_server.pyi +0 -0
  48. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/integrations/asgi.pyi +0 -0
  49. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/integrations/asyncpg.pyi +0 -0
  50. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/integrations/aws_lambda.pyi +0 -0
  51. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/integrations/celery.pyi +0 -0
  52. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/integrations/claude_agent_sdk.pyi +0 -0
  53. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/integrations/django.pyi +0 -0
  54. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/integrations/dspy.pyi +0 -0
  55. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/integrations/executors.pyi +0 -0
  56. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/integrations/fastapi.pyi +0 -0
  57. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/integrations/flask.pyi +0 -0
  58. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/integrations/google_genai.pyi +0 -0
  59. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/integrations/httpx.pyi +0 -0
  60. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/integrations/litellm.pyi +0 -0
  61. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/integrations/litestar.pyi +0 -0
  62. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/integrations/mcp.pyi +0 -0
  63. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/integrations/mysql.pyi +0 -0
  64. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/integrations/openai_agents.pyi +0 -0
  65. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/integrations/print.pyi +0 -0
  66. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/integrations/psycopg.pyi +0 -0
  67. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/integrations/pydantic_ai.pyi +0 -0
  68. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/integrations/pymongo.pyi +0 -0
  69. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/integrations/pytest.pyi +0 -0
  70. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/integrations/redis.pyi +0 -0
  71. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/integrations/requests.pyi +0 -0
  72. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/integrations/sqlalchemy.pyi +0 -0
  73. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/integrations/sqlite3.pyi +0 -0
  74. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/integrations/starlette.pyi +0 -0
  75. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/integrations/surrealdb.pyi +0 -0
  76. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/integrations/system_metrics.pyi +0 -0
  77. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/integrations/wsgi.pyi +0 -0
  78. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/interactive.pyi +0 -0
  79. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/json_encoder.pyi +0 -0
  80. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/json_formatter.pyi +0 -0
  81. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/json_schema.pyi +0 -0
  82. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/json_types.pyi +0 -0
  83. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/logs.pyi +0 -0
  84. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/metrics.pyi +0 -0
  85. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/scrubbing.pyi +0 -0
  86. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/server_response.pyi +0 -0
  87. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/stack_info.pyi +0 -0
  88. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/tracer.pyi +0 -0
  89. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/ulid.pyi +0 -0
  90. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/_internal/utils.pyi +0 -0
  91. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/cli.pyi +0 -0
  92. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/db_api.pyi +0 -0
  93. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/exceptions.pyi +0 -0
  94. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/experimental/__init__.pyi +0 -0
  95. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/experimental/annotations.pyi +0 -0
  96. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/experimental/api_client.pyi +0 -0
  97. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/experimental/datasets/__init__.pyi +0 -0
  98. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/experimental/query_client.pyi +0 -0
  99. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/integrations/__init__.pyi +0 -0
  100. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/integrations/aiohttp_client.pyi +0 -0
  101. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/integrations/flask.pyi +0 -0
  102. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/integrations/httpx.pyi +0 -0
  103. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/integrations/logging.pyi +0 -0
  104. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/integrations/loguru.pyi +0 -0
  105. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/integrations/psycopg.pyi +0 -0
  106. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/integrations/pydantic.pyi +0 -0
  107. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/integrations/redis.pyi +0 -0
  108. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/integrations/sqlalchemy.pyi +0 -0
  109. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/integrations/structlog.pyi +0 -0
  110. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/integrations/wsgi.pyi +0 -0
  111. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/propagate.pyi +0 -0
  112. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/py.typed +0 -0
  113. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/query_client.pyi +0 -0
  114. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/sampling/__init__.pyi +0 -0
  115. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/sampling/_tail_sampling.pyi +0 -0
  116. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/types.pyi +0 -0
  117. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/variables/__init__.pyi +0 -0
  118. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/variables/_handlebars.pyi +0 -0
  119. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/variables/abstract.pyi +0 -0
  120. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/variables/composition.pyi +0 -0
  121. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/variables/config.pyi +0 -0
  122. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/variables/local.pyi +0 -0
  123. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/variables/remote.pyi +0 -0
  124. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/variables/template_validation.pyi +0 -0
  125. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/variables/variable.pyi +0 -0
  126. {logfire_api-5.1.0 → logfire_api-6.0.0b2}/logfire_api/version.pyi +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: logfire-api
3
- Version: 5.1.0
3
+ Version: 6.0.0b2
4
4
  Summary: Shim for the Logfire SDK which does nothing unless Logfire is installed
5
5
  Author-email: Pydantic Team <engineering@pydantic.dev>, Samuel Colvin <samuel@pydantic.dev>, Hasan Ramezani <hasan@pydantic.dev>, Adrian Garcia Badaracco <adrian@pydantic.dev>, David Montague <david@pydantic.dev>, Marcelo Trylesinski <marcelo@pydantic.dev>, David Hewitt <david.hewitt@pydantic.dev>, Alex Hall <alex@pydantic.dev>
6
6
  License-Expression: MIT
@@ -176,6 +176,8 @@ except ImportError:
176
176
 
177
177
  def instrument_surrealdb(self, *args, **kwargs) -> None: ...
178
178
 
179
+ def instrument_snowflake(self, *args, **kwargs) -> None: ...
180
+
179
181
  def instrument_requests(self, *args, **kwargs) -> None: ...
180
182
 
181
183
  def instrument_httpx(self, *args, **kwargs) -> None: ...
@@ -255,6 +257,7 @@ except ImportError:
255
257
  instrument_httpx = DEFAULT_LOGFIRE_INSTANCE.instrument_httpx
256
258
  instrument_requests = DEFAULT_LOGFIRE_INSTANCE.instrument_requests
257
259
  instrument_surrealdb = DEFAULT_LOGFIRE_INSTANCE.instrument_surrealdb
260
+ instrument_snowflake = DEFAULT_LOGFIRE_INSTANCE.instrument_snowflake
258
261
  instrument_psycopg = DEFAULT_LOGFIRE_INSTANCE.instrument_psycopg
259
262
  instrument_django = DEFAULT_LOGFIRE_INSTANCE.instrument_django
260
263
  instrument_flask = DEFAULT_LOGFIRE_INSTANCE.instrument_flask
@@ -16,7 +16,7 @@ from logfire.propagate import attach_context as attach_context, get_context as g
16
16
  from logfire.sampling import SamplingOptions as SamplingOptions
17
17
  from typing import Any
18
18
 
19
- __all__ = ['Logfire', 'LogfireSpan', 'LevelName', 'AdvancedOptions', 'ConsoleOptions', 'CodeSource', 'PydanticPlugin', 'configure', 'span', 'instrument', 'log', 'trace', 'debug', 'notice', 'info', 'warn', 'warning', 'error', 'exception', 'fatal', 'force_flush', 'log_slow_async_callbacks', 'install_auto_tracing', 'instrument_asgi', 'instrument_wsgi', 'instrument_pydantic', 'instrument_pydantic_ai', 'instrument_fastapi', 'instrument_openai', 'instrument_openai_agents', 'instrument_anthropic', 'instrument_google_genai', 'instrument_litellm', 'instrument_dspy', 'instrument_print', 'instrument_asyncpg', 'instrument_httpx', 'instrument_celery', 'instrument_requests', 'instrument_psycopg', 'instrument_django', 'instrument_flask', 'instrument_starlette', 'instrument_litestar', 'instrument_aiohttp_client', 'instrument_aiohttp_server', 'instrument_sqlalchemy', 'instrument_sqlite3', 'instrument_aws_lambda', 'instrument_redis', 'instrument_pymongo', 'instrument_mysql', 'instrument_surrealdb', 'instrument_system_metrics', 'instrument_mcp', 'instrument_claude_agent_sdk', 'AutoTraceModule', 'with_tags', 'with_settings', 'suppress_scopes', 'shutdown', 'no_auto_trace', 'ScrubMatch', 'ScrubbingOptions', 'VERSION', 'add_non_user_code_prefix', 'suppress_instrumentation', 'StructlogProcessor', 'LogfireLoggingHandler', 'loguru_handler', 'SamplingOptions', 'MetricsOptions', 'VariablesOptions', 'LocalVariablesOptions', 'variables', 'var', 'template_var', 'variables_get', 'variables_push', 'variables_push_types', 'variables_validate', 'variables_push_config', 'variables_pull_config', 'variables_build_config', 'logfire_info', 'get_baggage', 'set_baggage', 'get_context', 'attach_context', 'url_from_eval', 'forward_export_request', 'forward_export_request_starlette']
19
+ __all__ = ['Logfire', 'LogfireSpan', 'LevelName', 'AdvancedOptions', 'ConsoleOptions', 'CodeSource', 'PydanticPlugin', 'configure', 'span', 'instrument', 'log', 'trace', 'debug', 'notice', 'info', 'warn', 'warning', 'error', 'exception', 'fatal', 'force_flush', 'log_slow_async_callbacks', 'install_auto_tracing', 'instrument_asgi', 'instrument_wsgi', 'instrument_pydantic', 'instrument_pydantic_ai', 'instrument_fastapi', 'instrument_openai', 'instrument_openai_agents', 'instrument_anthropic', 'instrument_google_genai', 'instrument_litellm', 'instrument_dspy', 'instrument_print', 'instrument_asyncpg', 'instrument_httpx', 'instrument_celery', 'instrument_requests', 'instrument_psycopg', 'instrument_django', 'instrument_flask', 'instrument_starlette', 'instrument_litestar', 'instrument_aiohttp_client', 'instrument_aiohttp_server', 'instrument_sqlalchemy', 'instrument_sqlite3', 'instrument_aws_lambda', 'instrument_redis', 'instrument_pymongo', 'instrument_mysql', 'instrument_surrealdb', 'instrument_snowflake', 'instrument_system_metrics', 'instrument_mcp', 'instrument_claude_agent_sdk', 'AutoTraceModule', 'with_tags', 'with_settings', 'suppress_scopes', 'shutdown', 'no_auto_trace', 'ScrubMatch', 'ScrubbingOptions', 'VERSION', 'add_non_user_code_prefix', 'suppress_instrumentation', 'StructlogProcessor', 'LogfireLoggingHandler', 'loguru_handler', 'SamplingOptions', 'MetricsOptions', 'VariablesOptions', 'LocalVariablesOptions', 'variables', 'var', 'template_var', 'variables_get', 'variables_push', 'variables_push_types', 'variables_validate', 'variables_push_config', 'variables_pull_config', 'variables_build_config', 'logfire_info', 'get_baggage', 'set_baggage', 'get_context', 'attach_context', 'url_from_eval', 'forward_export_request', 'forward_export_request_starlette']
20
20
 
21
21
  DEFAULT_LOGFIRE_INSTANCE = Logfire()
22
22
  span = DEFAULT_LOGFIRE_INSTANCE.span
@@ -54,6 +54,7 @@ instrument_redis = DEFAULT_LOGFIRE_INSTANCE.instrument_redis
54
54
  instrument_pymongo = DEFAULT_LOGFIRE_INSTANCE.instrument_pymongo
55
55
  instrument_mysql = DEFAULT_LOGFIRE_INSTANCE.instrument_mysql
56
56
  instrument_surrealdb = DEFAULT_LOGFIRE_INSTANCE.instrument_surrealdb
57
+ instrument_snowflake = DEFAULT_LOGFIRE_INSTANCE.instrument_snowflake
57
58
  instrument_system_metrics = DEFAULT_LOGFIRE_INSTANCE.instrument_system_metrics
58
59
  instrument_mcp = DEFAULT_LOGFIRE_INSTANCE.instrument_mcp
59
60
  instrument_claude_agent_sdk = DEFAULT_LOGFIRE_INSTANCE.instrument_claude_agent_sdk
@@ -1,6 +1,6 @@
1
1
  import argparse
2
2
  from _typeshed import Incomplete
3
- from collections.abc import Collection, Generator, Mapping
3
+ from collections.abc import Callable, Collection, Generator, Mapping
4
4
  from contextlib import contextmanager
5
5
  from dataclasses import dataclass
6
6
  from logfire._internal.utils import get_version as get_version
@@ -34,6 +34,13 @@ class InstrumentationContext:
34
34
  recommendations: set[InstrumentationRecommendation]
35
35
 
36
36
  def parse_run(args: argparse.Namespace) -> None: ...
37
+ def load_console_entry_point(name: str) -> Callable[[], object] | None:
38
+ """Load one installed `console_scripts` entry point before local modules can shadow it."""
39
+ @contextmanager
40
+ def without_working_directory_on_sys_path() -> Generator[None, None, None]:
41
+ """Temporarily give entry-point imports the path behavior of an installed launcher."""
42
+ def run_console_entry_point(entry_point: Callable[[], object], argv: list[str]) -> None:
43
+ """Run a loaded console entry point with the target command's arguments."""
37
44
  @contextmanager
38
45
  def alter_sys_argv(argv: list[str], cmd: str) -> Generator[None, None, None]: ...
39
46
  def is_uv_installed() -> bool:
@@ -0,0 +1,7 @@
1
+ from logfire import Logfire as Logfire
2
+ from logfire._internal.stack_info import warn_at_user_stacklevel as warn_at_user_stacklevel
3
+ from logfire._internal.utils import handle_internal_errors as handle_internal_errors
4
+ from snowflake.connector.connection import SnowflakeConnection
5
+ from types import ModuleType
6
+
7
+ def instrument_snowflake(logfire_instance: Logfire, conn_or_module: ModuleType | SnowflakeConnection | None, capture_parameters: bool) -> None: ...
@@ -51,6 +51,7 @@ from opentelemetry.trace import SpanContext, SpanKind
51
51
  from opentelemetry.util import types as otel_types
52
52
  from pydantic_evals.reporting import EvaluationReport
53
53
  from pymongo.monitoring import CommandFailedEvent as CommandFailedEvent, CommandStartedEvent as CommandStartedEvent, CommandSucceededEvent as CommandSucceededEvent
54
+ from snowflake.connector.connection import SnowflakeConnection
54
55
  from sqlalchemy import Engine
55
56
  from sqlalchemy.ext.asyncio import AsyncEngine
56
57
  from starlette.applications import Starlette
@@ -440,6 +441,21 @@ class Logfire:
440
441
  Pass a connection class to instrument all instances of that class.
441
442
  By default, all connection classes are instrumented.
442
443
  """
444
+ def instrument_snowflake(self, conn_or_module: ModuleType | SnowflakeConnection | None = None, *, capture_parameters: bool = False) -> None:
445
+ """Instrument the [Snowflake Connector for Python](https://docs.snowflake.com/en/developer-guide/python-connector/python-connector) so that a span is created for each query.
446
+
447
+ Calls to `execute_async()` create a `snowflake execute async` span that measures query submission,
448
+ not server-side execution.
449
+
450
+ Args:
451
+ conn_or_module: Pass a single connection instance to instrument only that connection.
452
+ By default (`None`), all connections are instrumented, including ones created later.
453
+ capture_parameters: Set to `True` to capture query parameters as span attributes.
454
+ Be cautious when enabling this, as it may lead to sensitive data being captured in traces.
455
+ Instrumenting the same target again has no effect; the first call determines this setting,
456
+ and a later call with a different value emits a warning.
457
+ A connection keeps the setting it was instrumented with, even if the module is instrumented later.
458
+ """
443
459
  def instrument_mcp(self, *, propagate_otel_context: bool = True) -> None:
444
460
  """Instrument the [MCP Python SDK](https://github.com/modelcontextprotocol/python-sdk).
445
461
 
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "logfire-api"
7
- version = "5.1.0"
7
+ version = "6.0.0b2"
8
8
  description = "Shim for the Logfire SDK which does nothing unless Logfire is installed"
9
9
  authors = [
10
10
  { name = "Pydantic Team", email = "engineering@pydantic.dev" },
File without changes
File without changes