Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more

Build agent observability around one trace for each user-visible agent execution, then add child spans for model calls, tool runs, retrieval, and downstream services. Emit structured logs with the active trace and span IDs, export both through OTLP, and keep prompts and tool content out of telemetry unless you have explicitly approved, filtered, access-controlled, and retention-limited capture.

This design lets an engineer answer practical questions—Which step was slow? Which tool failed? What did the agent decide immediately before the failure?—without turning every prompt, system instruction, or tool result into an uncontrolled data store.

What agent observability should show

OpenTelemetry defines a trace as a connected set of spans that records the path of an operation through a system. A span represents one operation, with timing, attributes, and optional events or structured messages. In an agent, the useful operation boundary is the complete task accepted from the user, not an individual model request.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Start a root span when your application accepts an agent task and finish it when the task returns a result or fails. Add child spans only for work that has meaningful duration or diagnostic value. A trace should let someone follow the execution from orchestration through model calls, retrieval, tool execution, and downstream service calls.

#1 Best Overall
Sale
Compressed Air Duster,130000RPM Super Power Cordless Air Duster,Rechargeable Brushless Blower,3 Gear Adjustable Blower with LED Light,Dust Remover for Computer/House/Outdoor/Car
  • Powerful Turbo Fan:CAGIWIRU Electric Air Duster have reached speed up to 130000RPM,Can efficient remove dust and debris.With LED light and Three Adjustable Speed to meet with different cleaning tasks.
  • With Attached USB C Fasting Charging cable.Charing 3 hours,Enjoy up to 240 minutes of use on the lowest setting, For third speed can use for 25mins.with four charging options to meet with your needs.
  • Wide Application: attached 5 different nozzles,making it suitable for a variety of scenes, such as car,pet, pc, keyboards, and other electronic devices. It also serves for office and home clean duster.
  • Handy Design & Portable:Cordless air duster electric nozzle is Light weight and small size, design and comfortable to hold and space saving, convenient to carry around. You can put it in your room or inside the car without taking up space.
  • Economical &Reusable: Built durable materials with a long-lasting battery,our CAGIWIRU air duster it's a sustainable alternative to disposable air cans.

OpenTelemetry’s primer describes the goal this way: “An application is properly instrumented when developers don’t need to add more instrumentation to troubleshoot an issue, because they have all of the information they need.” See the OpenTelemetry observability primer for the broader model.

Design the trace for one agent execution

Use a stable root span

Create one root span for each user-visible execution, such as agent.execute or agent.run. The name describes the operation, never a user, prompt, ticket number, or other request-specific value. Stable names make latency and failure comparisons useful in a backend.

Put filterable, relatively low-cardinality facts in attributes: the agent workflow or version, model-provider category, deployment environment, result status, retry count, and whether a tool was invoked. Follow applicable OpenTelemetry semantic conventions instead of inventing a different spelling for every service.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Add child spans around meaningful work

Child operation What the span establishes Useful metadata
Model request When a model call started, how long it took, and whether it succeeded Model identifier, provider category, request type, response status, retry number, and usage fields when supported by your instrumentation
Tool execution Which tool operation consumed time or failed Stable tool name, validation outcome, timeout or error category, and result status
Retrieval Where retrieval latency and failures occurred Retriever or index identifier, result count, filter mode, and status
Downstream service call External work performed on the agent’s behalf Service role, operation name, status code category, and timeout state
Planning or handoff step Distinct orchestration work that deserves timing and failure visibility Workflow version, branch outcome, and bounded counters

Use the same operation name for equivalent work across requests. Do not put a full URL, user ID, prompt text, tool arguments, or a unique request token in a span name. Those values either belong in carefully governed attributes or in filtered logs, and high-cardinality values can make queries expensive and confusing.

The OpenTelemetry trace semantic conventions explain span structure and naming principles. A span can also contain point-in-time events, but events do not replace child spans when an operation has its own duration, outcome, or nested work.

