A water-utility agent pipeline uses Service Bus. How should send and receive be traced with OpenTelemetry?
Select an answer to reveal the explanation.
Short Explanation
Messaging spans are breadcrumbs on the pipe from pump to plant—send and receive stay connected in one trace.
Full Explanation
A water-utility agent pipeline that uses Service Bus should instrument Service Bus send and receive with OpenTelemetry messaging semantic conventions. Those conventions attach messaging attributes (destination, operation type, message identifiers where appropriate) and propagate trace context so a single distributed trace can follow a work item from producer through the bus to the consuming agent stage. For municipal water workflows, that end-to-end visibility is how ops proves where delay or loss occurred in the pipe.
Logging only free-text console lines with no span context on messaging calls yields uncorrelated text that cannot stitch send to receive. Instrumenting only browser page loads and ignoring Service Bus operations misses the server-side backbone of the agent pipeline. Disabling exporters whenever Service Bus traffic is high drops telemetry exactly when diagnosis is most needed during utility load spikes.
Exam caveat: Messaging semantic conventions differ slightly by language/library, but the goal is consistent span kinds and context propagation across send, process, and settle/complete paths. Capturing full message payloads in attributes can leak sensitive utility or resident data—prefer identifiers and operational fields. Ensure baggage/traceparent propagation is enabled on both producer and consumer hosts.
Operational check: Produce a test message on the water-utility pipeline, confirm a single trace shows linked send and receive/process spans with messaging attributes populated, verify exporters remain on during peak, and alert on rising consumer lag or failed settlement spans. During an incident, use those spans to see whether delay is in publish, broker dwell, or consumer processing.