Pustaka klien OpenTelemetry Azure Core Tracing untuk Python - versi 1.0.0b9
Memulai
Menginstal paket
Instal python opentelemetry untuk Python dengan pip:
pip install azure-core-tracing-opentelemetry
Sekarang Anda dapat menggunakan opentelemetry untuk Python seperti biasa dengan SDK apa pun yang kompatibel dengan pelacakan azure-core. Ini termasuk (bukan daftar lengkap), azure-storage-blob, azure-keyvault-secrets, azure-eventhub, dll.
Konsep utama
Anda tidak perlu meneruskan konteks apa pun, SDK akan mendapatkannya untuk Anda
Baris tersebut adalah satu-satunya yang Anda butuhkan untuk mengaktifkan pelacakan
from azure.core.settings import settings from azure.core.tracing.ext.opentelemetry_span import OpenTelemetrySpan settings.tracing_implementation = OpenTelemetrySpan
Contoh
Tidak ada konteks eksplisit untuk diteruskan, Anda cukup membuat pelacak opentelemetry biasa dan memanggil kode SDK apa pun yang kompatibel dengan pelacakan azure-core. Ini adalah contoh menggunakan pengekspor Azure Monitor, tetapi Anda dapat menggunakan pengekspor apa pun (Zipkin, dll.).
# 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
Azure Exporter dapat ditemukan dalam paketopentelemetry-azure-monitor-exporter
Pemecahan Masalah
Klien ini memunculkan pengecualian yang ditentukan dalam Azure Core.
Langkah berikutnya
Dokumentasi lebih lanjut tentang konfigurasi OpenTelemetry dapat ditemukan di situs web OpenTelemetry
Berkontribusi
Proyek ini menyambut baik kontribusi dan saran. Sebagian besar kontribusi mengharuskan Anda menyetujui Perjanjian Lisensi Kontributor (CLA) yang menyatakan bahwa Anda memiliki hak untuk, dan benar-benar melakukannya, memberi kami hak untuk menggunakan kontribusi Anda. Untuk detailnya, kunjungi https://cla.microsoft.com.
Ketika Anda mengirimkan permintaan tarik, CLA-bot akan secara otomatis menentukan apakah Anda perlu memberikan CLA dan menghias PR dengan tepat (misalnya, label, komentar). Cukup ikuti instruksi yang diberikan oleh bot. Anda hanya perlu melakukan ini sekali di semua repos menggunakan CLA kami.
Proyek ini telah mengadopsi Kode Etik Sumber Terbuka Microsoft. Untuk informasi selengkapnya, lihat Tanya Jawab Umum Tata Tertib atau hubungi opencode@microsoft.com untuk pertanyaan atau komentar lainnya.