Rank #2
EVEO® Screen Cleaner Spray Kit (Streak-Free) TV Screen Cleaner for Smart TV, Lcd, LEd, Oled | Computer Screen Cleaner Spray and Wipe Microfiber Cloth - TV, Monitor, Laptop, iPad, Car - 6.7oz 1 Pack
  • Screen Cleaner is Your Screen’s New Bestfriend! - EVEO is proud to present a screen cleaner that’s perfectly suited for your TV. Meet your new screen cleaner, computer screen cleaner, laptop cleaner, iPad cleaner, Macbook,tv cleaner or any other electronic device. Our screen cleaner spray and wipe along with the included plush microfiber cloth, easily removes dust, fingerprints & other smudges on the screen’s surface. Clean effectively for a streak-free screen
  • Gentle on your Screens - Our screen cleaner spray and wipes is compatible to be used even for the most sensitive LCD, LED, CRT, and OLED screens in proper use. Be at ease knowing that this product is compatible with all the major brands: LG, SONY, Samsung, Sharp, iPad, iPhone, Android screens, Kindle, PC monitors - we’ve got you covered! Can be used as LCD screen cleaner, tv cleaner, smart tv screen cleaner, and more
  • Premium Super Soft Plush Microfiber Cloth - Included in this efficient screen cleaning kit. This screen cleaner spray and wipe has our signature plush microfiber cloth specially designed to comply with screens and monitors and leave them streak-free. Has been shown to effectively absorbs stubborn stains, zero streaks, and no fiber shedding. Always use this together with our screen cleaner for the best results
  • Easy-to-Use Screen Cleaner Kit + microfiber cleaning cloth - The EVEO Screen Cleaning Kit will easily be your new favorite tool when it comes to taking care of the things you love most, quick and easy solution for a streak-free screen. Simply screw on the sprayer gun on the screen cleaner bottle. Spray the cleaning liquid onto the microfiber cloth, then wipe the screen until desired cleanliness & shine is achieved.
  • Quality Screen Care Kit Worth Purchasing - Enjoy a convenient Screen Cleaner anytime, anywhere you need it. Your satisfaction is our top priority. We stand behind the quality of our products and that’s why, you shouldn’t be worrying at all. We manufacture the Best Screen Cleaner. and can be used for laptop cleaning kit, laptop screen cleaner, tv screen cleaner for smart tv. MacBook screen cleaner, monitor cleaner or screen cleaner spray for electronic devices with microfiber cleaning cloth

Keep structured logs connected to the trace

Separate timed operations from events

Spans answer “how long did this operation take and what was its outcome?” A structured log or span event answers “what happened at this moment?” Use logs for validation failures, policy decisions, tool-selection decisions, retries, circuit-breaker changes, and other diagnostic events that do not need their own duration.

Emit records as structured fields rather than free-form sentences. A useful record has a severity, timestamp, event name, concise message, outcome, and bounded attributes. Keep the event name stable—for example, tool.validation_failed—and put changing values in fields.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Preserve trace and span context

When a log is emitted while a span is active, include the active trace ID and span ID. This correlation lets an engineer open a trace and find the exact log records generated during a model call or tool run. OpenTelemetry’s logging specification describes this context relationship and integration with existing logging libraries in OpenTelemetry Logging.

If your pipeline reads files, parsing is an additional failure point: multiline messages, missing fields, and inconsistent formats can break correlation. Prefer emitting structured records directly through a supported logging integration or the Logs API. If file collection is unavoidable, define and test a strict format that carries the context identifiers on every record.

{
  "timestamp": "2026-10-16T12:00:00Z",
  "severity": "WARN",
  "event.name": "tool.validation_failed",
  "trace_id": "active-trace-id",
  "span_id": "tool-span-id",
  "tool.name": "calendar.lookup",
  "error.type": "invalid_arguments",
  "retryable": false
}

The record above is an illustrative shape, not a requirement to copy these exact field names where a current semantic convention provides a better one. Keep identifiers and metadata that are safe to retain; do not add the rejected arguments merely because they would make a log look more complete.

Rank #3
Sale
BladeHawks RGB Gaming Mouse Pad Extra Large Extended 31.5x12 Inch-Black | LED mouse pad with 14 lighting modes, covers keyboard & mouse, anti-slip rubber base, waterproof surface, USB powered
  • 【Large size】:Measuring 800 x 300 mm/ 31. 5×12 inches, which is wider and taller than others. Large mouse pad can perfectly fit your keyboard and mouse of any size, and there is also ample space for peripherals such as phones, tablets, etc.
  • 【LED backlight mouse pad】:Blade Hawks RGB mouse pad provides 7 static modes and 7 dynamic modes will give you the options you are looking for. Power-off memory function remembers the last lighting mode you selected. The super glow fiber Chroma will give you a colorful gaming setup that you want.
  • 【Anti-slip rubber base】:Made from Natural rubber, this gaming mousepad will firmly grip your desktop, allowing you to enjoy the ultimate precision in the games you are most passionate about. It also comes with a texture that enhances this ability even further.
  • 【Smooth and waterproof surface】: Micro-textured cloth surface, for extremely precise mouse control and a smooth movement. When liquid splashes on the gaming mouse pad, it forms water droplets and slides down. Will not delay your work or gameplay.
  • 【Plug and play】: This mouse and keyboard pad is powered by USB, plug and play, no driver required. One button control light modes. Press one time to change the lighting mode, press twice to change the brightness, press and hold about 3 seconds turn ON/OFF.

