ocaml-trace/media/architecture.svg

133 lines
56 KiB
XML

<?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" data-d2-version="v0.7.1-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 4127 1588"><svg class="d2-2950348739 d2-svg" width="4127" height="1588" viewBox="-65 -208 4127 1588"><rect x="-65.000000" y="-208.000000" width="4127.000000" height="1588.000000" rx="0.000000" fill="#FFFFFF" class=" fill-N7" stroke-width="0" /><style type="text/css"><![CDATA[
.d2-2950348739 .text {
font-family: "d2-2950348739-font-regular";
}
@font-face {
font-family: d2-2950348739-font-regular;
src: url("data:application/font-woff;base64,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");
}
.d2-2950348739 .text-bold {
font-family: "d2-2950348739-font-bold";
}
@font-face {
font-family: d2-2950348739-font-bold;
src: url("data:application/font-woff;base64,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");
}
.d2-2950348739 .text-italic {
font-family: "d2-2950348739-font-italic";
}
@font-face {
font-family: d2-2950348739-font-italic;
src: url("data:application/font-woff;base64,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");
}]]></style><style type="text/css"><![CDATA[.shape {
shape-rendering: geometricPrecision;
stroke-linejoin: round;
}
.connection {
stroke-linecap: round;
stroke-linejoin: round;
}
.blend {
mix-blend-mode: multiply;
opacity: 0.5;
}
.d2-2950348739 .fill-N1{fill:#0A0F25;}
.d2-2950348739 .fill-N2{fill:#676C7E;}
.d2-2950348739 .fill-N3{fill:#9499AB;}
.d2-2950348739 .fill-N4{fill:#CFD2DD;}
.d2-2950348739 .fill-N5{fill:#DEE1EB;}
.d2-2950348739 .fill-N6{fill:#EEF1F8;}
.d2-2950348739 .fill-N7{fill:#FFFFFF;}
.d2-2950348739 .fill-B1{fill:#0D32B2;}
.d2-2950348739 .fill-B2{fill:#0D32B2;}
.d2-2950348739 .fill-B3{fill:#E3E9FD;}
.d2-2950348739 .fill-B4{fill:#E3E9FD;}
.d2-2950348739 .fill-B5{fill:#EDF0FD;}
.d2-2950348739 .fill-B6{fill:#F7F8FE;}
.d2-2950348739 .fill-AA2{fill:#4A6FF3;}
.d2-2950348739 .fill-AA4{fill:#EDF0FD;}
.d2-2950348739 .fill-AA5{fill:#F7F8FE;}
.d2-2950348739 .fill-AB4{fill:#EDF0FD;}
.d2-2950348739 .fill-AB5{fill:#F7F8FE;}
.d2-2950348739 .stroke-N1{stroke:#0A0F25;}
.d2-2950348739 .stroke-N2{stroke:#676C7E;}
.d2-2950348739 .stroke-N3{stroke:#9499AB;}
.d2-2950348739 .stroke-N4{stroke:#CFD2DD;}
.d2-2950348739 .stroke-N5{stroke:#DEE1EB;}
.d2-2950348739 .stroke-N6{stroke:#EEF1F8;}
.d2-2950348739 .stroke-N7{stroke:#FFFFFF;}
.d2-2950348739 .stroke-B1{stroke:#0D32B2;}
.d2-2950348739 .stroke-B2{stroke:#0D32B2;}
.d2-2950348739 .stroke-B3{stroke:#E3E9FD;}
.d2-2950348739 .stroke-B4{stroke:#E3E9FD;}
.d2-2950348739 .stroke-B5{stroke:#EDF0FD;}
.d2-2950348739 .stroke-B6{stroke:#F7F8FE;}
.d2-2950348739 .stroke-AA2{stroke:#4A6FF3;}
.d2-2950348739 .stroke-AA4{stroke:#EDF0FD;}
.d2-2950348739 .stroke-AA5{stroke:#F7F8FE;}
.d2-2950348739 .stroke-AB4{stroke:#EDF0FD;}
.d2-2950348739 .stroke-AB5{stroke:#F7F8FE;}
.d2-2950348739 .background-color-N1{background-color:#0A0F25;}
.d2-2950348739 .background-color-N2{background-color:#676C7E;}
.d2-2950348739 .background-color-N3{background-color:#9499AB;}
.d2-2950348739 .background-color-N4{background-color:#CFD2DD;}
.d2-2950348739 .background-color-N5{background-color:#DEE1EB;}
.d2-2950348739 .background-color-N6{background-color:#EEF1F8;}
.d2-2950348739 .background-color-N7{background-color:#FFFFFF;}
.d2-2950348739 .background-color-B1{background-color:#0D32B2;}
.d2-2950348739 .background-color-B2{background-color:#0D32B2;}
.d2-2950348739 .background-color-B3{background-color:#E3E9FD;}
.d2-2950348739 .background-color-B4{background-color:#E3E9FD;}
.d2-2950348739 .background-color-B5{background-color:#EDF0FD;}
.d2-2950348739 .background-color-B6{background-color:#F7F8FE;}
.d2-2950348739 .background-color-AA2{background-color:#4A6FF3;}
.d2-2950348739 .background-color-AA4{background-color:#EDF0FD;}
.d2-2950348739 .background-color-AA5{background-color:#F7F8FE;}
.d2-2950348739 .background-color-AB4{background-color:#EDF0FD;}
.d2-2950348739 .background-color-AB5{background-color:#F7F8FE;}
.d2-2950348739 .color-N1{color:#0A0F25;}
.d2-2950348739 .color-N2{color:#676C7E;}
.d2-2950348739 .color-N3{color:#9499AB;}
.d2-2950348739 .color-N4{color:#CFD2DD;}
.d2-2950348739 .color-N5{color:#DEE1EB;}
.d2-2950348739 .color-N6{color:#EEF1F8;}
.d2-2950348739 .color-N7{color:#FFFFFF;}
.d2-2950348739 .color-B1{color:#0D32B2;}
.d2-2950348739 .color-B2{color:#0D32B2;}
.d2-2950348739 .color-B3{color:#E3E9FD;}
.d2-2950348739 .color-B4{color:#E3E9FD;}
.d2-2950348739 .color-B5{color:#EDF0FD;}
.d2-2950348739 .color-B6{color:#F7F8FE;}
.d2-2950348739 .color-AA2{color:#4A6FF3;}
.d2-2950348739 .color-AA4{color:#EDF0FD;}
.d2-2950348739 .color-AA5{color:#F7F8FE;}
.d2-2950348739 .color-AB4{color:#EDF0FD;}
.d2-2950348739 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-2950348739);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-2950348739);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-2950348739);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-2950348739);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-2950348739);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-2950348739);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-2950348739);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-2950348739);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-2950348739);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-2950348739);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-2950348739);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-2950348739);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-2950348739);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-2950348739);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-2950348739);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-2950348739);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-2950348739);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-2950348739);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><g class="dXNlcg=="><g class="shape" ><rect x="36.000000" y="651.000000" width="204.000000" height="63.000000" stroke="#aaaaaa" fill="#f8f8f8" style="stroke-width:2;" /></g><text x="138.000000" y="687.500000" fill="#0A0F25" class="text-bold fill-N1" style="text-anchor:middle;font-size:14px">Library / Application Code</text></g><g class="dHJhY2VfcGtn"><g class="shape" ><rect x="330.000000" y="938.000000" width="2951.000000" height="341.000000" stroke="#3b82f6" fill="#dbeafe" style="stroke-width:2;" /></g><text x="1805.500000" y="925.000000" fill="#0A0F25" class="text fill-N1" style="text-anchor:middle;font-size:28px">ocaml-trace</text></g><g class="YmFja2VuZHM="><g class="shape" ><rect x="294.000000" y="260.000000" width="1174.000000" height="517.000000" stroke="#ca8a04" fill="#fef9c3" style="stroke-width:2;" /></g><text x="881.000000" y="247.000000" fill="#0A0F25" class="text fill-N1" style="text-anchor:middle;font-size:28px">Local Backends</text></g><g class="YW1iaWVudA=="><g class="shape" ><rect x="1508.000000" y="268.000000" width="825.000000" height="501.000000" stroke="#16a34a" fill="#dcfce7" style="stroke-width:2;" /></g><text x="1920.500000" y="255.000000" fill="#0A0F25" class="text fill-N1" style="text-anchor:middle;font-size:28px">ambient-context</text></g><g class="b3RlbA=="><g class="shape" ><rect x="2529.000000" y="-67.000000" width="1162.000000" height="517.000000" stroke="#db2777" fill="#fce7f3" style="stroke-width:2;" /></g><text x="3110.000000" y="-80.000000" fill="#0A0F25" class="text fill-N1" style="text-anchor:middle;font-size:28px">ocaml-opentelemetry</text></g><g class="b3RscF9iYWNrZW5k"><g class="shape" ><path d="M 3741 288 C 3741 264 3840 264 3851 264 C 3862 264 3961 264 3961 288 V 406 C 3961 430 3862 430 3851 430 C 3840 430 3741 430 3741 406 V 288 Z" stroke="#6b7280" fill="#f3f4f6" style="stroke-width:2;" /><path d="M 3741 288 C 3741 312 3840 312 3851 312 C 3862 312 3961 312 3961 288" stroke="#6b7280" fill="#f3f4f6" style="stroke-width:2;" /></g><text x="3851.000000" y="340.500000" fill="#0A0F25" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px"><tspan x="3851.000000" dy="0.000000">OTLP Backends</tspan><tspan x="3851.000000" dy="17.250000">Jaeger • Grafana Tempo</tspan><tspan x="3851.000000" dy="17.250000">Datadog • Honeycomb</tspan><tspan x="3851.000000" dy="17.250000"></tspan></text></g><g class="cGVyZmV0dG8="><g class="shape" ><ellipse rx="107.500000" ry="39.500000" cx="172.500000" cy="1162.500000" stroke="#6b7280" fill="#f3f4f6" class="shape" style="stroke-width:2;" /></g><text x="172.500000" y="1160.000000" fill="#0A0F25" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px"><tspan x="172.500000" dy="0.000000">Perfetto UI</tspan><tspan x="172.500000" dy="18.500000">ui.perfetto.dev</tspan></text></g><g class="dHJhY2VfcGtnLmNvcmU="><g class="shape" ><rect x="758.000000" y="1075.000000" width="1187.000000" height="174.000000" stroke="#0D32B2" fill="#bfdbfe" class=" stroke-B1" style="stroke-width:2;" /></g><text x="1351.500000" y="967.000000" fill="#0A0F25" class="text fill-N1" style="text-anchor:middle;font-size:24px"><tspan x="1351.500000" dy="0.000000">trace.core</tspan><tspan x="1351.500000" dy="25.400000">─────────────────────</tspan><tspan x="1351.500000" dy="25.400000">Types: span, metric, user_data</tspan><tspan x="1351.500000" dy="25.400000">Level (Error → Trace)</tspan><tspan x="1351.500000" dy="25.400000">CoreExt (extensions)</tspan></text></g><g class="dHJhY2VfcGtnLnBweA=="><g class="shape" ><rect x="360.000000" y="1121.000000" width="164.000000" height="82.000000" stroke="#0D32B2" fill="#bfdbfe" class=" stroke-B1" style="stroke-width:2;" /></g><text x="442.000000" y="1159.500000" fill="#0A0F25" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px"><tspan x="442.000000" dy="0.000000">ppx_trace</tspan><tspan x="442.000000" dy="18.500000">let%trace syntax</tspan></text></g><g class="dHJhY2VfcGtnLmRlYnVn"><g class="shape" ><rect x="3083.000000" y="1113.000000" width="168.000000" height="98.000000" stroke="#0D32B2" fill="#bfdbfe" class=" stroke-B1" style="stroke-width:2;" /></g><text x="3167.000000" y="1151.500000" fill="#0A0F25" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px"><tspan x="3167.000000" dy="0.000000">trace.debug</tspan><tspan x="3167.000000" dy="17.666667">Track_spans</tspan><tspan x="3167.000000" dy="17.666667">(detect unclosed)</tspan></text></g><g class="YmFja2VuZHMudGVm"><g class="shape" ><rect x="324.000000" y="617.000000" width="221.000000" height="130.000000" stroke="#0D32B2" fill="#fef08a" class=" stroke-B1" style="stroke-width:2;" /></g><text x="434.500000" y="655.500000" fill="#0A0F25" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px"><tspan x="434.500000" dy="0.000000">trace-tef</tspan><tspan x="434.500000" dy="17.000000">────────────────</tspan><tspan x="434.500000" dy="17.000000">Chrome / TEF JSON</tspan><tspan x="434.500000" dy="17.000000">→ Perfetto UI</tspan><tspan x="434.500000" dy="17.000000">→ chrome://tracing</tspan></text></g><g class="YmFja2VuZHMuZnVjaHNpYQ=="><g class="shape" ><rect x="665.000000" y="617.000000" width="201.000000" height="130.000000" stroke="#0D32B2" fill="#fef08a" class=" stroke-B1" style="stroke-width:2;" /></g><text x="765.500000" y="655.500000" fill="#0A0F25" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px"><tspan x="765.500000" dy="0.000000">trace-fuchsia</tspan><tspan x="765.500000" dy="17.000000">────────────</tspan><tspan x="765.500000" dy="17.000000">Fuchsia binary format</tspan><tspan x="765.500000" dy="17.000000">high-throughput</tspan><tspan x="765.500000" dy="17.000000">→ Perfetto UI</tspan></text></g><g class="YmFja2VuZHMudGVmX3RsZHJz"><g class="shape" ><rect x="335.000000" y="290.000000" width="199.000000" height="114.000000" stroke="#0D32B2" fill="#fef08a" class=" stroke-B1" style="stroke-width:2;" /></g><text x="434.500000" y="328.500000" fill="#0A0F25" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px"><tspan x="434.500000" dy="0.000000">trace-tef.tldrs</tspan><tspan x="434.500000" dy="17.250000">──────────────</tspan><tspan x="434.500000" dy="17.250000">multi-process via</tspan><tspan x="434.500000" dy="17.250000">tldrs daemon</tspan></text></g><g class="YmFja2VuZHMucnVudGltZV9ldg=="><g class="shape" ><rect x="969.000000" y="625.000000" width="265.000000" height="114.000000" stroke="#0D32B2" fill="#fef08a" class=" stroke-B1" style="stroke-width:2;" /></g><text x="1101.500000" y="663.500000" fill="#0A0F25" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px"><tspan x="1101.500000" dy="0.000000">trace-runtime-events</tspan><tspan x="1101.500000" dy="17.250000">────────────────────</tspan><tspan x="1101.500000" dy="17.250000">OCaml Runtime_events</tspan><tspan x="1101.500000" dy="17.250000">(custom event types)</tspan></text></g><g class="YmFja2VuZHMudGxzX2FzcA=="><g class="shape" ><rect x="1294.000000" y="625.000000" width="144.000000" height="114.000000" stroke="#0D32B2" fill="#fef08a" class=" stroke-B1" style="stroke-width:2;" /></g><text x="1366.000000" y="663.500000" fill="#0A0F25" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px"><tspan x="1366.000000" dy="0.000000">trace.tls</tspan><tspan x="1366.000000" dy="17.250000">─────────</tspan><tspan x="1366.000000" dy="17.250000">Thread-local</tspan><tspan x="1366.000000" dy="17.250000">ambient span</tspan></text></g><g class="YW1iaWVudC5jb3Jl"><g class="shape" ><rect x="2056.000000" y="625.000000" width="243.000000" height="114.000000" stroke="#0D32B2" fill="#bbf7d0" class=" stroke-B1" style="stroke-width:2;" /></g><text x="2177.500000" y="663.500000" fill="#0A0F25" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px"><tspan x="2177.500000" dy="0.000000">ambient-context</tspan><tspan x="2177.500000" dy="17.250000">──────────────────</tspan><tspan x="2177.500000" dy="17.250000">Pluggable context storage</tspan><tspan x="2177.500000" dy="17.250000">(Hmap-based, type-safe)</tspan></text></g><g class="YW1iaWVudC50bHM="><g class="shape" ><rect x="1538.000000" y="306.000000" width="135.000000" height="82.000000" stroke="#0D32B2" fill="#bbf7d0" class=" stroke-B1" style="stroke-width:2;" /></g><text x="1605.500000" y="344.500000" fill="#0A0F25" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px"><tspan x="1605.500000" dy="0.000000">tls</tspan><tspan x="1605.500000" dy="18.500000">Thread-local</tspan></text></g><g class="YW1iaWVudC5sd3Q="><g class="shape" ><rect x="1733.000000" y="298.000000" width="166.000000" height="98.000000" stroke="#0D32B2" fill="#bbf7d0" class=" stroke-B1" style="stroke-width:2;" /></g><text x="1816.000000" y="336.500000" fill="#0A0F25" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px"><tspan x="1816.000000" dy="0.000000">lwt</tspan><tspan x="1816.000000" dy="17.666667">Lwt fiber-local</tspan><tspan x="1816.000000" dy="17.666667">(sequence-assoc)</tspan></text></g><g class="YW1iaWVudC5laW8="><g class="shape" ><rect x="1959.000000" y="306.000000" width="144.000000" height="82.000000" stroke="#0D32B2" fill="#bbf7d0" class=" stroke-B1" style="stroke-width:2;" /></g><text x="2031.000000" y="344.500000" fill="#0A0F25" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px"><tspan x="2031.000000" dy="0.000000">eio</tspan><tspan x="2031.000000" dy="18.500000">Eio fiber-local</tspan></text></g><g class="YW1iaWVudC5waWNvcw=="><g class="shape" ><rect x="2163.000000" y="306.000000" width="140.000000" height="82.000000" stroke="#0D32B2" fill="#bbf7d0" class=" stroke-B1" style="stroke-width:2;" /></g><text x="2233.000000" y="344.500000" fill="#0A0F25" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px"><tspan x="2233.000000" dy="0.000000">picos</tspan><tspan x="2233.000000" dy="18.500000">Effects-based</tspan></text></g><g class="b3RlbC5icmlkZ2U="><g class="shape" ><rect x="2559.000000" y="-37.000000" width="376.000000" height="114.000000" stroke="#0D32B2" fill="#fbcfe8" class=" stroke-B1" style="stroke-width:2;" /></g><text x="2747.000000" y="1.500000" fill="#0A0F25" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px"><tspan x="2747.000000" dy="0.000000">opentelemetry.trace</tspan><tspan x="2747.000000" dy="17.250000">──────────────────────────────</tspan><tspan x="2747.000000" dy="17.250000">converts trace spans → OTLP</tspan><tspan x="2747.000000" dy="17.250000">via Scope + ambient-context</tspan></text></g><g class="b3RlbC5jb3Jl"><g class="shape" ><rect x="3273.000000" y="274.000000" width="205.000000" height="146.000000" stroke="#0D32B2" fill="#fbcfe8" class=" stroke-B1" style="stroke-width:2;" /></g><text x="3375.500000" y="312.500000" fill="#0A0F25" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px"><tspan x="3375.500000" dy="0.000000">opentelemetry</tspan><tspan x="3375.500000" dy="16.833333">─────────────</tspan><tspan x="3375.500000" dy="16.833333">OTLP API</tspan><tspan x="3375.500000" dy="16.833333">Trace • Metrics • Logs</tspan><tspan x="3375.500000" dy="16.833333">Scope • Span context</tspan><tspan x="3375.500000" dy="16.833333">Protobuf wire format</tspan></text></g><g class="b3RlbC5vY3VybA=="><g class="shape" ><rect x="2995.000000" y="-21.000000" width="142.000000" height="82.000000" stroke="#0D32B2" fill="#fbcfe8" class=" stroke-B1" style="stroke-width:2;" /></g><text x="3066.000000" y="17.500000" fill="#0A0F25" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px"><tspan x="3066.000000" dy="0.000000">client-ocurl</tspan><tspan x="3066.000000" dy="18.500000">curl + threads</tspan></text></g><g class="b3RlbC5jb2h0dHBfbHd0"><g class="shape" ><rect x="3197.000000" y="-21.000000" width="166.000000" height="82.000000" stroke="#0D32B2" fill="#fbcfe8" class=" stroke-B1" style="stroke-width:2;" /></g><text x="3280.000000" y="17.500000" fill="#0A0F25" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px"><tspan x="3280.000000" dy="0.000000">client-cohttp-lwt</tspan><tspan x="3280.000000" dy="18.500000">Lwt async HTTP</tspan></text></g><g class="b3RlbC5jb2h0dHBfZWlv"><g class="shape" ><rect x="3423.000000" y="-21.000000" width="238.000000" height="82.000000" stroke="#0D32B2" fill="#fbcfe8" class=" stroke-B1" style="stroke-width:2;" /></g><text x="3542.000000" y="17.500000" fill="#0A0F25" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px"><tspan x="3542.000000" dy="0.000000">client-cohttp-eio</tspan><tspan x="3542.000000" dy="18.500000">Eio structured concurrency</tspan></text></g><g class="dHJhY2VfcGtnLmNvcmUuY29sbGVjdG9y"><g class="shape" ><rect x="957.000000" y="1105.000000" width="191.000000" height="114.000000" stroke="#0D32B2" fill="#93c5fd" class=" stroke-B1" style="stroke-width:2;" /></g><text x="1052.500000" y="1143.500000" fill="#0A0F25" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px"><tspan x="1052.500000" dy="0.000000">Collector</tspan><tspan x="1052.500000" dy="17.250000">enter/exit span</tspan><tspan x="1052.500000" dy="17.250000">message • metric</tspan><tspan x="1052.500000" dy="17.250000">enabled • shutdown</tspan></text></g><g class="dHJhY2VfcGtnLmNvcmUuYXNw"><g class="shape" ><rect x="1682.000000" y="1113.000000" width="234.000000" height="98.000000" stroke="#0D32B2" fill="#93c5fd" class=" stroke-B1" style="stroke-width:2;" /></g><text x="1799.000000" y="1151.500000" fill="#0A0F25" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px"><tspan x="1799.000000" dy="0.000000">AmbientSpanProvider</tspan><tspan x="1799.000000" dy="17.666667">get_current_span</tspan><tspan x="1799.000000" dy="17.666667">with_current_span_set_to</tspan></text></g><g class="YmFja2VuZHMuKHRlZl90bGRycyAtJmd0OyB0ZWYpWzBd"><marker id="mk-d2-2950348739-3488378134" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" fill="#0D32B2" class="connection fill-B1" stroke-width="2" /> </marker><path d="M 434.750000 406.000000 C 434.750000 464.799988 434.750000 562.299988 434.750000 613.500000" stroke="#0D32B2" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-d2-2950348739-3488378134)" mask="url(#d2-2950348739)" /><text x="435.000000" y="516.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">wraps</text></g><g class="YW1iaWVudC4odGxzIC0mZ3Q7IGNvcmUpWzBd"><path d="M 1605.000000 390.000000 C 1605.000000 461.600006 1695.199951 569.500000 2052.104190 652.592993" stroke="#0D32B2" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-d2-2950348739-3488378134)" mask="url(#d2-2950348739)" /><text x="1771.000000" y="593.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">implements</text></g><g class="YW1iaWVudC4obHd0IC0mZ3Q7IGNvcmUpWzBd"><path d="M 1815.500000 398.000000 C 1815.500000 463.200012 1863.699951 566.299988 2052.747692 636.114293" stroke="#0D32B2" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-d2-2950348739-3488378134)" mask="url(#d2-2950348739)" /><text x="1875.000000" y="576.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">implements</text></g><g class="YW1iaWVudC4oZWlvIC0mZ3Q7IGNvcmUpWzBd"><path d="M 2030.500000 390.000000 C 2030.500000 461.600006 2047.099976 563.900024 2110.567567 622.779552" stroke="#0D32B2" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-d2-2950348739-3488378134)" mask="url(#d2-2950348739)" /><text x="2040.000000" y="527.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">implements</text></g><g class="YW1iaWVudC4ocGljb3MgLSZndDsgY29yZSlbMF0="><path d="M 2232.500000 390.000000 C 2232.500000 461.600006 2226.100098 563.900024 2202.035060 621.806277" stroke="#0D32B2" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-d2-2950348739-3488378134)" mask="url(#d2-2950348739)" /><text x="2230.000000" y="515.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">implements</text></g><g class="b3RlbC4oYnJpZGdlIC0mZ3Q7IGNvcmUpWzBd"><path d="M 2811.989471 77.834719 C 2872.100098 131.699997 2964.699951 235.000000 3269.640253 317.950069" stroke="#0D32B2" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-d2-2950348739-3488378134)" mask="url(#d2-2950348739)" /><text x="3012.000000" y="245.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px"><tspan x="3012.000000" dy="0.000000">converts spans</tspan><tspan x="3012.000000" dy="18.500000">metrics • logs</tspan></text></g><g class="b3RlbC4ob2N1cmwgLSZndDsgY29yZSlbMF0="><path d="M 3085.851594 62.309637 C 3117.000000 128.500000 3154.600098 229.800003 3269.471249 291.116409" stroke="#0D32B2" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-d2-2950348739-3488378134)" mask="url(#d2-2950348739)" /><text x="3146.000000" y="212.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">OTLP/HTTP</text></g><g class="b3RlbC4oY29odHRwX2x3dCAtJmd0OyBjb3JlKVswXQ=="><path d="M 3308.100316 62.170121 C 3351.800049 128.500000 3364.199951 226.000000 3368.601981 270.019852" stroke="#0D32B2" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-d2-2950348739-3488378134)" mask="url(#d2-2950348739)" /><text x="3356.000000" y="166.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">OTLP/HTTP</text></g><g class="b3RlbC4oY29odHRwX2VpbyAtJmd0OyBjb3JlKVswXQ=="><path d="M 3559.242780 62.356954 C 3585.699951 128.500000 3569.500000 228.000000 3480.916794 281.920212" stroke="#0D32B2" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-d2-2950348739-3488378134)" mask="url(#d2-2950348739)" /><text x="3575.000000" y="201.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">OTLP/HTTP</text></g><g class="KHVzZXIgLSZndDsgdHJhY2VfcGtnLmNvcmUpWzBd"><path d="M 156.510711 716.231063 C 193.701004 780.500000 203.250000 809.099976 203.250000 827.250000 C 203.250000 845.400024 788.250000 949.400024 788.250000 1071.000000" stroke="#0D32B2" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-d2-2950348739-3488378134)" mask="url(#d2-2950348739)" /><text x="487.000000" y="901.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">instruments with</text></g><g class="KHVzZXIgLSZndDsgdHJhY2VfcGtnLnBweClbMF0="><path d="M 114.152028 716.128538 C 68.262001 780.500000 56.500000 809.099976 56.500000 827.250000 C 56.500000 845.400024 133.649994 869.599976 249.375000 887.750000 C 365.100006 905.900024 442.250000 1068.199951 442.250000 1117.000000" stroke="#0D32B2" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-d2-2950348739-3488378134)" mask="url(#d2-2950348739)" /><text x="251.500000" y="894.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">or uses (optional)</text></g><g class="KGJhY2tlbmRzLnRlZiAtJmd0OyB0cmFjZV9wa2cuY29yZS5jb2xsZWN0b3IpWzBd"><path d="M 483.189686 748.607684 C 511.600006 787.000000 519.000000 809.099976 519.000000 827.250000 C 519.000000 845.400024 590.150024 869.599976 696.875000 887.750000 C 803.599976 905.900024 891.349976 1065.000000 954.323676 1102.935950" stroke="#0D32B2" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-d2-2950348739-3488378134)" mask="url(#d2-2950348739)" /><text x="734.000000" y="900.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">implements</text></g><g class="KGJhY2tlbmRzLmZ1Y2hzaWEgLSZndDsgdHJhY2VfcGtnLmNvcmUuY29sbGVjdG9yKVswXQ=="><path d="M 846.046784 748.267856 C 893.299988 787.000000 905.500000 809.099976 905.500000 827.250000 C 905.500000 845.400024 905.500000 869.599976 905.500000 887.750000 C 905.500000 905.900024 919.099976 1065.000000 970.277395 1102.630439" stroke="#0D32B2" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-d2-2950348739-3488378134)" mask="url(#d2-2950348739)" /><text x="907.000000" y="932.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">implements</text></g><g class="KGJhY2tlbmRzLnJ1bnRpbWVfZXYgLSZndDsgdHJhY2VfcGtnLmNvcmUuY29sbGVjdG9yKVswXQ=="><path d="M 1101.000000 741.000000 C 1101.000000 785.400024 1101.000000 809.099976 1101.000000 827.250000 C 1101.000000 845.400024 1101.000000 869.599976 1101.000000 887.750000 C 1101.000000 905.900024 1096.400024 1065.000000 1079.671624 1101.366039" stroke="#0D32B2" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-d2-2950348739-3488378134)" mask="url(#d2-2950348739)" /><text x="1100.000000" y="930.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">implements</text></g><g class="KGJhY2tlbmRzLnRsc19hc3AgLSZndDsgdHJhY2VfcGtnLmNvcmUuYXNwKVswXQ=="><path d="M 1365.500000 741.000000 C 1365.500000 785.400024 1365.500000 809.099976 1365.500000 827.250000 C 1365.500000 845.400024 1365.500000 869.599976 1365.500000 887.750000 C 1365.500000 905.900024 1428.900024 1070.599976 1678.615853 1132.044279" stroke="#0D32B2" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-d2-2950348739-3488378134)" mask="url(#d2-2950348739)" /><text x="1414.000000" y="1038.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">implements</text></g><g class="KGFtYmllbnQuY29yZSAtJmd0OyB0cmFjZV9wa2cuY29yZS5hc3ApWzBd"><path d="M 2177.500000 741.000000 C 2177.500000 785.400024 2177.500000 809.099976 2177.500000 827.250000 C 2177.500000 845.400024 2177.500000 869.599976 2177.500000 887.750000 C 2177.500000 905.900024 2125.100098 1069.800049 1919.349405 1127.912765" stroke="#0D32B2" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-d2-2950348739-3488378134)" mask="url(#d2-2950348739)" /><text x="2144.000000" y="1018.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">implements</text></g><g class="KG90ZWwuYnJpZGdlIC0mZ3Q7IHRyYWNlX3BrZy5jb3JlLmNvbGxlY3RvcilbMF0="><path d="M 2780.484113 78.241126 C 2810.699951 131.699997 2818.500000 159.199997 2818.500000 179.750000 C 2818.500000 200.300003 2818.500000 240.600006 2818.500000 280.500000 C 2818.500000 320.399994 2818.500000 373.600006 2818.500000 413.500000 C 2818.500000 453.399994 2818.500000 493.700012 2818.500000 514.250000 C 2818.500000 534.799988 2818.500000 575.200012 2818.500000 615.250000 C 2818.500000 655.299988 2818.500000 705.000000 2818.500000 739.500000 C 2818.500000 774.000000 2818.500000 809.099976 2818.500000 827.250000 C 2818.500000 845.400024 2818.500000 869.599976 2818.500000 887.750000 C 2818.500000 905.900024 2484.300049 1075.199951 1151.492713 1155.758669" stroke="#0D32B2" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-d2-2950348739-3488378134)" mask="url(#d2-2950348739)" /><text x="2421.000000" y="1084.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">implements</text></g><g class="KG90ZWwuYnJpZGdlIC0mZ3Q7IHRyYWNlX3BrZy5jb3JlLmFzcClbMF0="><path d="M 2734.102308 78.460062 C 2723.300049 131.699997 2720.500000 159.199997 2720.500000 179.750000 C 2720.500000 200.300003 2720.500000 240.600006 2720.500000 280.500000 C 2720.500000 320.399994 2720.500000 373.600006 2720.500000 413.500000 C 2720.500000 453.399994 2720.500000 493.700012 2720.500000 514.250000 C 2720.500000 534.799988 2720.500000 575.200012 2720.500000 615.250000 C 2720.500000 655.299988 2720.500000 705.000000 2720.500000 739.500000 C 2720.500000 774.000000 2720.500000 809.099976 2720.500000 827.250000 C 2720.500000 845.400024 2720.500000 869.599976 2720.500000 887.750000 C 2720.500000 905.900024 2559.500000 1073.599976 1919.473571 1147.540941" stroke="#0D32B2" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-d2-2950348739-3488378134)" mask="url(#d2-2950348739)" /><text x="2703.000000" y="929.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">implements</text></g><g class="KG90ZWwuYnJpZGdlIC0mZ3Q7IGFtYmllbnQuY29yZSlbMF0="><path d="M 2698.213097 78.030974 C 2653.100098 131.699997 2641.500000 159.199997 2641.500000 179.750000 C 2641.500000 200.300003 2641.500000 240.600006 2641.500000 280.500000 C 2641.500000 320.399994 2641.500000 373.600006 2641.500000 413.500000 C 2641.500000 453.399994 2278.500000 563.900024 2229.080209 622.443446" stroke="#0D32B2" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-d2-2950348739-3488378134)" mask="url(#d2-2950348739)" /><text x="2611.000000" y="460.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px"><tspan x="2611.000000" dy="0.000000">uses for</tspan><tspan x="2611.000000" dy="18.500000">span propagation</tspan></text></g><g class="KG90ZWwuY29yZSAtJmd0OyBhbWJpZW50LmNvcmUpWzBd"><path d="M 3375.500000 422.000000 C 3375.500000 468.000000 2341.500000 563.900024 2260.725620 623.134546" stroke="#0D32B2" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-d2-2950348739-3488378134)" mask="url(#d2-2950348739)" /><text x="2831.000000" y="516.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px"><tspan x="2831.000000" dy="0.000000">uses</tspan><tspan x="2831.000000" dy="18.500000">(Scope storage)</tspan></text></g><g class="KG90ZWwub2N1cmwgLSZndDsgb3RscF9iYWNrZW5kKVswXQ=="><path d="M 3041.516563 62.241508 C 3004.100098 128.500000 3143.800049 237.199997 3737.047436 329.385804" stroke="#0D32B2" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-d2-2950348739-3488378134)" mask="url(#d2-2950348739)" /><text x="3316.000000" y="270.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">OTLP/HTTP</text></g><g class="KG90ZWwuY29odHRwX2x3dCAtJmd0OyBvdGxwX2JhY2tlbmQpWzBd"><path d="M 3260.148406 62.309637 C 3229.000000 128.500000 3325.000000 236.000000 3737.086601 323.172166" stroke="#0D32B2" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-d2-2950348739-3488378134)" mask="url(#d2-2950348739)" /><text x="3426.000000" y="263.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">OTLP/HTTP</text></g><g class="KG90ZWwuY29odHRwX2VpbyAtJmd0OyBvdGxwX2JhY2tlbmQpWzBd"><path d="M 3513.899684 62.170121 C 3470.199951 128.500000 3515.399902 233.199997 3737.213400 308.710945" stroke="#0D32B2" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-d2-2950348739-3488378134)" mask="url(#d2-2950348739)" /><text x="3536.000000" y="246.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">OTLP/HTTP</text></g><g class="KGJhY2tlbmRzLnRlZiAtJmd0OyBwZXJmZXR0bylbMF0="><path d="M 402.634537 748.803046 C 384.299988 787.000000 379.500000 809.099976 379.500000 827.250000 C 379.500000 845.400024 316.850006 869.599976 222.875000 887.750000 C 128.899002 905.900024 80.199997 1069.000000 133.176637 1122.166518" stroke="#0D32B2" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-d2-2950348739-3488378134)" mask="url(#d2-2950348739)" /><text x="184.500000" y="901.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">JSON traces</text></g><g class="KGJhY2tlbmRzLmZ1Y2hzaWEgLSZndDsgcGVyZmV0dG8pWzBd"><path d="M 682.933422 748.243315 C 634.099976 787.000000 621.500000 809.099976 621.500000 827.250000 C 621.500000 845.400024 544.500000 869.599976 429.000000 887.750000 C 313.500000 905.900024 228.199997 1068.800049 197.061636 1120.572223" stroke="#0D32B2" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-d2-2950348739-3488378134)" mask="url(#d2-2950348739)" /><text x="408.500000" y="896.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">binary traces</text></g><mask id="d2-2950348739" maskUnits="userSpaceOnUse" x="-65" y="-208" width="4127" height="1588">
<rect x="-65" y="-208" width="4127" height="1588" fill="white"></rect>
<rect x="413.000000" y="500.000000" width="44" height="21" fill="black"></rect>
<rect x="1730.000000" y="577.000000" width="82" height="21" fill="black"></rect>
<rect x="1834.000000" y="560.000000" width="82" height="21" fill="black"></rect>
<rect x="1999.000000" y="511.000000" width="82" height="21" fill="black"></rect>
<rect x="2189.000000" y="499.000000" width="82" height="21" fill="black"></rect>
<rect x="2961.000000" y="229.000000" width="102" height="37" fill="black"></rect>
<rect x="3106.000000" y="196.000000" width="80" height="21" fill="black"></rect>
<rect x="3316.000000" y="150.000000" width="80" height="21" fill="black"></rect>
<rect x="3535.000000" y="185.000000" width="80" height="21" fill="black"></rect>
<rect x="430.000000" y="885.000000" width="114" height="21" fill="black"></rect>
<rect x="193.000000" y="878.000000" width="117" height="21" fill="black"></rect>
<rect x="693.000000" y="884.000000" width="82" height="21" fill="black"></rect>
<rect x="866.000000" y="916.000000" width="82" height="21" fill="black"></rect>
<rect x="1059.000000" y="914.000000" width="82" height="21" fill="black"></rect>
<rect x="1373.000000" y="1022.000000" width="82" height="21" fill="black"></rect>
<rect x="2103.000000" y="1002.000000" width="82" height="21" fill="black"></rect>
<rect x="2380.000000" y="1068.000000" width="82" height="21" fill="black"></rect>
<rect x="2662.000000" y="913.000000" width="82" height="21" fill="black"></rect>
<rect x="2550.000000" y="444.000000" width="122" height="37" fill="black"></rect>
<rect x="2778.000000" y="500.000000" width="106" height="37" fill="black"></rect>
<rect x="3276.000000" y="254.000000" width="80" height="21" fill="black"></rect>
<rect x="3386.000000" y="247.000000" width="80" height="21" fill="black"></rect>
<rect x="3496.000000" y="230.000000" width="80" height="21" fill="black"></rect>
<rect x="142.000000" y="885.000000" width="85" height="21" fill="black"></rect>
<rect x="363.000000" y="880.000000" width="91" height="21" fill="black"></rect>
</mask></svg></svg>