Bibliothèque de client OpenTelemetry de traçage Azure Core pour Python - version 1.0.0b9
Prise en main
Installer le package
Installez opentelemetry python pour Python avec pip :
pip install azure-core-tracing-opentelemetry
Vous pouvez maintenant utiliser opentelemetry pour Python comme d’habitude avec tous les SDK compatibles avec le suivi azure-core. Cela inclut (liste non exhaustive), azure-storage-blob, azure-keyvault-secrets, azure-eventhub, etc.
Concepts clés
Vous n’avez pas besoin de passer un contexte, le SDK l’obtiendra pour vous
Ces lignes sont les seules dont vous avez besoin pour activer le suivi
from azure.core.settings import settings from azure.core.tracing.ext.opentelemetry_span import OpenTelemetrySpan settings.tracing_implementation = OpenTelemetrySpan
Exemples
Il n’y a pas de contexte explicite à passer. Il vous suffit de créer votre traceur opentelemetry habituel et d’appeler n’importe quel code sdk compatible avec le suivi azure-core. Il s’agit d’un exemple d’utilisation d’un exportateur Azure Monitor, mais vous pouvez utiliser n’importe quel exportateur (Zipkin, etc.).
# Declare OpenTelemetry as enabled tracing plugin for Azure SDKs
from azure.core.settings import settings
from azure.core.tracing.ext.opentelemetry_span import OpenTelemetrySpan
settings.tracing_implementation = OpenTelemetrySpan
# In the below example, we use a simple console exporter, uncomment these lines to use
# the Azure Monitor Exporter.
# Example of Azure Monitor exporter, but you can use anything OpenTelemetry supports
# from azure_monitor import AzureMonitorSpanExporter
# exporter = AzureMonitorSpanExporter(
# instrumentation_key="uuid of the instrumentation key (see your Azure Monitor account)"
# )
# Regular open telemetry usage from here, see https://github.com/open-telemetry/opentelemetry-python
# for details
from opentelemetry import trace
from opentelemetry.sdk.trace import TracerProvider
from opentelemetry.sdk.trace.export import ConsoleSpanExporter
from opentelemetry.sdk.trace.export import SimpleSpanProcessor
# Simple console exporter
exporter = ConsoleSpanExporter()
trace.set_tracer_provider(TracerProvider())
tracer = trace.get_tracer(__name__)
trace.get_tracer_provider().add_span_processor(
SimpleSpanProcessor(exporter)
)
# Example with Storage SDKs
from azure.storage.blob import BlobServiceClient
with tracer.start_as_current_span(name="MyApplication"):
client = BlobServiceClient.from_connection_string('connectionstring')
client.create_container('mycontainer') # Call will be traced
Vous trouverez Azure Exporter dans le packageopentelemetry-azure-monitor-exporter
Résolution des problèmes
Ce client déclenche des exceptions définies dans Azure Core.
Étapes suivantes
Vous trouverez plus de documentation sur la configuration d’OpenTelemetry sur le site web OpenTelemetry
Contribution
Ce projet accepte les contributions et les suggestions. La plupart des contributions vous demandent d’accepter un contrat de licence de contribution (CLA) déclarant que vous avez le droit de nous accorder, et que vous nous accordez réellement, les droits d’utilisation de votre contribution. Pour plus d’informations, visitez https://cla.microsoft.com.
Quand vous envoyez une demande de tirage (pull request), un bot CLA détermine automatiquement si vous devez fournir un contrat CLA et agrémenter la demande de tirage de façon appropriée (par exemple, avec une étiquette ou un commentaire). Suivez simplement les instructions fournies par le bot. Vous ne devez effectuer cette opération qu’une seule fois sur tous les dépôts utilisant notre contrat CLA.
Ce projet a adopté le Code de conduite Open Source de Microsoft. Pour plus d’informations, consultez les Questions fréquentes (FAQ) sur le code de conduite ou envoyez vos questions ou vos commentaires à opencode@microsoft.com.