Package org.apache.camel.spi
Interface BacklogTracerEventMessage
public interface BacklogTracerEventMessage
Represents a traced message by the BacklogTracer.
-
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptionasJSon()The event message as an org.apache.camel.util.json.JsonObject object.The correlation id to a parent exchange (if any)longTime elapsed for processing the given node (in millis).Optional endpoint metadata that is relevant to the service as key value pairs.Get the endpoint protocol the service is using such as http, amqp, tcp.Gets the endpoint remote address such as URL, hostname, connection-string, or cloud region, that are component specific.The endpoint uri if this trace is either from a route input (from), or the exchange was sent to an endpoint such as (to, toD, wireTap) etc.The exception as JSon (exception type, message and stacktrace)The exception as XML (exception type, message and stacktrace)The exchange idThe original incoming route idThe location of the trace (source code name:line) if possible.The content of the message as JSon (body and headers)The content of the message as XML (body and headers)The name of the thread that is processing the message, when this event was captured.Current route idlongTimestamp of the traced eventNode id where the message is being routed toNode label where the message is being routed tointNode processor levelParent node id for this nodeSpecial for choice where we want to know which when predicate was triggeredSpecial for choice where we want to know which when predicate was triggeredNode short name where the message is being routed tolonggetUid()Unique id of the traced messagebooleanWas there an exception thrown during processingbooleanisDone()Whether the message is done processing the given nodebooleanisFailed()Did the message fail during processing (i.e. was an exception thrown)booleanisFirst()Whether this is first message for a given route When a message is routed via multiple routes, then each route will have a first/last pair.booleanisLast()Whether this is last message for a given route When a message is routed via multiple routes, then each route will have a first/last pair.booleanWhether the endpoint is remote.booleanisRest()Whether this event was from a route that is created from Rest DSL.booleanWhether this event was from a route that is created from route template or kamelet.voidsetException(Throwable cause) The tracing caused an exception which can be capturedtoJSon(int indent) Dumps the event message as JSon.toXml(int indent) Dumps the event message as XML using theROOT_TAGas root tag.
-
Field Details
-
ROOT_TAG
- See Also:
-
TIMESTAMP_FORMAT
- See Also:
-
-
Method Details
-
getUid
long getUid()Unique id of the traced message -
isFirst
boolean isFirst()Whether this is first message for a given route When a message is routed via multiple routes, then each route will have a first/last pair. -
isLast
boolean isLast()Whether this is last message for a given route When a message is routed via multiple routes, then each route will have a first/last pair. -
getTimestamp
long getTimestamp()Timestamp of the traced event -
getLocation
String getLocation()The location of the trace (source code name:line) if possible. -
getRouteId
String getRouteId()Current route id -
getFromRouteId
String getFromRouteId()The original incoming route id -
isRest
boolean isRest()Whether this event was from a route that is created from Rest DSL. -
isTemplate
boolean isTemplate()Whether this event was from a route that is created from route template or kamelet. -
getToNode
String getToNode()Node id where the message is being routed to -
getToNodeParentId
String getToNodeParentId()Parent node id for this node -
getToNodeParentWhenId
String getToNodeParentWhenId()Special for choice where we want to know which when predicate was triggered -
getToNodeParentWhenLabel
String getToNodeParentWhenLabel()Special for choice where we want to know which when predicate was triggered -
getToNodeShortName
String getToNodeShortName()Node short name where the message is being routed to -
getToNodeLabel
String getToNodeLabel()Node label where the message is being routed to -
getToNodeLevel
int getToNodeLevel()Node processor level -
getExchangeId
String getExchangeId()The exchange id -
getCorrelationExchangeId
String getCorrelationExchangeId()The correlation id to a parent exchange (if any) -
getProcessingThreadName
String getProcessingThreadName()The name of the thread that is processing the message, when this event was captured. -
getMessageAsXml
String getMessageAsXml()The content of the message as XML (body and headers) -
getMessageAsJSon
String getMessageAsJSon()The content of the message as JSon (body and headers) -
getElapsed
long getElapsed()Time elapsed for processing the given node (in millis). -
isDone
boolean isDone()Whether the message is done processing the given node -
isFailed
boolean isFailed()Did the message fail during processing (i.e. was an exception thrown) -
hasException
boolean hasException()Was there an exception thrown during processing -
setException
The tracing caused an exception which can be captured -
getExceptionAsXml
String getExceptionAsXml()The exception as XML (exception type, message and stacktrace) -
getExceptionAsJSon
String getExceptionAsJSon()The exception as JSon (exception type, message and stacktrace) -
getEndpointUri
String getEndpointUri()The endpoint uri if this trace is either from a route input (from), or the exchange was sent to an endpoint such as (to, toD, wireTap) etc. -
isRemoteEndpoint
boolean isRemoteEndpoint()Whether the endpoint is remote.- See Also:
-
getEndpointServiceUrl
String getEndpointServiceUrl()Gets the endpoint remote address such as URL, hostname, connection-string, or cloud region, that are component specific.- Returns:
- the address or null if no address can be determined.
- See Also:
-
getEndpointServiceProtocol
String getEndpointServiceProtocol()Get the endpoint protocol the service is using such as http, amqp, tcp.- See Also:
-
getEndpointServiceMetadata
Optional endpoint metadata that is relevant to the service as key value pairs. Notice that the metadata is not supposed to contain sensitive security details such as access token, api keys, or passwords. Only share information that can be safely accessed and written to logs.- Returns:
- optional metadata or null if no data
- See Also:
-
toXml
Dumps the event message as XML using theROOT_TAGas root tag. The timestamp tag is formatted in the format defined byTIMESTAMP_FORMAT- Parameters:
indent- number of spaces to indent- Returns:
- xml representation of this event
-
toJSon
Dumps the event message as JSon.- Parameters:
indent- number of spaces to indent- Returns:
- JSon representation of this event
-
asJSon
The event message as an org.apache.camel.util.json.JsonObject object.
-