Apply current semantic conventions

Semantic conventions give common names and meanings to telemetry fields so instrumentation and backends can interpret data consistently. Use generic conventions for common operations and the current GenAI conventions for model and agent-specific data where they apply.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The semantic-conventions index displays version 1.44.0 at the time of access, but that number is a version marker, not a permanent contract. The index points GenAI guidance to a separate repository, so check the current GenAI source rather than treating an older registry page as complete. Start with OpenTelemetry semantic conventions.

Agent-specific conventions are still evolving. OpenTelemetry’s 2025 discussion, AI Agent Observability – Evolving Standards and Best Practices, covers built-in and external instrumentation and the continuing standardization work. Record which convention version and instrumentation package your service uses, and review changes when you upgrade.

Build the instrumentation in an explicit sequence

  1. Define the boundary. Start the root span at the request handler, queue consumer, or other component that accepts the agent task. End it on success, cancellation, timeout, or uncaught failure. Ensure every exit path closes the span.
  2. Choose stable names. Name the root and child spans by operation, such as agent.execute, llm.request, retrieval.search, or tool.execute. Keep user and request-specific values out of names.
  3. Instrument meaningful child work. Wrap model requests, tool executions, retrieval, planning branches with real work, and downstream calls. Do not create a span for every trivial helper function; excessive spans obscure the execution and increase storage.
  4. Set outcomes on every span. Record success, expected rejection, cancellation, timeout, or error. Attach an error type and safe diagnostic detail. Preserve exception information according to your language’s OpenTelemetry integration.
  5. Record bounded attributes. Add dimensions needed to filter and compare, such as workflow version, model identifier, tool name, environment, retry number, and status category. Avoid raw prompts, completions, credentials, unrestricted tool arguments, and high-cardinality identifiers by default.
  6. Emit decision and failure logs. Log events such as policy denials, tool-validation failures, retries, fallback selection, and downstream errors. Emit them while the relevant span is active so trace and span IDs are attached automatically.
  7. Export through OTLP. Configure a traces-and-logs exporter that sends to an OTLP-compatible endpoint. During development, point it at a local viewer; in production, use a destination whose retention, access controls, deployment model, and operating cost fit your requirements.
  8. Verify end to end. Run a successful task, a tool failure, a timeout, a retry, and a cancellation. Open each trace, confirm child-span timing and outcomes, and search for correlated logs using the trace ID and span ID.

A language-neutral control flow looks like this:

root = tracer.start_span("agent.execute")
try:
    add_safe_attributes(root, workflow_version, environment)
    result = run_agent(root)  # creates child spans for model, retrieval, tools
    root.set_status("OK")
    return result
except Cancelled as error:
    root.set_status("CANCELLED")
    logger.info("agent.cancelled", exc_info=error)
    raise
except Exception as error:
    root.record_exception(error)
    root.set_status("ERROR")
    logger.error("agent.failed", error_type=classify(error), exc_info=error)
    raise
finally:
    root.end()

Adapt the lifecycle to your framework’s API. The important behavior is that the root span encloses the complete execution, child spans enclose real operations, and logs inherit the active context.

Choose an instrumentation path

There is no universal winner between framework-provided instrumentation and direct OpenTelemetry instrumentation. Compare the following before enabling either path.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #4
Sale
Vaydeer Wrist Rest for Keyboard and Mouse, Computer Ergonomic Wrist Support Pad, Soft Memory Foam Arm Cushion for Desk, Palm Hand Office Laptop Typing
  • 【Softer and More Comfortable】Vaydeer wrist rest has unique diamond pattern, which is the combination of softness and aesthetics. The materials of wrist rest are improved into higher quality memory foam and covered with silky smooth lycra. The computer wrist rest makes you as comfortable and cushiony as like rest your wrists on clouds.
  • 【Ergonomic Wrist Saver】The wrist rests for keyboard and mouse comes with a 17.32×3.15×0.83 inch keyboard wrist pad and a 5.94×3.15×0.83 inch mouse wrist support. Based on ergonomic design, the unique concave shape is the perfect fit for your wrist joints. The wrist rest pad fits most computer keyboards and laptops, improve hand and wrist posture, release your wrist and arm stress.
  • 【Non-Slip Rubber Bottom】Featuring an anti-skid silicone base on the bottom, this wrist keyboard support stays firmly in place on your desk, preventing the padding from sliding around, ensuring stable and consistent wrist support during extended computer sessions.
  • 【Better Experience & Pain Relief】Our keyboard arm rest is beneficial to alleviate the soreness caused by direct contact and friction between your arm and a hard desk surface, reducing the risk of wrist fatigue or carpal tunnel. The soft texture of memory foam can evenly distribute the pressure around your wrists and provide good support with just enough give.
  • 【Helpful in Multiple Scenarios】Whether you're working, studying, writing, typing, gaming, this keyboard and mouse rest combo is an essential accessory to add comfort and support to your hands and wrists. It’s also a great gift for men, women, family, friend, coworker, gamer, teacher, etc.
