Microsoft Dataverse-n telemetria-gertaerak
Datu korronteak gaur egun erlazionatutako errendimendu datuak eskaintzen ditu Dataverse API sarrerako deiak, Dataverse plugin exekuzio deiak, eta Dataverse SDK deiak. Plugin eta hutsegiteen datuak ere eskaintzen ditu Dataverse SDK eragiketak.
Dataverse APIaren sarrerako deiak
Honi deitutako deiak dira Dataverse APIa. Interfaze bateratu (UCI), webgune zaharreko bezeroa, SDK erabiltzen duten bezero pertsonalizatuak eta abarrekoak izan daitezke. Hemen aurki ditzakezu eskaerak taula Application Insights, honako eremu hauek dituena.
Izena: eskaera mota. Hauek bi kategoriatan banatzen dira:
- Web API eskaera: Interfaze bateratu-ek eta bezero modernoek normalean erabiltzen duten OData v4 amaierako punturako eskaera. Eskaera bietan ohikoa den eragiketa bihurtzen da. Web APIa RESTful programazio eredua gaitzeko "biltzailea" da, baina datuak jaso ondoren, zerbitzariaren barruan dena berdin bihurtzen da. Erantzuna itzultzerakoan, JSON bihurtzen da eskaera Web APItik badator.
- Organization Service Request: SDK bezeroek edo web-bezero zaharrak erabiltzen duten Organization API amaierako puntuari egindako eskaera.
Iraupena: zerbitzariak eskaerari erantzuteko behar izan duen denbora.
Url: deia egin den URLa.
Neurri pertsonalizatuak:
UserAgent: Application Insights erabiltzaile-agentearen eremua automatikoki betetzen du PC rekin erregistro hauek datu-zentro bateko zerbitzari batetik bidaltzen ari diren heinean. . Application Insights ez du onartzen erabiltzaile agentearen eremua gainidaztea. Batzuetan, erabiltzailearen agentearen eremua ez dago erabilgarri. Deia egin duen erabiltzaile agentea kontsulta hau erabilita ikus daiteke:
requests | summarize count() by tostring(customDimensions.userAgent)
Operation_Name: bistatan bistaratzeko eragiketaren izen irakurgarria, esate baterako, amaierako transakzio-ikuspegian.
Dataverse pluginen exekuzio-egunkariak
Eragiketa jakin baterako exekutatzen diren plugin pertsonalizatuen erregistro hauek mendekotasuna mahaia. Honako hau laginaren kontsulta da:
dependencies
| where type == "Plugin"
| take 100
- Izena/Helburua: exekutatzen ari den plug-inaren mota-izena guztiz kualifikatua.
- Iraupena: plug-in-a exekutatzeko behar izan den denbora.
- Neurri pertsonalizatuak:
- Sakonera: deien pilako exekuzioaren egungo sakonera .
- EntityName: plug-inaren gainean jarduten ari den entitatearen izena.
- IsolationType: A balioa plugin-a sandbox-ean exekutatzen ari den ala ez adierazten duena:
- 1: bat ere ez
- 2: sandbox-a
- 3: kanpokoa
- PluginName: Pluginaren izen atsegina.
- PluginType: exekutatzen ari den plug-in motaren izena.
- PluginVersion: argitaratutako plug-inaren bertsioa. Hemen asmoa da informazio hau bertsioen eguneratzeak konpontzen erabiltzeko gai izatea.
- Etapa: balio hauekin mapatzen da:
- Aurre-balidazioa = 10
- PreOperation = 20
- PreOperationBeforeExternalPlugins = 15
- PreOperationAfterExternalPlugins = 25
- MainOperation = 30
- PostOperationBeforeExternalPlugins = 35
- PostOperationAfterExternalPlugins = 45
- PostOperation = 40
- PostOperationDeprecated = 50
- StepName: SDK mezuak prozesatzeko urrats izena. Hau normalean sortzen du pluginak Erregistroa tresnak informazioa erabiliz buruz PluginName, PluginType, eta eragiketaren izena—adibidez ErrorMessageTest.ThrowException: kontuaren sorrera.
Telemetria zure plug-kodearen barruan
Zer gertatzen ari den plug-in-kodean , zure plug-inaren telemetria pertsonalizatua sar dezakezu Microsoft.Xrm erabiliz. Sdk.PluginTelemetry.ILogger Interface plugin kodean telemetria datuak zuzenean zure Application Insights baliabidean idazteko. Informazio gehiago: Idatzi Telemetria zure Application Insights baliabidea ILogger erabiliz (aurrebista)
Dataverse SDK egunkariak
Sarrera eskaera baten zati gisa abiarazitako SDK eragiketen erregistroak dira. Hauek mendekotasuna mahaia Application Insights, exekutatzeko eskaeraren mendekotasun gisa jarraitzen direlako. Hasierako motaren izenarekin identifikatzen dira SDK. Honako hau laginaren kontsulta da:
dependencies
| where type startswith "SDK"
| take 10
- Mota: abiarazitako SDK eskaera mota. Adibidez, berreskuratu, RetrieveMultiple, FetchXmlToQueryExpression eta WhoAmI daude.
- Izena/Helburua: SDK eragiketaren xede den entitatearen izena da.
- CustomDimensions:
- ClientType: deia datorren bezero mota. Balio posible batzuk Web, UCIClient eta OutlookFull dira.
- EntityId: erabiltzen ari den entitatearen identifikatzaile bakarra.
- EntityName: erabiltzen ari den entitatearen izena.
Salbuespenak
Plugin eta SDK eragiketen hutsegiteen xehetasunak ikusiko dituzu Application Insights. Salbuespenak mahaia Application Insights ahalmenak Hutsegiteak panela. Hutsegiteen xehetasun horiek plug-ineko gainerako gertaerekin eta SDK deiekin amaierako ikuspegitik lotzen dira. Eskuragarri dagoen informazio guztia zutabeetara gehitzen da ahal denean eta customDimensions zutabeen bat-etortze zehatzik ez dagoenean.
Ikusiko duzu eremuko zenbait salbuespenak taula ez da betetzen. Hau da eremu hauek ezar daitezkeelako Application Insights SDK iturritik erregistroak igortzeko erabiltzen da. Ezaugarri honek plataformaren telemetria biltzen du eta gero sartu egiten du Application Insights arauaren arabera Application Insights eskema.
exceptions
| take 10
Kontsulta honek atributuko xehetasun guztiak itzuliko ditu salbuespena mahaia.
- problemId/type: salbuespen mota.
- outerMessage: salbuespen-mezua.
- neurri pertsonalizatuak:
- clientType: deia datorren bezero mota. Balio posible batzuk Web, UCIClient eta OutlookFull dira.
- exceptionSource: salbuespena bota den plugina edo puntua.
- entityName: erabiltzen ari den entitatearen izena.
- pluginName: salbuespena bota den pluginaren izena.
Erabiltzaile batek erroreren bat ematen badu, erabiltzailearen IDa (Microsoft Entra ID ID) erabil dezakezu salbuespen taularen xehetasunak ulertzeko.
exceptions
| where user_Id == '12345678-68cd-4e73-908f-126342b36315'
Entitatearen IDa eta entitatearen izena hemen daude eskuragarri customDimensions urtean mendekotasuna mahaia.
dependencies
| where type == "SDK Retrieve"
Maiz egiten diren galderak (FAQ)
Jarraian telemetriako gertaerekin lotutako ohiko galderak agertzen dira Dataverse.
Nola zehaztu dezaket nire plug-in bertsio berritzeak errendimendua hondatu duen ala ez?
dependencies
| where ['type'] == "Plugin"
| where name startswith "[InsertYourPluginName]"
| summarize avg(duration) by name
Pluginaren izenak plugin pertsonalizatuen bertsioa ere izan behar du.
Nola funtzionatzen zuen APIak salatutako arazo baten aurretik, eguneko orduaren edo kokapenaren arabera? APIen degradazioa graduala edo bat-batekoa izan al da?
requests
| where url == "https://<URLHere>"
| summarize avg(duration), count() by bin(timestamp, 1h)
| render timechart
Taula honetan, APIaren amaierako puntuaren errendimendua ikus dezakegu denbora tarte batean egiten ari den eskaera kopuruaren arabera.
Ere egin dezakezu alerta ezarri hemen API jakin baten errendimenduan oinarrituta Application Insights.
Ba al dezaket akatsak edo hutsegiteak une zehatz batzuetan edo erabiltzaile zehatz batzuei dei pila ulertzeko aukera ematen?
Begira Hutsegiteak panelak denbora tarte jakin bateko hutsegiteen ikuspegi orokorra eskaintzen du. API deian edo mendekotasun motan oinarritutako hutsegite zehatz batera murriztu dezakezu amaierako ikuspegia ikusteko.
Panel pertsonalizatuak sor ditzaket?
Bai. Eraiki dezakezu panel pertsonalizatuak Application Insights-rekin.
Pluginaren erabileraren errendimendua (erantzun denbora) eta porrot tasak zehaztu al ditzaket erabilera altuenean?
Bai. Ikusi hurrengo laginaren kontsulta zure pluginek nola funtzionatzen duten ulertzeko.
dependencies
| where ['type'] == "Plugin"
| where name == "[Plugin name here]"
| summarize avg(duration) by bin(timestamp, 1h)
| render timechart
Telemetria honek mugimendua izango al du?
Bai. Une honetan oinarrizko 429 erroreen xehetasunak ematen dira.
Ulertzen al ditut exekuzio bideak? Pluginak egiten dituen deiak plugina moteltzen al dute?
Bai. Edozein eskaerarako exekutatzen diren mezu eta plugin guztiak ikus ditzakezu.
Mezu guztien eta pluginen exekuzioaren iraupena erregistratzen da. Plugin batek denbora gehiago behar badu, plug-in hori identifikatu dezakezu. Pluginak atzera deia egiten badu Dataverse, dei horren iraupena erregistratuta dago. Gehigarriei buruzko informazio gehiago aurreikusten da etorkizunean inplementatzeko.
Pluginak egindako irteerako deiak automatikoki erregistratuko dira mendekotasun gisa.
Eskaera zehatz baterako telemetria ikus dezaket?
Dataverse eskaera guztien goiburuko erantzunean x-ms-service-requestId itzultzen du. RequestId hau erabiliz, telemetria guztia kontsulta dezakezu.
union *
| where operation_ParentId contains <requestId>