Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Başlarken
Şu anda desteklenen ortamlar
- Node.js
LTS sürümleri - Safari, Chrome, Edge ve Firefox'un en son sürümleri.
Daha fazla bilgi için bkz. destek ilkesi.
Önkoşullar
- Azure aboneliği.
- @opentelemetry/izleme paketi.
Telemetri verileri üretmek için OpenTelemetry SDK'sını yapılandırmanız gerekir. OpenTelemetry yapılandırması bu BENİOKU kapsamının dışında olsa da, OpenTelemetry kullanmaya başlamak için
@azure/opentelemetry-instrumentation-azure-sdk paketini yükleme
npmile Azure OpenTelemetry Instrumentation istemci kitaplığını yükleyin:
npm install @azure/opentelemetry-instrumentation-azure-sdk
Tarayıcı desteği
JavaScript Paketi
Bu istemci kitaplığını tarayıcıda kullanmak için önce bir paketleyici kullanmanız gerekir. Bunun nasıl yapılacağının ayrıntıları için lütfen
Temel kavramlar
- createAzureSdkInstrumentation işlevi
, OpenTelemetry ile kaydedilecek bir Azure SDK İzleme nesnesi oluşturmanın bir yolunu sağlayan bu kitaplık tarafından dışarı aktarılan ana kancadır.
Örnekler
OpenTelemetry izlemesini etkinleştirme
import { NodeTracerProvider } from "@opentelemetry/sdk-trace-node";
import { SimpleSpanProcessor, ConsoleSpanExporter } from "@opentelemetry/tracing";
import { registerInstrumentations } from "@opentelemetry/instrumentation";
import { createAzureSdkInstrumentation } from "@azure/opentelemetry-instrumentation-azure-sdk";
import { KeyClient } from "@azure/keyvault-keys";
import { DefaultAzureCredential } from "@azure/identity";
import { trace, context } from "@opentelemetry/api";
// Set-up and configure a Node Tracer Provider using OpenTelemetry SDK.
const provider = new NodeTracerProvider();
provider.addSpanProcessor(new SimpleSpanProcessor(new ConsoleSpanExporter()));
provider.register();
registerInstrumentations({
instrumentations: [createAzureSdkInstrumentation()],
});
// Continue to import any Azure SDK client libraries after registering the instrumentation.
// import { KeyClient } from "@azure/keyvault-keys";
// import { DefaultAzureCredential } from "@azure/identity";
const keyClient = new KeyClient("https://my.keyvault.azure.net", new DefaultAzureCredential());
// Tracing is now enabled using automatic span propagation with an active context.
await keyClient.getKey("MyKeyName");
// If your scenario requires manual span propagation, all Azure client libraries
// support explicitly passing a parent context via an `options` parameter.
// Get a tracer from a registered provider, create a span, and get the current context.
const tracer = trace.getTracer("my-tracer");
const span = tracer.startSpan("main");
const ctx = trace.setSpan(context.active(), span);
await keyClient.getKey("MyKeyName", {
tracingOptions: {
// ctx will be used as the parent context for all operations.
tracingContext: ctx,
},
});
Sorun giderme
Günlük tutmak
Günlüğe kaydetmeyi etkinleştirmek, hatalarla ilgili yararlı bilgilerin ortaya çıkmasına yardımcı olabilir. HTTP isteklerinin ve yanıtlarının günlüğünü görmek için AZURE_LOG_LEVEL ortam değişkenini infoolarak ayarlayın. Alternatif olarak, setLogLevel@azure/logger çağrılarak günlükler çalışma zamanında etkinleştirilebilir:
import { setLogLevel } from "@azure/logger";
setLogLevel("info");
Günlükleri etkinleştirme hakkında daha ayrıntılı yönergeler için
ES Modülleri için İzleme
Bu paket, gerekli kancaları ve yükleyicileri ayarlamak için @opentelemetry/izleme kullanır. ESM paketleri için izlemeyi yapılandırma yönergeleri için lütfen @opentelemetry/izleme aracının README bakın.
Katkıda
Bu kitaplığa katkıda bulunmak istiyorsanız kodu oluşturma ve test etme hakkında daha fazla bilgi edinmek için lütfen katkıda bulunma kılavuzu okuyun.
İlgili projeler
- Javascript için Microsoft Azure SDK'sını
Azure SDK for JavaScript