update architecture docs for split MCP files, new clusters, Langfuse, and EC2 deploy
This commit is contained in:
@@ -4,222 +4,280 @@
|
||||
<!-- Generated by graphviz version 14.1.2 (0)
|
||||
-->
|
||||
<!-- Title: deployment Pages: 1 -->
|
||||
<svg style="background:#0a0e17" width="1496pt" height="2167pt"
|
||||
viewBox="0.00 0.00 1496.00 2167.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<g id="graph0" class="graph" transform="scale(2 2) rotate(0) translate(4 1079.34)">
|
||||
<svg width="947pt" height="632pt"
|
||||
viewBox="0.00 0.00 947.00 632.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 628.34)">
|
||||
<title>deployment</title>
|
||||
<polygon fill="#0a0e17" stroke="none" points="-4,4 -4,-1079.34 744,-1079.34 744,4 -4,4"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="370" y="-1058.04" font-family="Helvetica,sans-Serif" font-size="14.00" fill="#0066ff">Deployment — Kind Cluster (dev) / EC2 (prod)</text>
|
||||
<polygon fill="#0a0e17" stroke="none" points="-4,4 -4,-628.34 943,-628.34 943,4 -4,4"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="469.5" y="-607.04" font-family="Helvetica,sans-Serif" font-size="14.00" fill="#0066ff">Deployment — Kind Clusters (dev) / EC2 (prod)</text>
|
||||
<g id="clust1" class="cluster">
|
||||
<title>cluster_kind</title>
|
||||
<path fill="#0a0e17" stroke="#0066ff" d="M20,-8C20,-8 260,-8 260,-8 266,-8 272,-14 272,-20 272,-20 272,-964.84 272,-964.84 272,-970.84 266,-976.84 260,-976.84 260,-976.84 20,-976.84 20,-976.84 14,-976.84 8,-970.84 8,-964.84 8,-964.84 8,-20 8,-20 8,-14 14,-8 20,-8"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="140" y="-959.54" font-family="Helvetica,sans-Serif" font-size="14.00" fill="#0066ff">Kind Cluster: unt  (namespace: unt)</text>
|
||||
<title>cluster_ec2</title>
|
||||
<path fill="#0a0e17" stroke="#ff9800" d="M536,-212.84C536,-212.84 686,-212.84 686,-212.84 692,-212.84 698,-218.84 698,-224.84 698,-224.84 698,-513.84 698,-513.84 698,-519.84 692,-525.84 686,-525.84 686,-525.84 536,-525.84 536,-525.84 530,-525.84 524,-519.84 524,-513.84 524,-513.84 524,-224.84 524,-224.84 524,-218.84 530,-212.84 536,-212.84"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="611" y="-508.54" font-family="Helvetica,sans-Serif" font-size="14.00" fill="#ff9800">EC2 (mcrn.ar)</text>
|
||||
</g>
|
||||
<g id="clust2" class="cluster">
|
||||
<title>cluster_frontend_pod</title>
|
||||
<path fill="#0a0e17" stroke="#1e2a4a" d="M80,-733.34C80,-733.34 252,-733.34 252,-733.34 258,-733.34 264,-739.34 264,-745.34 264,-745.34 264,-931.59 264,-931.59 264,-937.59 258,-943.59 252,-943.59 252,-943.59 80,-943.59 80,-943.59 74,-943.59 68,-937.59 68,-931.59 68,-931.59 68,-745.34 68,-745.34 68,-739.34 74,-733.34 80,-733.34"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="166" y="-926.29" font-family="Helvetica,sans-Serif" font-size="14.00" fill="#4a5568">Pod: ui</text>
|
||||
<title>cluster_kind_unt</title>
|
||||
<path fill="#0a0e17" stroke="#0066ff" d="M280,-217.97C280,-217.97 465,-217.97 465,-217.97 471,-217.97 477,-223.97 477,-229.97 477,-229.97 477,-381.84 477,-381.84 477,-387.84 471,-393.84 465,-393.84 465,-393.84 280,-393.84 280,-393.84 274,-393.84 268,-387.84 268,-381.84 268,-381.84 268,-229.97 268,-229.97 268,-223.97 274,-217.97 280,-217.97"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="372.5" y="-376.54" font-family="Helvetica,sans-Serif" font-size="14.00" fill="#0066ff">Kind Cluster: unt (local dev)</text>
|
||||
</g>
|
||||
<g id="clust3" class="cluster">
|
||||
<title>cluster_api_pod</title>
|
||||
<path fill="#0a0e17" stroke="#1e2a4a" d="M122,-481.09C122,-481.09 252,-481.09 252,-481.09 258,-481.09 264,-487.09 264,-493.09 264,-493.09 264,-692.09 264,-692.09 264,-698.09 258,-704.09 252,-704.09 252,-704.09 122,-704.09 122,-704.09 116,-704.09 110,-698.09 110,-692.09 110,-692.09 110,-493.09 110,-493.09 110,-487.09 116,-481.09 122,-481.09"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="187" y="-686.79" font-family="Helvetica,sans-Serif" font-size="14.00" fill="#4a5568">Pod: api</text>
|
||||
<title>cluster_kind_lng</title>
|
||||
<path fill="#0a0e17" stroke="#00c853" d="M20,-8C20,-8 361,-8 361,-8 367,-8 373,-14 373,-20 373,-20 373,-169.08 373,-169.08 373,-175.08 367,-181.08 361,-181.08 361,-181.08 20,-181.08 20,-181.08 14,-181.08 8,-175.08 8,-169.08 8,-169.08 8,-20 8,-20 8,-14 14,-8 20,-8"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="190.5" y="-163.78" font-family="Helvetica,sans-Serif" font-size="14.00" fill="#00c853">Kind Cluster: lng (shared observability)</text>
|
||||
</g>
|
||||
<g id="clust4" class="cluster">
|
||||
<title>cluster_langfuse_pod</title>
|
||||
<path fill="#0a0e17" stroke="#1e2a4a" d="M74,-254.34C74,-254.34 252,-254.34 252,-254.34 258,-254.34 264,-260.34 264,-266.34 264,-266.34 264,-439.84 264,-439.84 264,-445.84 258,-451.84 252,-451.84 252,-451.84 74,-451.84 74,-451.84 68,-451.84 62,-445.84 62,-439.84 62,-439.84 62,-266.34 62,-266.34 62,-260.34 68,-254.34 74,-254.34"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="163" y="-434.54" font-family="Helvetica,sans-Serif" font-size="14.00" fill="#4a5568">Pod: langfuse</text>
|
||||
</g>
|
||||
<g id="clust5" class="cluster">
|
||||
<title>cluster_pg_pod</title>
|
||||
<path fill="#0a0e17" stroke="#1e2a4a" d="M72,-16C72,-16 252,-16 252,-16 258,-16 264,-22 264,-28 264,-28 264,-223.34 264,-223.34 264,-229.34 258,-235.34 252,-235.34 252,-235.34 72,-235.34 72,-235.34 66,-235.34 60,-229.34 60,-223.34 60,-223.34 60,-28 60,-28 60,-22 66,-16 72,-16"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="162" y="-218.04" font-family="Helvetica,sans-Serif" font-size="14.00" fill="#4a5568">Pod: postgres</text>
|
||||
</g>
|
||||
<g id="clust6" class="cluster">
|
||||
<title>cluster_external</title>
|
||||
<polygon fill="#0a0e17" stroke="#00c853" stroke-dasharray="5,2" points="280,-354.45 280,-446.98 732,-446.98 732,-354.45 280,-354.45"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="506" y="-429.68" font-family="Helvetica,sans-Serif" font-size="14.00" fill="#00c853">External APIs</text>
|
||||
<polygon fill="#0a0e17" stroke="#00c853" stroke-dasharray="5,2" points="381,-91.06 381,-183.59 931,-183.59 931,-91.06 381,-91.06"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="656" y="-166.29" font-family="Helvetica,sans-Serif" font-size="14.00" fill="#00c853">External APIs</text>
|
||||
</g>
|
||||
<!-- user -->
|
||||
<g id="node1" class="node">
|
||||
<title>user</title>
|
||||
<polygon fill="#243056" stroke="#1e2a4a" points="465.62,-1050.09 378.38,-1050.09 378.38,-1014.09 465.62,-1014.09 465.62,-1050.09"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="422" y="-1035.34" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">Browser</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="422" y="-1022.59" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">localhost:8040</text>
|
||||
<polygon fill="#243056" stroke="#1e2a4a" points="638.88,-599.09 583.12,-599.09 583.12,-563.09 638.88,-563.09 638.88,-599.09"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="611" y="-577.97" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">Browser</text>
|
||||
</g>
|
||||
<!-- ui_svc -->
|
||||
<g id="node3" class="node">
|
||||
<title>ui_svc</title>
|
||||
<polygon fill="#0d1a33" stroke="#1e2a4a" points="166,-910.34 75.75,-879.84 166,-849.34 256.25,-879.84 166,-910.34"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="166" y="-882.54" font-family="Helvetica,sans-Serif" font-size="9.00" fill="#e8eaf0">Service: ui</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="166" y="-871.29" font-family="Helvetica,sans-Serif" font-size="9.00" fill="#e8eaf0">NodePort 30040</text>
|
||||
<!-- nginx_edge -->
|
||||
<g id="node2" class="node">
|
||||
<title>nginx_edge</title>
|
||||
<polygon fill="#121829" stroke="#1e2a4a" points="690.25,-492.59 531.75,-492.59 531.75,-420.84 690.25,-420.84 690.25,-492.59"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="611" y="-479.09" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">nginx (gateway container)</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="611" y="-466.34" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">443 · SSL</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="611" y="-453.59" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">stellarair.mcrn.ar</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="611" y="-440.84" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">langfuse.mcrn.ar</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="611" y="-428.09" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">nova.mcrn.ar (Kong backend)</text>
|
||||
</g>
|
||||
<!-- user->ui_svc -->
|
||||
<!-- user->nginx_edge -->
|
||||
<g id="edge1" class="edge">
|
||||
<title>user->ui_svc</title>
|
||||
<path fill="none" stroke="#0066ff" d="M392.38,-1013.71C346.98,-987.06 259.97,-936 208.05,-905.52"/>
|
||||
<polygon fill="#0066ff" stroke="#0066ff" points="209.86,-902.53 199.46,-900.48 206.31,-908.56 209.86,-902.53"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="405.13" y="-987.54" font-family="Helvetica,sans-Serif" font-size="9.00" fill="#8892a8">host:8040 → 30040</text>
|
||||
<title>user->nginx_edge</title>
|
||||
<path fill="none" stroke="#ff9800" d="M611,-562.82C611,-547.66 611,-524.89 611,-504.42"/>
|
||||
<polygon fill="#ff9800" stroke="#ff9800" points="614.5,-504.55 611,-494.55 607.5,-504.55 614.5,-504.55"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="649.25" y="-536.54" font-family="Helvetica,sans-Serif" font-size="9.00" fill="#8892a8">stellarair.mcrn.ar</text>
|
||||
</g>
|
||||
<!-- unt_ui -->
|
||||
<g id="node5" class="node">
|
||||
<title>unt_ui</title>
|
||||
<polygon fill="#121829" stroke="#1e2a4a" points="469,-360.59 375,-360.59 375,-314.34 469,-314.34 469,-360.59"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="422" y="-347.09" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">ui pod</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="422" y="-334.34" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">nginx + Vue</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="422" y="-321.59" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">NodePort 30040</text>
|
||||
</g>
|
||||
<!-- user->unt_ui -->
|
||||
<g id="edge9" class="edge">
|
||||
<title>user->unt_ui</title>
|
||||
<path fill="none" stroke="#0066ff" d="M582.83,-578.8C546.98,-575.55 485.81,-564.31 453.25,-525.84 416.79,-482.77 415.11,-413.57 418,-372.41"/>
|
||||
<polygon fill="#0066ff" stroke="#0066ff" points="421.48,-372.86 418.84,-362.6 414.5,-372.26 421.48,-372.86"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="486.62" y="-453.79" font-family="Helvetica,sans-Serif" font-size="9.00" fill="#8892a8">localhost:8040</text>
|
||||
</g>
|
||||
<!-- ext_kong -->
|
||||
<g id="node13" class="node">
|
||||
<g id="node16" class="node">
|
||||
<title>ext_kong</title>
|
||||
<polygon fill="#243056" stroke="#1e2a4a" stroke-dasharray="5,2" points="723.76,-377.47 723.76,-398.71 687,-413.73 635,-413.73 598.24,-398.71 598.24,-377.47 635,-362.45 687,-362.45 723.76,-377.47"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="661" y="-391.34" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">Kong Konnect</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="661" y="-378.59" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">(optional)</text>
|
||||
<polygon fill="#243056" stroke="#1e2a4a" stroke-dasharray="5,2" points="922.85,-114.08 922.85,-135.32 874.32,-150.34 805.68,-150.34 757.15,-135.32 757.15,-114.08 805.68,-99.06 874.32,-99.06 922.85,-114.08"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="840" y="-127.95" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">Kong Konnect</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="840" y="-115.2" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">(optional gateway)</text>
|
||||
</g>
|
||||
<!-- user->ext_kong -->
|
||||
<g id="edge12" class="edge">
|
||||
<title>user->ext_kong</title>
|
||||
<path fill="none" stroke="#4a5568" stroke-dasharray="5,2" d="M465.88,-1022.95C532.38,-1007.78 651,-968.46 651,-880.84 651,-880.84 651,-880.84 651,-529.97 651,-494.35 654.22,-453.8 657,-425.38"/>
|
||||
<polygon fill="#4a5568" stroke="#4a5568" points="660.48,-425.8 658.01,-415.5 653.52,-425.1 660.48,-425.8"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="672.75" y="-714.79" font-family="Helvetica,sans-Serif" font-size="9.00" fill="#8892a8">(optional)</text>
|
||||
</g>
|
||||
<!-- ui -->
|
||||
<g id="node2" class="node">
|
||||
<title>ui</title>
|
||||
<polygon fill="#121829" stroke="#1e2a4a" points="229,-812.34 129,-812.34 129,-741.34 229,-741.34 229,-812.34"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="179" y="-798.84" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">nginx</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="179" y="-786.09" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">:80</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="179" y="-761.34" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">Vue SPA</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="179" y="-748.59" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">Proxy → api:8000</text>
|
||||
</g>
|
||||
<!-- api_svc -->
|
||||
<g id="node5" class="node">
|
||||
<title>api_svc</title>
|
||||
<polygon fill="#0d1a33" stroke="#1e2a4a" points="187,-670.84 118.5,-640.34 187,-609.84 255.5,-640.34 187,-670.84"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="187" y="-643.04" font-family="Helvetica,sans-Serif" font-size="9.00" fill="#e8eaf0">Service: api</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="187" y="-631.79" font-family="Helvetica,sans-Serif" font-size="9.00" fill="#e8eaf0">ClusterIP</text>
|
||||
</g>
|
||||
<!-- ui->api_svc -->
|
||||
<g id="edge3" class="edge">
|
||||
<title>ui->api_svc</title>
|
||||
<path fill="none" stroke="#4a5568" d="M181.08,-740.86C182.16,-722.68 183.49,-700.38 184.61,-681.5"/>
|
||||
<polygon fill="#4a5568" stroke="#4a5568" points="188.09,-681.96 185.19,-671.77 181.1,-681.54 188.09,-681.96"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="195.51" y="-714.79" font-family="Helvetica,sans-Serif" font-size="9.00" fill="#8892a8">proxy</text>
|
||||
</g>
|
||||
<!-- ui_svc->ui -->
|
||||
<g id="edge2" class="edge">
|
||||
<title>ui_svc->ui</title>
|
||||
<path fill="none" stroke="#4a5568" d="M169.69,-850.17C170.75,-841.97 171.92,-832.82 173.08,-823.86"/>
|
||||
<polygon fill="#4a5568" stroke="#4a5568" points="176.52,-824.56 174.32,-814.19 169.57,-823.66 176.52,-824.56"/>
|
||||
<title>user->ext_kong</title>
|
||||
<path fill="none" stroke="#4a5568" stroke-dasharray="5,2" d="M639.37,-576.2C694.78,-566.84 812,-537.59 812,-457.72 812,-457.72 812,-457.72 812,-242.97 812,-214.91 819.68,-184.08 826.99,-161.07"/>
|
||||
<polygon fill="#4a5568" stroke="#4a5568" points="830.21,-162.49 830.04,-151.89 823.57,-160.28 830.21,-162.49"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="851" y="-334.54" font-family="Helvetica,sans-Serif" font-size="9.00" fill="#8892a8">(API governance)</text>
|
||||
</g>
|
||||
<!-- api -->
|
||||
<!-- nova_ui -->
|
||||
<g id="node3" class="node">
|
||||
<title>nova_ui</title>
|
||||
<polygon fill="#0d1a33" stroke="#1e2a4a" points="660.12,-355.47 557.88,-355.47 557.88,-319.47 660.12,-319.47 660.12,-355.47"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="609" y="-340.72" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">nova-ui</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="609" y="-327.97" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">nginx + Vue build</text>
|
||||
</g>
|
||||
<!-- nginx_edge->nova_ui -->
|
||||
<g id="edge4" class="edge">
|
||||
<title>nginx_edge->nova_ui</title>
|
||||
<path fill="none" stroke="#4a5568" d="M610.4,-420.54C610.11,-403.44 609.76,-383.17 609.49,-367.05"/>
|
||||
<polygon fill="#4a5568" stroke="#4a5568" points="612.99,-367.1 609.32,-357.16 605.99,-367.22 612.99,-367.1"/>
|
||||
</g>
|
||||
<!-- nova_api -->
|
||||
<g id="node4" class="node">
|
||||
<title>api</title>
|
||||
<polygon fill="#121829" stroke="#1e2a4a" points="255.75,-572.84 148.25,-572.84 148.25,-489.09 255.75,-489.09 255.75,-572.84"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="202" y="-559.34" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">uvicorn</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="202" y="-546.59" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">:8000</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="202" y="-521.84" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">FastAPI</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="202" y="-509.09" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">MCP clients (stdio)</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="202" y="-496.34" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">LangGraph agents</text>
|
||||
<title>nova_api</title>
|
||||
<polygon fill="#0d1a33" stroke="#1e2a4a" points="662.75,-267.09 555.25,-267.09 555.25,-220.84 662.75,-220.84 662.75,-267.09"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="609" y="-253.59" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">nova-api</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="609" y="-240.84" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">uvicorn · FastAPI</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="609" y="-228.09" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">MCP clients (stdio)</text>
|
||||
</g>
|
||||
<!-- langfuse_svc -->
|
||||
<!-- nova_ui->nova_api -->
|
||||
<g id="edge5" class="edge">
|
||||
<title>nova_ui->nova_api</title>
|
||||
<path fill="none" stroke="#4a5568" d="M609,-319.26C609,-307.77 609,-292.29 609,-278.43"/>
|
||||
<polygon fill="#4a5568" stroke="#4a5568" points="612.5,-278.81 609,-268.81 605.5,-278.81 612.5,-278.81"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="649.88" y="-287.79" font-family="Helvetica,sans-Serif" font-size="9.00" fill="#8892a8">/agents /scenarios</text>
|
||||
</g>
|
||||
<!-- lf_web -->
|
||||
<g id="node7" class="node">
|
||||
<title>langfuse_svc</title>
|
||||
<polygon fill="#0d1a33" stroke="#1e2a4a" points="163,-418.59 69.75,-388.09 163,-357.59 256.25,-388.09 163,-418.59"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="163" y="-390.79" font-family="Helvetica,sans-Serif" font-size="9.00" fill="#e8eaf0">Service: langfuse</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="163" y="-379.54" font-family="Helvetica,sans-Serif" font-size="9.00" fill="#e8eaf0">NodePort 30030</text>
|
||||
<title>lf_web</title>
|
||||
<polygon fill="#121829" stroke="#1e2a4a" points="245,-147.83 151,-147.83 151,-101.58 245,-101.58 245,-147.83"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="198" y="-134.33" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">langfuse-web</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="198" y="-121.58" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">Next.js</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="198" y="-108.83" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">NodePort 30030</text>
|
||||
</g>
|
||||
<!-- api->langfuse_svc -->
|
||||
<g id="edge8" class="edge">
|
||||
<title>api->langfuse_svc</title>
|
||||
<path fill="none" stroke="#4a5568" stroke-dasharray="1,5" d="M190.61,-488.84C185.23,-469.38 178.83,-446.29 173.56,-427.22"/>
|
||||
<polygon fill="#4a5568" stroke="#4a5568" points="176.96,-426.4 170.92,-417.69 170.21,-428.27 176.96,-426.4"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="198.71" y="-462.54" font-family="Helvetica,sans-Serif" font-size="9.00" fill="#8892a8">traces</text>
|
||||
<!-- nova_api->lf_web -->
|
||||
<g id="edge15" class="edge">
|
||||
<title>nova_api->lf_web</title>
|
||||
<path fill="none" stroke="#00c853" stroke-dasharray="1,5" d="M555.01,-229.3C532.25,-223.79 505.42,-217.62 481,-212.84 420.96,-201.1 405.73,-199 345,-191.59 324.85,-189.13 272.32,-192.33 254,-183.59 241.18,-177.48 229.72,-167.11 220.55,-156.81"/>
|
||||
<polygon fill="#00c853" stroke="#00c853" points="223.49,-154.87 214.39,-149.44 218.12,-159.36 223.49,-154.87"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="453.63" y="-194.29" font-family="Helvetica,sans-Serif" font-size="9.00" fill="#8892a8">OTLP traces</text>
|
||||
</g>
|
||||
<!-- ext_weather -->
|
||||
<g id="node10" class="node">
|
||||
<g id="node13" class="node">
|
||||
<title>ext_weather</title>
|
||||
<polygon fill="#0d2a0d" stroke="#1e2a4a" points="383.85,-380.64 383.85,-395.55 355.82,-406.09 316.18,-406.09 288.15,-395.55 288.15,-380.64 316.18,-370.09 355.82,-370.09 383.85,-380.64"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="336" y="-384.97" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#00c853">OpenMeteo</text>
|
||||
<polygon fill="#0d2a0d" stroke="#1e2a4a" points="738.85,-117.25 738.85,-132.16 710.82,-142.7 671.18,-142.7 643.15,-132.16 643.15,-117.25 671.18,-106.7 710.82,-106.7 738.85,-117.25"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="691" y="-121.58" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#00c853">OpenMeteo</text>
|
||||
</g>
|
||||
<!-- api->ext_weather -->
|
||||
<g id="edge5" class="edge">
|
||||
<title>api->ext_weather</title>
|
||||
<path fill="none" stroke="#00c853" d="M241.12,-488.84C263.97,-464.82 292.08,-435.27 311.75,-414.59"/>
|
||||
<polygon fill="#00c853" stroke="#00c853" points="314.22,-417.07 318.58,-407.41 309.15,-412.24 314.22,-417.07"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="276.23" y="-462.54" font-family="Helvetica,sans-Serif" font-size="9.00" fill="#8892a8">HTTP</text>
|
||||
<!-- nova_api->ext_weather -->
|
||||
<g id="edge6" class="edge">
|
||||
<title>nova_api->ext_weather</title>
|
||||
<path fill="none" stroke="#00c853" d="M662.06,-220.51C668.98,-215.59 675.29,-209.74 680,-202.84 689.6,-188.78 692.42,-169.89 692.81,-154.32"/>
|
||||
<polygon fill="#00c853" stroke="#00c853" points="696.31,-154.68 692.71,-144.71 689.31,-154.75 696.31,-154.68"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="697.13" y="-194.29" font-family="Helvetica,sans-Serif" font-size="9.00" fill="#8892a8">HTTP</text>
|
||||
</g>
|
||||
<!-- ext_faa -->
|
||||
<g id="node11" class="node">
|
||||
<g id="node14" class="node">
|
||||
<title>ext_faa</title>
|
||||
<polygon fill="#0d2a0d" stroke="#1e2a4a" points="456,-380.64 456,-395.55 440.18,-406.09 417.82,-406.09 402,-395.55 402,-380.64 417.82,-370.09 440.18,-370.09 456,-380.64"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="429" y="-384.97" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#00c853">FAA</text>
|
||||
<polygon fill="#0d2a0d" stroke="#1e2a4a" points="625,-117.25 625,-132.16 609.18,-142.7 586.82,-142.7 571,-132.16 571,-117.25 586.82,-106.7 609.18,-106.7 625,-117.25"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="598" y="-121.58" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#00c853">FAA</text>
|
||||
</g>
|
||||
<!-- api->ext_faa -->
|
||||
<g id="edge6" class="edge">
|
||||
<title>api->ext_faa</title>
|
||||
<path fill="none" stroke="#00c853" d="M256.12,-518.06C297.44,-506.72 353.78,-486.18 393,-451.84 403.89,-442.31 412.27,-428.64 418.19,-416.5"/>
|
||||
<polygon fill="#00c853" stroke="#00c853" points="421.23,-418.29 422.15,-407.74 414.84,-415.41 421.23,-418.29"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="391.29" y="-462.54" font-family="Helvetica,sans-Serif" font-size="9.00" fill="#8892a8">HTTP</text>
|
||||
<!-- nova_api->ext_faa -->
|
||||
<g id="edge7" class="edge">
|
||||
<title>nova_api->ext_faa</title>
|
||||
<path fill="none" stroke="#00c853" d="M642.89,-220.59C651.8,-211.88 657.36,-201.61 651,-191.59 646.53,-184.54 640.24,-189.14 634,-183.59 624.52,-175.15 616.66,-163.63 610.73,-153.08"/>
|
||||
<polygon fill="#00c853" stroke="#00c853" points="613.9,-151.58 606.16,-144.35 607.7,-154.83 613.9,-151.58"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="664.99" y="-194.29" font-family="Helvetica,sans-Serif" font-size="9.00" fill="#8892a8">HTTP</text>
|
||||
</g>
|
||||
<!-- ext_bedrock -->
|
||||
<g id="node12" class="node">
|
||||
<g id="node15" class="node">
|
||||
<title>ext_bedrock</title>
|
||||
<polygon fill="#243056" stroke="#1e2a4a" points="580.31,-380.64 580.31,-395.55 549.08,-406.09 504.92,-406.09 473.69,-395.55 473.69,-380.64 504.92,-370.09 549.08,-370.09 580.31,-380.64"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="527" y="-384.97" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">AWS Bedrock</text>
|
||||
<polygon fill="#243056" stroke="#1e2a4a" points="552.7,-114.08 552.7,-135.32 504.84,-150.34 437.16,-150.34 389.3,-135.32 389.3,-114.08 437.16,-99.06 504.84,-99.06 552.7,-114.08"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="471" y="-127.95" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">Bedrock / Groq</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="471" y="-115.2" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">Anthropic / OpenAI</text>
|
||||
</g>
|
||||
<!-- api->ext_bedrock -->
|
||||
<g id="edge7" class="edge">
|
||||
<title>api->ext_bedrock</title>
|
||||
<path fill="none" stroke="#4a5568" stroke-dasharray="5,2" d="M256.09,-522.53C311.82,-512.97 399.56,-492.5 465,-451.84 480.6,-442.15 495.18,-427.78 506.29,-415.23"/>
|
||||
<polygon fill="#4a5568" stroke="#4a5568" points="508.91,-417.54 512.74,-407.66 503.59,-413 508.91,-417.54"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="475.05" y="-462.54" font-family="Helvetica,sans-Serif" font-size="9.00" fill="#8892a8">Converse API</text>
|
||||
<!-- nova_api->ext_bedrock -->
|
||||
<g id="edge8" class="edge">
|
||||
<title>nova_api->ext_bedrock</title>
|
||||
<path fill="none" stroke="#4a5568" stroke-dasharray="5,2" d="M603.93,-220.47C600.62,-210.42 595.33,-199.16 587,-191.59 578.37,-183.74 572.56,-188.54 562,-183.59 545.87,-176.03 529.15,-166.09 514.52,-156.59"/>
|
||||
<polygon fill="#4a5568" stroke="#4a5568" points="516.76,-153.88 506.49,-151.27 512.9,-159.71 516.76,-153.88"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="615.8" y="-194.29" font-family="Helvetica,sans-Serif" font-size="9.00" fill="#8892a8">LLM calls</text>
|
||||
</g>
|
||||
<!-- api_svc->api -->
|
||||
<g id="edge4" class="edge">
|
||||
<title>api_svc->api</title>
|
||||
<path fill="none" stroke="#4a5568" d="M190.94,-611.13C192.09,-602.92 193.38,-593.66 194.67,-584.46"/>
|
||||
<polygon fill="#4a5568" stroke="#4a5568" points="198.1,-585.21 196.01,-574.82 191.16,-584.24 198.1,-585.21"/>
|
||||
</g>
|
||||
<!-- langfuse -->
|
||||
<!-- unt_api -->
|
||||
<g id="node6" class="node">
|
||||
<title>langfuse</title>
|
||||
<polygon fill="#121829" stroke="#1e2a4a" points="200.75,-320.59 123.25,-320.59 123.25,-262.34 200.75,-262.34 200.75,-320.59"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="162" y="-307.09" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">Langfuse</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="162" y="-294.34" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">:3000</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="162" y="-269.59" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">Trace viewer</text>
|
||||
<title>unt_api</title>
|
||||
<polygon fill="#121829" stroke="#1e2a4a" points="469.12,-261.97 372.88,-261.97 372.88,-225.97 469.12,-225.97 469.12,-261.97"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="421" y="-247.22" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">api pod</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="421" y="-234.47" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">uvicorn · FastAPI</text>
|
||||
</g>
|
||||
<!-- pg_svc -->
|
||||
<g id="node9" class="node">
|
||||
<title>pg_svc</title>
|
||||
<polygon fill="#0d1a33" stroke="#1e2a4a" points="162,-202.09 68,-171.59 162,-141.09 256,-171.59 162,-202.09"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="162" y="-174.29" font-family="Helvetica,sans-Serif" font-size="9.00" fill="#e8eaf0">Service: postgres</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="162" y="-163.04" font-family="Helvetica,sans-Serif" font-size="9.00" fill="#e8eaf0">ClusterIP</text>
|
||||
</g>
|
||||
<!-- langfuse->pg_svc -->
|
||||
<!-- unt_ui->unt_api -->
|
||||
<g id="edge10" class="edge">
|
||||
<title>langfuse->pg_svc</title>
|
||||
<path fill="none" stroke="#4a5568" d="M162,-261.93C162,-247.46 162,-229.62 162,-213.69"/>
|
||||
<polygon fill="#4a5568" stroke="#4a5568" points="165.5,-214.02 162,-204.02 158.5,-214.02 165.5,-214.02"/>
|
||||
<title>unt_ui->unt_api</title>
|
||||
<path fill="none" stroke="#4a5568" d="M421.75,-313.85C421.62,-301.69 421.45,-286.58 421.31,-273.61"/>
|
||||
<polygon fill="#4a5568" stroke="#4a5568" points="424.82,-273.92 421.21,-263.96 417.82,-274 424.82,-273.92"/>
|
||||
</g>
|
||||
<!-- langfuse_svc->langfuse -->
|
||||
<g id="edge9" class="edge">
|
||||
<title>langfuse_svc->langfuse</title>
|
||||
<path fill="none" stroke="#4a5568" d="M162.69,-357.41C162.6,-349.53 162.51,-340.88 162.42,-332.55"/>
|
||||
<polygon fill="#4a5568" stroke="#4a5568" points="165.92,-332.55 162.32,-322.59 158.92,-332.62 165.92,-332.55"/>
|
||||
<!-- unt_api->lf_web -->
|
||||
<g id="edge14" class="edge">
|
||||
<title>unt_api->lf_web</title>
|
||||
<path fill="none" stroke="#00c853" stroke-dasharray="1,5" d="M372.64,-232.1C337.77,-222.81 290.61,-207.15 254,-183.59 242.63,-176.28 231.86,-166.23 222.86,-156.56"/>
|
||||
<polygon fill="#00c853" stroke="#00c853" points="225.71,-154.5 216.44,-149.36 220.49,-159.16 225.71,-154.5"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="314.52" y="-194.29" font-family="Helvetica,sans-Serif" font-size="9.00" fill="#8892a8">OTLP traces</text>
|
||||
</g>
|
||||
<!-- pg -->
|
||||
<g id="node8" class="node">
|
||||
<title>pg</title>
|
||||
<path fill="#121829" stroke="#1e2a4a" d="M204.5,-96.81C204.5,-100.83 185.45,-104.09 162,-104.09 138.55,-104.09 119.5,-100.83 119.5,-96.81 119.5,-96.81 119.5,-31.28 119.5,-31.28 119.5,-27.26 138.55,-24 162,-24 185.45,-24 204.5,-27.26 204.5,-31.28 204.5,-31.28 204.5,-96.81 204.5,-96.81"/>
|
||||
<path fill="none" stroke="#1e2a4a" d="M204.5,-96.81C204.5,-92.79 185.45,-89.53 162,-89.53 138.55,-89.53 119.5,-92.79 119.5,-96.81"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="162" y="-79.67" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">PostgreSQL</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="162" y="-66.92" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">:5432</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="162" y="-42.17" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">Langfuse data</text>
|
||||
</g>
|
||||
<!-- pg_svc->pg -->
|
||||
<!-- unt_api->ext_weather -->
|
||||
<g id="edge11" class="edge">
|
||||
<title>pg_svc->pg</title>
|
||||
<path fill="none" stroke="#4a5568" d="M162,-140.63C162,-132.92 162,-124.41 162,-115.96"/>
|
||||
<polygon fill="#4a5568" stroke="#4a5568" points="165.5,-116.07 162,-106.07 158.5,-116.07 165.5,-116.07"/>
|
||||
<title>unt_api->ext_weather</title>
|
||||
<path fill="none" stroke="#00c853" stroke-dasharray="5,2" d="M437.98,-225.52C450.77,-213.62 469.41,-198.77 489,-191.59 519.3,-180.49 604.59,-196.87 634,-183.59 649.26,-176.7 662.63,-163.75 672.58,-151.84"/>
|
||||
<polygon fill="#00c853" stroke="#00c853" points="675.12,-154.27 678.55,-144.24 669.62,-149.94 675.12,-154.27"/>
|
||||
</g>
|
||||
<!-- ext_kong->ui_svc -->
|
||||
<!-- unt_api->ext_faa -->
|
||||
<g id="edge12" class="edge">
|
||||
<title>unt_api->ext_faa</title>
|
||||
<path fill="none" stroke="#00c853" stroke-dasharray="5,2" d="M430.26,-225.5C437.49,-213.75 448.72,-199.08 463,-191.59 482.55,-181.34 543.16,-195.08 562,-183.59 573.33,-176.68 581.65,-164.72 587.41,-153.45"/>
|
||||
<polygon fill="#00c853" stroke="#00c853" points="590.56,-154.98 591.54,-144.43 584.2,-152.06 590.56,-154.98"/>
|
||||
</g>
|
||||
<!-- unt_api->ext_bedrock -->
|
||||
<g id="edge13" class="edge">
|
||||
<title>ext_kong->ui_svc</title>
|
||||
<path fill="none" stroke="#4a5568" stroke-dasharray="5,2" d="M640.9,-413.88C621.16,-440.78 594,-485.82 594,-529.97 594,-777.84 594,-777.84 594,-777.84 594,-846.35 383.67,-868.44 257.9,-875.53"/>
|
||||
<polygon fill="#4a5568" stroke="#4a5568" points="258.06,-872.01 248.27,-876.05 258.44,-879 258.06,-872.01"/>
|
||||
<title>unt_api->ext_bedrock</title>
|
||||
<path fill="none" stroke="#4a5568" stroke-dasharray="5,2" d="M425.14,-225.54C427.77,-215.45 431.52,-202.61 436,-191.59 440.2,-181.26 445.53,-170.43 450.76,-160.6"/>
|
||||
<polygon fill="#4a5568" stroke="#4a5568" points="453.68,-162.56 455.4,-152.11 447.53,-159.21 453.68,-162.56"/>
|
||||
</g>
|
||||
<!-- lf_pg -->
|
||||
<g id="node10" class="node">
|
||||
<title>lf_pg</title>
|
||||
<path fill="#0d1a33" stroke="#1e2a4a" d="M161.62,-57.88C161.62,-60.19 147.45,-62.06 130,-62.06 112.55,-62.06 98.38,-60.19 98.38,-57.88 98.38,-57.88 98.38,-20.19 98.38,-20.19 98.38,-17.88 112.55,-16 130,-16 147.45,-16 161.62,-17.88 161.62,-20.19 161.62,-20.19 161.62,-57.88 161.62,-57.88"/>
|
||||
<path fill="none" stroke="#1e2a4a" d="M161.62,-57.88C161.62,-55.56 147.45,-53.69 130,-53.69 112.55,-53.69 98.38,-55.56 98.38,-57.88"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="130" y="-42.28" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">Postgres</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="130" y="-29.53" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">metadata</text>
|
||||
</g>
|
||||
<!-- lf_web->lf_pg -->
|
||||
<g id="edge19" class="edge">
|
||||
<title>lf_web->lf_pg</title>
|
||||
<path fill="none" stroke="#4a5568" d="M179.78,-101.28C172.25,-92.01 163.39,-81.12 155.25,-71.1"/>
|
||||
<polygon fill="#4a5568" stroke="#4a5568" points="158.01,-68.95 148.99,-63.4 152.58,-73.37 158.01,-68.95"/>
|
||||
</g>
|
||||
<!-- lf_redis -->
|
||||
<g id="node11" class="node">
|
||||
<title>lf_redis</title>
|
||||
<path fill="#0d1a33" stroke="#1e2a4a" d="M262.75,-57.88C262.75,-60.19 244.04,-62.06 221,-62.06 197.96,-62.06 179.25,-60.19 179.25,-57.88 179.25,-57.88 179.25,-20.19 179.25,-20.19 179.25,-17.88 197.96,-16 221,-16 244.04,-16 262.75,-17.88 262.75,-20.19 262.75,-20.19 262.75,-57.88 262.75,-57.88"/>
|
||||
<path fill="none" stroke="#1e2a4a" d="M262.75,-57.88C262.75,-55.56 244.04,-53.69 221,-53.69 197.96,-53.69 179.25,-55.56 179.25,-57.88"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="221" y="-42.28" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">Redis</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="221" y="-29.53" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">queue · cache</text>
|
||||
</g>
|
||||
<!-- lf_web->lf_redis -->
|
||||
<g id="edge16" class="edge">
|
||||
<title>lf_web->lf_redis</title>
|
||||
<path fill="none" stroke="#4a5568" d="M204.16,-101.28C206.51,-92.75 209.24,-82.83 211.8,-73.49"/>
|
||||
<polygon fill="#4a5568" stroke="#4a5568" points="215.14,-74.54 214.42,-63.97 208.39,-72.69 215.14,-74.54"/>
|
||||
</g>
|
||||
<!-- lf_minio -->
|
||||
<g id="node12" class="node">
|
||||
<title>lf_minio</title>
|
||||
<path fill="#0d1a33" stroke="#1e2a4a" d="M80,-57.88C80,-60.19 65.66,-62.06 48,-62.06 30.34,-62.06 16,-60.19 16,-57.88 16,-57.88 16,-20.19 16,-20.19 16,-17.88 30.34,-16 48,-16 65.66,-16 80,-17.88 80,-20.19 80,-20.19 80,-57.88 80,-57.88"/>
|
||||
<path fill="none" stroke="#1e2a4a" d="M80,-57.88C80,-55.56 65.66,-53.69 48,-53.69 30.34,-53.69 16,-55.56 16,-57.88"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="48" y="-42.28" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">MinIO</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="48" y="-29.53" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">S3 events</text>
|
||||
</g>
|
||||
<!-- lf_web->lf_minio -->
|
||||
<g id="edge20" class="edge">
|
||||
<title>lf_web->lf_minio</title>
|
||||
<path fill="none" stroke="#4a5568" d="M157.8,-101.28C136.92,-89.63 111.41,-75.4 90.24,-63.59"/>
|
||||
<polygon fill="#4a5568" stroke="#4a5568" points="92,-60.57 81.56,-58.75 88.59,-66.68 92,-60.57"/>
|
||||
</g>
|
||||
<!-- lf_worker -->
|
||||
<g id="node8" class="node">
|
||||
<title>lf_worker</title>
|
||||
<polygon fill="#121829" stroke="#1e2a4a" points="365.12,-142.7 262.88,-142.7 262.88,-106.7 365.12,-106.7 365.12,-142.7"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="314" y="-127.95" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">langfuse-worker</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="314" y="-115.2" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">ClickHouse writer</text>
|
||||
</g>
|
||||
<!-- lf_ch -->
|
||||
<g id="node9" class="node">
|
||||
<title>lf_ch</title>
|
||||
<path fill="#0d1a33" stroke="#1e2a4a" d="M364.75,-57.88C364.75,-60.19 346.04,-62.06 323,-62.06 299.96,-62.06 281.25,-60.19 281.25,-57.88 281.25,-57.88 281.25,-20.19 281.25,-20.19 281.25,-17.88 299.96,-16 323,-16 346.04,-16 364.75,-17.88 364.75,-20.19 364.75,-20.19 364.75,-57.88 364.75,-57.88"/>
|
||||
<path fill="none" stroke="#1e2a4a" d="M364.75,-57.88C364.75,-55.56 346.04,-53.69 323,-53.69 299.96,-53.69 281.25,-55.56 281.25,-57.88"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="323" y="-42.28" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">ClickHouse</text>
|
||||
<text xml:space="preserve" text-anchor="middle" x="323" y="-29.53" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#e8eaf0">traces · spans</text>
|
||||
</g>
|
||||
<!-- lf_worker->lf_ch -->
|
||||
<g id="edge18" class="edge">
|
||||
<title>lf_worker->lf_ch</title>
|
||||
<path fill="none" stroke="#4a5568" d="M315.86,-106.37C316.88,-96.92 318.17,-84.89 319.38,-73.68"/>
|
||||
<polygon fill="#4a5568" stroke="#4a5568" points="322.84,-74.26 320.43,-63.94 315.88,-73.51 322.84,-74.26"/>
|
||||
</g>
|
||||
<!-- lf_worker->lf_redis -->
|
||||
<g id="edge17" class="edge">
|
||||
<title>lf_worker->lf_redis</title>
|
||||
<path fill="none" stroke="#4a5568" d="M294.73,-106.37C282.92,-95.74 267.5,-81.86 253.81,-69.55"/>
|
||||
<polygon fill="#4a5568" stroke="#4a5568" points="256.46,-67.23 246.69,-63.14 251.78,-72.43 256.46,-67.23"/>
|
||||
</g>
|
||||
<!-- ext_kong->nginx_edge -->
|
||||
<g id="edge3" class="edge">
|
||||
<title>ext_kong->nginx_edge</title>
|
||||
<path fill="none" stroke="#4a5568" stroke-dasharray="5,2" d="M809.27,-150.83C792.29,-163.15 770.19,-176.78 748,-183.59 735.57,-187.41 523.04,-182.24 514,-191.59 450.61,-257.19 503.77,-314.62 549,-393.84 552.65,-400.23 557.13,-406.41 562,-412.24"/>
|
||||
<polygon fill="#4a5568" stroke="#4a5568" points="559.09,-414.24 568.36,-419.38 564.32,-409.58 559.09,-414.24"/>
|
||||
<text xml:space="preserve" text-anchor="middle" x="534.04" y="-287.79" font-family="Helvetica,sans-Serif" font-size="9.00" fill="#8892a8">X-Gateway-Secret</text>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 21 KiB |
Reference in New Issue
Block a user