Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A Data API Builder (DAB) támogatja az OpenTelemetryt az elosztott nyomkövetéshez és metrikákhoz, lehetővé téve a viselkedés monitorozását és diagnosztizálását a REST, a GraphQL, az adatbázis-műveletek és a belső köztes szoftverek között.
Előfeltételek
- Meglévő DAB-konfigurációs fájl.
- OpenTelemetry-gyűjtő vagy háttérrendszer futtatása (például Azure Monitor vagy Jaeger).
- Adat API-építő CLI. A parancssori felület telepítése
Eszköz futtatása
A dab add-telemetry használatával adhatja hozzá az OpenTelemetry beállításokat a konfigurációhoz.
Győződjön meg arról, hogy rendelkezik konfigurációs fájllal. Ha létre kell hoznia egyet, futtassa a következőt:
dab init \ --database-type mssql \ --connection-string "<sql-connection-string>"Adja hozzá az OpenTelemetry-beállításokat a konfigurációs fájlhoz.
dab add-telemetry \ -c dab-config.json \ --otel-enabled true \ --otel-endpoint "http://localhost:4317" \ --otel-protocol "grpc" \ --otel-service-name "dab"Indítsa el a DAB-t.
dab start
Tesztelés a telemetriai háttérrendszerben
Nyissa meg az OpenTelemetry-háttérrendszert vagy a gyűjtő felhasználói felületét.
Győződjön meg arról, hogy a nyomkövetések és a metrikák érkeznek REST-, GraphQL- vagy adatbázis-hívásokhoz.
Megjegyzés:
A .NET Aspire irányítópult ideális része a fejlesztői ciklusnak. Beépített nézeteket tartalmaz az OpenTelemetry-nyomkövetésekhez és -metrikákhoz.
Data API Builder-nyomkövetések
A DAB az OpenTelemetria "tevékenységeit" hozza létre a következőhöz:
- Bejövő HTTP-kérések (REST-végpontok)
- GraphQL-műveletek
- Adatbázis-lekérdezések (entitásonként)
- Belső köztes szoftver lépései (például kéréskezelés, hibakövetés)
- MCP-eszközök végrehajtása (minden adatmanipulációs nyelv (DML) eszközhívás és egyéni eszközhívás)
Megjegyzés:
Az ebben a szakaszban ismertetett Data API builder funkció a 2.0-s és újabb verziókban érhető el. További információ: A 2.0-s verzió újdonságai.
Minden tevékenység részletes címkéket (metaadatokat) tartalmaz, például:
-
http.method,http.url,http.querystringstatus.code -
action.type(CRUD, GraphQL művelet) -
user.role,user-agent -
data-source.type,data-source.name -
api.type(REST vagy GraphQL)
A hibák és kivételek részletes információval is nyomon követhetők.
Data API Builder-metrikák
A DAB OpenTelemetry-metrikákat bocsát ki, például:
- Összes kérelem: Számláló, HTTP-metódus, állapot, végpont és API-típus szerint címkézve.
- Hibák: Számláló, hibatípus, HTTP-metódus, állapot, végpont és API-típus szerint címkézve.
- Kérelem időtartama: Hisztogram (ezredmásodpercben), HTTP-metódus, állapot, végpont és API-típus szerint címkézve.
- Aktív kérések: Egyidejű kérések fel/le számlálója.
A metrikák a .NET Meter API-t és az OpenTelemetry SDK-t használják.
Configuration
Adjon hozzá egy szakasztopen-telemetry a runtime.telemetry alá a konfigurációs fájlban.
{
"runtime": {
"telemetry": {
"open-telemetry": {
"enabled": true,
"endpoint": "http://otel-collector:4317",
"service-name": "dab",
"exporter-protocol": "grpc"
}
}
}
}
Command-line
OpenTelemetry konfigurálása a dab add-telemetry használatával.
--otel-enabled--otel-endpoint--otel-protocol--otel-service-name--otel-headers
Example
dab add-telemetry \
-c dab-config.json \
--otel-enabled true \
--otel-endpoint "http://localhost:4317" \
--otel-protocol "grpc" \
--otel-service-name "dab"
Eredményként kapott konfiguráció
Megjegyzés:
Az OpenTelemetry beállításai nem érhetők el a következőn dab configure: .
{
"runtime": {
"telemetry": {
"open-telemetry": {
"enabled": true,
"endpoint": "http://localhost:4317",
"service-name": "dab",
"exporter-protocol": "grpc"
}
}
}
}
Exportálás és vizualizáció
A telemetriát a .NET OpenTelemetry SDK-val exportálja a konfigurált háttérrendszerbe, például az Azure Monitorba vagy a Jaegerbe. Győződjön meg arról, hogy a háttérrendszer fut és elérhető a megadott endpointhelyen. A vizualizációhoz bármilyen OpenTelemetry-kompatibilis háttérrendszer használható.
Az OpenTelemetria SDK szabályozza az exportálás időzítését. Nyomkövetési adatokat exportál, amikor a tevékenységek befejeződnek. Metrikákat exportál az SDK által konfigurált rendszeres időközönként. Ha nem állít be időközt, az SDK az alapértelmezett értéket használja.
Megjegyzés:
A rövid élettartamú konténerek, amelyek gyorsan leállnak, kiléphetnek az export befejezése előtt. Engedélyezze a kecses leállítási időszakot, és kerülje az agresszív leállítást, hogy a függőben lévő telemetriai adatok kiüríthetők legyenek.
Végrehajtási megjegyzések
- A nyomkövetések és a metrikák az összes REST-, GraphQL-, MCP- és adatbázis-műveletet lefedik
- A köztes szoftver és a hibakezelők telemetriát is bocsátanak ki
- A környezet propagálása kérésekkel történik