@@ -128,17 +128,21 @@ graph TB
128128 Logs[Application Logs]
129129 end
130130
131- %% Data Layer
132- subgraph DataLayer["Data Layer"]
133- DB[(PostgreSQL Database)]
134- end
135-
136131 %% Observability
137132 subgraph ObsLayer["Observability Stack"]
138133 Prometheus[Prometheus Metrics]
139134 Jaeger[Jaeger Tracing]
140135 Grafana[Grafana Dashboards]
141- LogStore[Loki / OpenSearch / Elastic]
136+
137+ subgraph LogPipeline["Logs Pipeline"]
138+ Promtail[Promtail / FluentBit Log Agent]
139+ LogStore[Loki / OpenSearch / Elastic]
140+ end
141+ end
142+
143+ %% Data Layer (bottom)
144+ subgraph DataLayer["Data Layer"]
145+ DB[(PostgreSQL Database)]
142146 end
143147
144148 %% Request Flow
@@ -158,7 +162,8 @@ graph TB
158162
159163 %% Logs Flow
160164 App -->|stdout logs| Logs
161- Logs -.->|log agent| LogStore
165+ Promtail -.->|reads logs| Logs
166+ Promtail -->|pushes logs| LogStore
162167 Grafana -.->|logs query| LogStore
163168
164169 %% Styling
@@ -167,11 +172,16 @@ graph TB
167172 style MetricsEndpoint fill:#ffba08,stroke:#faa307,stroke-width:2px,color:#000
168173 style OTel fill:#f5a800,stroke:#d89000,stroke-width:2px,color:#000
169174 style Logs fill:#6c757d,stroke:#495057,stroke-width:2px,color:#fff
175+
170176 style DB fill:#336791,stroke:#2d5a7b,stroke-width:2px,color:#fff
177+
171178 style Prometheus fill:#e6522c,stroke:#c93a1f,stroke-width:2px,color:#fff
172179 style Jaeger fill:#60d0e4,stroke:#4db8ca,stroke-width:2px,color:#000
173180 style Grafana fill:#f46800,stroke:#d85600,stroke-width:2px,color:#fff
181+
182+ style Promtail fill:#1f78b4,stroke:#145684,stroke-width:2px,color:#fff
174183 style LogStore fill:#7cb342,stroke:#558b2f,stroke-width:2px,color:#fff
184+ style LogPipeline fill:#ffffff,stroke:#999,stroke-width:1px,color:#000
175185
176186 </pre>
177187 </div>
0 commit comments