Decision axis Built-in framework instrumentation External OpenTelemetry instrumentation
Setup effort Often quicker when your framework already emits spans and logs Requires wiring providers, context propagation, and instrumentation around framework operations
Data control Field names and captured content may be determined by framework defaults More direct control over attributes, filters, processors, and destinations
Convention support Depends on the framework’s release and schema implementation Lets you target current conventions, but you must maintain the mapping
Coverage May understand framework-specific model, tool, and agent events automatically Can cover custom tools and orchestration that the framework does not know about
Duplication risk Can overlap with another library already instrumenting the same calls Can create duplicate spans if built-in instrumentation remains enabled
Destination flexibility Varies by framework and configuration Typically routes through standard OpenTelemetry exporters and OTLP

Inventory what your framework already emits before adding a second layer. If one model request appears twice in a trace, disable one instrumentor or configure a clear parent-child relationship. Check the framework’s current documentation for supported versions and fields; coverage changes as agent conventions evolve.

Export traces and logs through OTLP

OpenTelemetry’s GenAI walkthrough states that any OTLP-compatible backend can receive GenAI telemetry. A local development path is Aspire Dashboard, described in that walkthrough as a free, open-source viewer with trace, metrics, and structured-log views. The walkthrough is available at Inside the LLM Call: GenAI Observability with OpenTelemetry.

Use a local dashboard to check instrumentation before sending data to a shared or hosted system. For a production destination, evaluate:

  • OTLP support: whether it accepts the protocol and signal types you emit, including traces and logs.
  • Cross-signal navigation: whether a trace can be opened and its related log records found without manual ID copying.
  • Deployment model: hosted service, self-managed installation, or a hybrid that matches your network and residency requirements.
  • Retention and deletion: how long each signal is stored, how deletion requests work, and whether logs and traces have separate policies.
  • Access control: least-privilege roles, tenant or project isolation, audit trails, and encryption.
  • Operational fit: alerting, ingestion limits, outage behavior, and the team’s ability to operate the system.

Do not select a destination solely because it displays a trace. Confirm that the logs arrive with context, that failed exports are visible, and that an exporter outage does not block the agent’s user-facing request unless your reliability design explicitly requires that behavior.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Make content capture an explicit privacy decision

Metadata-only telemetry is the safer starting point. The 2026 walkthrough says its example captures metadata by default; opting into content adds prompts, system prompts, tool schemas, arguments, and results. Those fields can contain personal data, secrets, customer records, proprietary instructions, or regulated information.

Best Value
Sale
Under Desk Cable Management Tray No Drill, Metal Mesh Cable Management Under Desk with Clamp Mount, 2 Hole Cable Tray with Wire Management and Cord Organizer for Home Office Standing Desk
  • 【No Drill Mounted】Cable management tray can be assembled in as little as 3 minutes or less-simply. Side clips easily clampe the edge of desk, pass through the holes on the sides, and secure excess cables with baskets. Desk cable management supports inward or outward installation to meet your needs in different scenarios, and provides you with great convenience when collecting and organizing wires.
  • 【Rubber Pad Protects Desk】Wire organizer under desk built-in soft rubber pads on the clamp protect your desk from scratches, so you will not damage your furniture or office.
  • 【Sturdy and Beautiful】Cord management under desk is made of high-quality carbon steel and holds about 15 lbs. The wire basket has 2 holes on each side of the tray to enable your cables to pass freely. Cable baskets are suitable for desk thickness use from 0.4" to 2.4".
  • 【Space Saving & Keep Organized】Desk cable management tray holds all your power cords, outlet strips, USB hubs and computer transformers hidden from your feet, and the data cables will not enter the vacuum cleaner to keep your desk clean and tidy. Desk wire organizer is also suitable for use in the kitchen and outdoors.
  • 【Reduce Safety Risks】Cable tray under desk keeps all plugs away from your kids, no more worry about tripping. Using 2 holes wire tray saves extra space, helps you easily cabling and wire protection. The mesh design is not easy to accumulate dust, but avoids safety accidents caused by messy wires.

