Claus Ibsen created CAMEL-26691:
-----------------------------------
Summary: camel-jbang - a timeline of an integration: errors and
route outcomes per second, with chaos rules as a layer
Key: CAMEL-26691
URL: https://issues.apache.org/jira/browse/CAMEL-26691
Project: Camel
Issue Type: Improvement
Components: camel-jbang
Reporter: Claus Ibsen
Fix For: 4.24.0
A view that shows the last minute of an integration on one time axis, one
column per second: what went wrong (the cause) on top, and what it did to the
routes (the effect) under it. It does not need camel-chaos: without chaos the
cause is the real errors; with chaos the rules are one more layer.
{noformat}
Timeline - last 60s - errors/s -- # HttpOperationFailedException 500 =
ConnectException
2 | ##########====== |
1 | ##########====== |
+------------------------------------------------------------+
orders: # completed = recovered % handled (DLQ) . failed
2 |########################===%%%%%%%%%%%%%####################|
1 |###########################%%%%%%%%%%%%%####################|
+------------------------------------------------------------+
inventory ############################################################ 2/s ok
stock ########################________________#################### 0/s
during the outage
~ stock ________________________^^^^^^^^^^^^^^^^____________________ mean
time: slow first, then down
shipping ########################________________####################
nothing to ship
dlq ________________________################____________________ 2/s to
the DLQ
-60s -30s now
{noformat}
(in the UI: blocks and sparklines in colours, see the design page below)
h3. What it shows
* *The cause band*: the errors per second, stacked by exception type (from the
errors the Errors tab lists). With camel-chaos on, the faults of each rule
({{faultsPerSecond}} of the live state, CAMEL-26678) are a layer of their own,
marked so an injected fault is told apart from a real one, and the down window
of a stall or lifecycle rule is shaded.
* *The effect bands*: per route, the exchanges per second that completed, were
recovered by redelivery, were handled by the error handler (dead letter
channel) or failed; the in-flight count; the mean processing time as a
sparkline. They come from the route statistics in the status file, as the
difference from one second to the next (as the Overview chart gets its rate).
The statistics have {{failuresHandled}} and {{redeliveries}} next to the
totals; the TUI parses {{exchangesTotal}}, {{exchangesFailed}},
{{exchangesInflight}} and {{meanProcessingTime}} today and would read the other
two as well.
* A band that is flat (nothing happened) folds to one line, so a healthy
integration is a calm screen.
h3. Where
* A view of the selected integration, under Observability in the More menu, or
a mode of the Overview chart (which has chart modes already).
* The chaos screen (CAMEL-26608) reuses it as its "cause and effect" view (key
{{g}}), limited to the routes the rules touch.
Design page with the sketches (sections 5b and 5c):
https://claude.ai/artifact/8nzJQAAjBpFWVKrexaoPZT
_Claude Code on behalf of Claus Ibsen_
--
This message was sent by Atlassian Jira
(v10.3.26#10030026)