Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Van toepassing op: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel-
De time pivot-visualisatie is een interactieve navigatie over de gebeurtenissen die op de tijdsas draaien.
Notitie
- Deze visualisatie kan alleen worden gebruikt in de context van de renderoperator.
- Deze visualisatie kan worden gebruikt in Kusto.Explorer, maar is niet beschikbaar in de webgebruikersinterface van Azure Data Explorer.
Syntaxis
T|rendertimepivot [with(eigenschapNaam=eigenschapWaarde [, ...])]
Meer informatie over syntaxisconventies.
Parameterwaarden
| Naam | Typologie | Vereist | Beschrijving |
|---|---|---|---|
| T- | string |
✔️ | Naam van invoertabel. |
| propertyName, propertyValue | string |
Een door komma's gescheiden lijst met sleutel-waarde-eigenschapsparen. Zie ondersteunde eigenschappen. |
Ondersteunde eigenschappen
Alle eigenschappen zijn optioneel.
| PropertyName- | PropertyValue- |
|---|---|
series |
Door komma's gescheiden lijst met kolommen waarvan de gecombineerde waarden per record de reeks bepalen waartoe de record behoort. |
Interactief display
Nadat u de tijddraai hebt gerenderd, kunt u de gegevens verder onderzoeken en bewerken door segmentniveaus toe te voegen en door in te zoomen op specifieke tijdsegmenten. De gegevens in de tabel worden interactief bijgewerkt op basis van de segmentopties die u configureert. De slice-opties die beschikbaar zijn, zijn:
- Meerdere segmentniveaus wijzigen, toevoegen en verwijderen
- Vouw rijen uit om de details van elk niveau te bekijken
- Schakel over naar weergave op begintijd of op eindtijd
- Selecteer specifieke rijen of specifieke tijdsegmenten en bekijk de bijbehorende gegevens in de tabel.
Notitie
- Tijddraaipunten hebben ingebouwde ondersteuning voor het OpenTelemetry-schema, een platformonafhankelijke, open standaard voor het verzamelen en verzenden van telemetriegegevens. Het gestandaardiseerde en gestructureerde formaat van OpenTelemetry-gegevens maakt het mogelijk om gegevens efficiënt te draaien en te analyseren. Bij interactie met het eerste niveau van de segmentopties worden de OpenTelemtry-reeksen en hun geneste hiërarchie weergegeven in de lijst.
Voorbeelden
In de voorbeelden in deze sectie ziet u hoe u de syntaxis kunt gebruiken om aan de slag te gaan.
Visualiseer overstromingsgebeurtenissen per staat
Deze query voert een visualisatie uit van overstromingsgebeurtenissen in de opgegeven Midwestern-toestanden, die worden weergegeven als een tijddraaigrafiek.
let midwesternStates = dynamic([
"ILLINOIS", "INDIANA", "IOWA", "KANSAS", "MICHIGAN", "MINNESOTA",
"MISSOURI", "NEBRASKA", "NORTH DAKOTA", "OHIO", "SOUTH DAKOTA", "WISCONSIN"
]);
StormEvents
| where EventType == "Flood" and State in (midwesternStates)
| render timepivot with (series=State)
uitvoer
U kunt verder communiceren met de tijdspil, bijvoorbeeld:
Selecteer een nieuwe segmentoptie om de gegevens te wijzigen die in de tijdsdraai worden weergegeven. De gegevens in de tabel onder de tijddraai worden bijgewerkt om de nieuwe reeks weer te geven.
Voeg segmentoptieniveaus toe om de gegevens verder te onderzoeken en te gebruiken. Vouw elke rij uit om de toegevoegde niveaus te zien.
Als u de gegevens wilt weergeven die relevant zijn voor een specifieke segment, selecteert u een of meer tijdsegmenten in een rij van de tijddraai.
Hiërarchische OpenTelemetrie-gegevens weergeven en segmenteren
De opties voor OpenTelemetry-gegevenssegmenten weerspiegelen de geneste hiërarchie.
In dit voorbeeld wordt een tijddraai weergegeven op basis van een specifieke TraceID in de gegevenstabel. De query die in dit voorbeeld wordt weergegeven, bevat de eerste twee rijen met gegevens uit een grote tabel.
datatable(TraceID:string, SpanID:string, ParentID:string, SpanName:string, SpanStatus:string, SpanKind:string, StartTime:datetime, EndTime:datetime, ResourceAttributes:dynamic, TraceAttributes:dynamic, Events:dynamic, Links:dynamic)
[
"c339bbae48eb8426f9a63c4eee55284c", "d1265cecd4c291ee", "", "POST", "STATUS_CODE_UNSET", "SPAN_KIND_CLIENT", datetime(2025-04-07T04:15:52.1657810Z), datetime(2025-04-07T04:16:01.6616919Z), dynamic({"k8s.namespace.name":"otel-demo","k8s.pod.start_time":"2025-04-06T00:19:47.0000000Z","k8s.deployment.name":"opentelemetry-demo-loadgenerator","k8s.node.name":"aks-userpool-31567306-vmss000003","service.name":"loadgenerator","service.version":"1.12.0","k8s.pod.uid":"d2fbaf5d-b5c2-4dac-af08-b92d56573899","k8s.pod.name":"opentelemetry-demo-loadgenerator-6994f5db8-lq4qs","service.instance.id":"d2fbaf5d-b5c2-4dac-af08-b92d56573899","service.namespace":"opentelemetry-demo","k8s.pod.ip":"10.244.0.57","telemetry.sdk.language":"python","telemetry.sdk.version":"1.25.0","telemetry.sdk.name":"opentelemetry"}), dynamic({"http.status_code":200,"http.url":"http://opentelemetry-demo-frontendproxy:8080/api/checkout","http.method":"POST","scope.name":"opentelemetry.instrumentation.requests","scope.version":"0.46b0"}), dynamic([]), dynamic([]),
"c339bbae48eb8426f9a63c4eee55284c", "651aa53d2f583eca", "d488b4a32f60794f", "POST /api/checkout", "STATUS_CODE_UNSET", "SPAN_KIND_SERVER", datetime(2025-04-07T04:15:52.1680000Z), datetime(2025-04-07T04:16:01.4667420Z), dynamic({"k8s.namespace.name":"otel-demo","k8s.pod.start_time":"2025-04-06T00:19:47.0000000Z","k8s.deployment.name":"opentelemetry-demo-frontend","k8s.node.name":"aks-userpool-31567306-vmss000003","service.name":"frontend","service.version":"1.12.0","k8s.pod.uid":"b61b8875-b9ec-4144-b866-df88b8c6c67c","k8s.pod.name":"opentelemetry-demo-frontend-59bccd8fdb-j9xxf","service.instance.id":"b61b8875-b9ec-4144-b866-df88b8c6c67c","service.namespace":"opentelemetry-demo","k8s.pod.ip":"10.244.0.45","process.command_args":["/usr/local/bin/node","--require","./Instrumentation.js","/app/server.js"],"os.type":"linux","telemetry.sdk.language":"nodejs","telemetry.sdk.version":"1.25.1","process.pid":16,"telemetry.sdk.name":"opentelemetry","process.runtime.name":"nodejs","process.runtime.description":"Node.js","process.runtime.version":"20.18.0","host.name":"opentelemetry-demo-frontend-59bccd8fdb-j9xxf","host.arch":"amd64","process.executable.path":"/usr/local/bin/node","container.id":"d1763eedd13fa94f9581d9099ab481e112a8fdf95b6da831b9f01a4b8490fe60","os.version":"5.15.176.3-3.cm2","process.owner":"nextjs","process.command":"/app/server.js","process.executable.name":"node"}), dynamic({"http.status_code":200,"http.method":"POST","scope.name":"next.js","scope.version":"0.0.1","http.target":"/api/checkout","next.span_type":"BaseServer.handleRequest","next.span_name":"POST /api/checkout","next.rsc":false}), dynamic([]), dynamic([]),
...
]
| where TraceID == '081a007d3b7deaf32ca43a554c5058bd'
| render timepivot
uitvoer
In de tijdsdraai worden de Slice-opties automatisch ingesteld op SpanKind als de kolom om op te draaien.
U kunt de hiërarchie van de afzonderlijke spans in dezelfde OpenTelemetry-tracering weergeven door de segmentopties te wijzigen in (SpanID). De hiërarchie kan worden uitgevouwen om de overspanningen weer te geven die samen het hele spoor vormen. Voor elke span kunt u de span type, de span naam en de span ID zien als de span header.
De kop in de eerste regel is [SPAN_KIND_CLIENT/POST]: 3275d2b91035ce2e en is uitgevouwen om de hiërarchie weer te geven.