Claus Ibsen created CAMEL-23617:
-----------------------------------
Summary: camel-core - Add option to capture message payload size
for observation
Key: CAMEL-23617
URL: https://issues.apache.org/jira/browse/CAMEL-23617
Project: Camel
Issue Type: New Feature
Components: camel-core
Reporter: Claus Ibsen
When integrating then message payload sizes matters. Are they tiny, or big
payloads, or are there no additional headers, or is there bloat in the headers.
Do the payload vary over time and so on.
However not all message payloads can capture this information. The payload may
be Java objects, non repeatable streaming so the act of knowing the size would
cause to read the entire stream (in effecient), etc.
So we need a way to configure different settings/levels so the user can decide
what to use
* global for all routes
* per specified route
* filter based on content-type
* whether streamed payload is included (can use stream caching to re-read)
* etc
And this information should then be exposed in the message, maybe via a Trait
API or as java api on Message itself.
Also this information can then be used on JMX MBeans where we can use this to
calculcate min/max/mean payload and header sizes, per context, per route, and
even processor level
And then also expose this in DevConsoles so CLI and Camel TUI can show this.
And also add some SPI api in camel-api that allows to plugin custom logic so
end users can implement their own in case they have special kind of messages
and they want to calculcate payload size/headers for those.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)