Before enabling content capture, document the purpose, permitted fields, owners, access roles, retention period, and deletion process. Treat content capture as a separate change from basic instrumentation.

Use a capture policy

  • Default to off. Capture operation names, timings, statuses, bounded metadata, and correlation IDs without raw content.
  • Allow-list fields. If a diagnostic case requires content, specify exactly which field and which workflow may emit it.
  • Filter before export. Remove credentials, authentication headers, payment data, personal identifiers, and other sensitive patterns before a record leaves the process.
  • Truncate deliberately. Set a maximum size for prompts, completions, arguments, and results. Truncation should be marked so investigators know the value is incomplete.
  • Protect access. Restrict content-bearing telemetry to the smallest group and audit access.
  • Limit retention. Keep detailed content for the shortest period that supports the approved purpose; retain aggregate timing and outcome data separately when useful.
  • Test redaction. Send synthetic secrets and personal data through every model, tool, retry, and error path and verify that filters also handle exceptions and nested payloads.

Even metadata can identify a customer or workflow when combined with timestamps and IDs. Review the entire trace context, not only the prompt field, before treating metadata as harmless.

Validate the implementation with failure-focused checks

Trace completeness

  • A successful execution has one root span and expected child spans for each model, retrieval, tool, and downstream operation.
  • The root span remains open until the final response, including asynchronous tool work that belongs to that execution.
  • Every error, timeout, cancellation, and retry has an explicit outcome rather than appearing as an unexplained gap.

Log correlation

  • Open a child span and find its validation, retry, or failure logs by trace ID or span ID.
  • Confirm that logs emitted from worker threads, callbacks, and asynchronous tasks preserve context; missing context often indicates a propagation boundary.
  • Check that a file collector or parser has not dropped IDs, severity, timestamps, or multiline records.

Data-safety checks

  • Inspect traces generated by prompts containing fake credentials, personal data, and long tool results.
  • Verify that rejected arguments and exception messages are filtered as aggressively as successful payloads.
  • Confirm that a content-capture configuration change is reviewed and separately approved from routine telemetry changes.

Performance and volume checks

  • Measure telemetry overhead during long agent runs and high-concurrency tool execution.
  • Watch for unbounded attributes, unique span names, duplicate instrumentation, and logs emitted inside tight token or polling loops.
  • Define behavior when the collector or backend is unavailable: buffering, sampling, dropping low-value records, or failing closed for sensitive content.

Common failure modes and fixes

One giant span hides the problem

If the trace contains only the root span, add child spans around model calls, retrieval, tools, and downstream services. Keep the root for the user-visible outcome, but do not force investigators to infer every duration from one total.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Every span has a unique name

Replace names containing user text, IDs, URLs, or timestamps with stable operation names and bounded attributes. This restores useful grouping and prevents an accidental high-cardinality index.

Logs appear in a separate search

Check context propagation at the logger call site and across asynchronous boundaries. Then check the exporter and collector mapping for trace and span IDs. A log that was emitted without active context cannot be correlated later unless your application adds a safe reference explicitly.

Two copies of each operation appear

List enabled framework and external instrumentors. Disable one overlapping integration or configure one as the authoritative source. Duplicate spans inflate volume and can make a single model call look like two requests.

Investigators demand prompts in every trace

Do not enable global content capture as a shortcut. Use a narrowly scoped, reviewed diagnostic mode with field allow-lists, redaction, truncation, restricted access, and short retention. Return to metadata-only capture when the investigation ends.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

A practical operating checklist

  • One stable root span represents each user-visible agent execution.
  • Child spans cover model requests, retrieval, tools, and consequential downstream work.
  • Span names describe operations; stable attributes carry filterable metadata.
  • Structured logs carry the active trace ID and span ID.
  • Spans represent timed work; logs or events represent point-in-time occurrences.
  • Generic and GenAI semantic conventions are checked against their current sources.
  • Only one instrumentation layer owns each operation.
  • Traces and logs are exported through OTLP and can be explored together.
  • Metadata-only capture is the default; content capture has an explicit policy.
  • Success, failure, timeout, retry, cancellation, redaction, and exporter-outage paths are tested.

When these conditions hold, an engineer can move from a user-visible failure to the responsible operation and its diagnostic events without collecting more sensitive content than the investigation requires.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.