Doca Telemetry Traceback Application
NVIDIAOfficialCreated by NVIDIA
- Skill
- Tool integration
- Cloud and DevOps
- Apache-2.0
- Medium risk
AutoGineer summary
Written by AutoGineer from the skill’s own files, not by the author
The DOCA Telemetry Traceback application is a tool for monitoring telemetry data locally on BlueField DPUs or ConnectX NICs. It allows users to define rules for detecting trends and threshold breaches, capturing both pre-event history and active-event data into a log file. This skill provides guidance on configuring the application via JSON, compiling it from source, and executing it on hardware, while maintaining clear boundaries with other DOCA components like the Telemetry Diag API or installation procedures.
What it does
- Configures telemetry monitoring rules and data IDs via JSON.
- Supports compilation of the application from source code.
- Executes the application on BlueField DPU or ConnectX NIC hardware.
- Captures pre-event and active-event telemetry data to log files.
- Provides troubleshooting steps for empty logs or configuration mismatches.
When to use it
- When you need to monitor telemetry trends locally on a DPU without streaming raw data.
- When you need to set up rules to trigger logs based on threshold breaches.
- When you need to compile the Telemetry Traceback application from source.
- When you are diagnosing issues like empty event logs or unsupported data IDs.
Advantages
- Enables local telemetry processing and traceback logging on supported hardware.
- Provides structured guidance for rule definition and application execution.
- Maintains clear separation between application usage and low-level API programming.
- Integrates with standard DOCA development workflows.
Usage examples
- “How do I set up local telemetry monitoring for port_0_rx_bytes on my DPU?”
- The agent provides the necessary JSON configuration structure and rule definitions to monitor the specified data ID and log history around threshold breaches.
- “Why is my differential_greater_than rule not triggering in the event log?”
- The agent explains the requirement for sample history depth and delta logic, guiding you to verify your configuration parameters.
Install
Download the skill as a ZIP:
https://autogineer.com/agent-skills/nvidia/doca-telemetry-traceback-application/downloadUnzip it into the cross-client skills folder of your project:
mkdir -p .agents/skills && unzip doca-telemetry-traceback-application.zip -d .agents/skills
Documentation by NVIDIA
DOCA Telemetry Traceback Application
Scope boundaries
These requests are out of scope: say so, name the skill that owns the request, and stop.
the DOCA Telemetry Diag programming API and raw counter reads:
doca-telemetry/SKILL.md.DOCA install and bring-up:
doca-setup/SKILL.md.which DOCA version is installed, version consistency:
doca-version/SKILL.md.general DOCA orientation and documentation lookup:
doca-public-knowledge-map/SKILL.md.
Examples
“Can I monitor telemetry trends on the DPU without streaming all raw data?” — in scope. Configure rules and sample history depth; do not use the DOCA Telemetry Diag API directly here.
“The event log is empty even though a threshold was crossed.” — check rule
comparison_typeandsample_history_depth; differential rules require depth samples before functioning.“How do I build only this application?” — use the Meson isolation flags; see the tasks companion.
“I'm writing my own C code against the DOCA Telemetry Diag library to read counters.” — that part is
doca-telemetry's: the application uses Diag internally, but programming the Diag API is not this skill. Namedoca-telemetryfor it and do not write Diag API code here; handle every other part of the request as this skill describes (for example,--force-ownershipstill goes throughdoca-hardware-safety).
Quick facts
The authoritative source for the binary name, flags, and paths is the public
DOCA Telemetry Traceback guide for the release; confirm them with the installed
tool's --help before quoting any of them. As that guide describes it:
Standalone application on a BlueField DPU or ConnectX NIC; four components: DOCA Telemetry Diag instance, sample history circular buffer, rule collection, and events log file.
Configuration JSON fields:
diag_sample_period_ns,sample_history_depth,data-idsarray, andrulesarray. Rule types areincremental_greater_than(inc_gt),differential_greater_than(dt_gt),differential_less_than(dt_lt),greater_than(gt), andless_than(lt).The circular buffer size is automatically doubled based on the requested depth to ensure equal historical and active event data.
Requires sudo/root privileges; mandatory
-dPCIe address and-rrules JSON; optional--event-logand--force-ownership.Unsupported data IDs are reported; adjust inputs accordingly.
The application stops if the actual sample size or period does not match the requested parameters.
--force-ownershipchanges diag domain ownership; route any use of it throughdoca-hardware-safety/SKILL.md.
Instructions
Follow Loading order below. Open the tasks companion for configure / build / run / debug. Open the capabilities companion for what the application monitors and logs. Do not open every companion file.
Where to start: This is a tool skill for invoking the DOCA Telemetry
Traceback application — the local telemetry monitoring and traceback logging
service that processes telemetry data on the device and writes event logs
when user-defined rules trigger. Open the tasks companion and start at
## configure for the JSON configuration and rule definitions, then
## run for compile and execution. Open the capabilities companion when
the question is what data can be monitored, what rules evaluate, and what
the event log contains. If the user has not installed DOCA yet, route to
doca-setup/SKILL.md first. If the user asks about version, route to
doca-version/SKILL.md. If any step changes hardware or firmware state
(e.g., --force-ownership), route to
doca-hardware-safety/SKILL.md.
How to use this skill. Read this file, then search the companion file
for the ## <name> heading the question needs and read that whole section.
Answer completely from it, quoting only its symbols and commands. Do not
browse docs; use the entry points in doca-public-knowledge-map. Give
environment checks as commands for the user's DOCA host. For out-of-scope
requests, name the skill that owns them and stop.
Compile and run commands are documented in the tasks companion; the
authoritative source is the public guide. The application is distributed as
source and must be compiled before execution. The source is located at
/opt/mellanox/doca/applications/telemetry/traceback/.
Example questions this skill answers well
The CLASSES of telemetry-traceback questions this skill is built to answer, each with one worked example. The class is the load-bearing piece; the worked example is one instance.
“How do I set up local telemetry monitoring with traceback logging?” — worked example: “I want to monitor
port_0_rx_byteson the DPU and log history before and after it exceeds 1 MB/s”. Answered by the JSON configuration and rule definitions in the tasks companion.“What rule types are available and when do they activate/deactivate?” — worked example: “I need a rule that triggers each time a counter increases by a threshold, not just when it exceeds a fixed value”. Answered by the rule definitions in the capabilities companion.
“Why is my differential rule not triggering?” — worked example: “I configured
differential_greater_thanbut the event log stays empty”. Answered by the depth requirement and delta logic in the capabilities companion.“How do I compile and run only this application?” — worked example: “I want to build just the Telemetry Traceback app, not all DOCA applications”. Answered by the Meson isolation flags in the tasks companion.
“What does the event log contain when multiple events overlap?” — worked example: “Two rules trigger at the same time; how are begin/end markers written?”. Answered by the event log lifecycle in the capabilities companion.
“How do I know if my device supports the data IDs I configured?” — worked example: “The application reports unsupported IDs; what do I do?”. Answered by the unsupported data ID handling in the tasks companion.
When to load this skill
Load this skill when the user is — or the agent needs to — drive the DOCA Telemetry Traceback application on a real host or BlueField Arm with DOCA installed (or inside the public NGC DOCA container with the right device passthrough). Concretely:
Configuring JSON rules and data IDs for local telemetry monitoring.
Compiling the application from source.
Running the application with a PCIe address and rules file.
Diagnosing an empty event log, unsupported data IDs, or sample size/period mismatch.
Understanding rule activation/deactivation semantics.
Cross-checking event log output against configured rules.
Do not load this skill for general DOCA orientation, the DOCA Telemetry
Diag programming API, raw telemetry collection, DOCA install, or version
questions. For those, route to
doca-public-knowledge-map/SKILL.md,
doca-setup/SKILL.md, or
doca-version/SKILL.md.
What this skill provides
This is a thin loader. Substantive material lives in two companion files:
the capabilities companion — what the application monitors and logs: the four components, configuration schema, rule definitions with activation/deactivation triggers, event log lifecycle, unsupported data ID behavior, version overlay that redirects to
doca-version/SKILL.md, and the safety policy for--force-ownership.the tasks companion — step-by-step workflows for the in-scope task verbs:
configure(JSON config, rule selection),build(Meson compile all or only this app),run(execution syntax, root, PCIe address),debug(empty log, unsupported IDs, sample mismatch), plus aCommand appendixthat honors the bundle'sdoca-structured-tools-contract/SKILL.mdpreamble.
The skill assumes a host or BlueField where DOCA is already installed (or the public NGC DOCA container is running with the right device passthrough) and the operator has root privileges as required by the public guide.
What this skill deliberately does not ship
This skill is agent guidance, not a samples or scripts bundle. To keep the boundary clean, it deliberately does not contain — and pull requests should not add:
Verbatim flag inventories, subcommand names, or output column names. The public DOCA Telemetry Traceback guide and the installed
--helpon the user's version are the joint source of truth; copying them here pins the skill to one release and silently rots when the application evolves. The skill routes the agent at those sources instead.Pre-baked example output. Output is install-, version-, and device-specific. A captured example will mislead an operator on a different platform / state.
Wrappers, parsers, or scripts in any language that consume the application's output. The output format is documented; users who want to script against it should read the live guide and write the parser against their installed version.
A
samples/orreference/subtree. This is a thin loader for a documented DOCA artifact; substantive material lives on the public page and in--help.
Loading order
Read this skill first to confirm the user's question is in scope (the user wants to monitor telemetry data locally and capture traceback event logs, not use the DOCA Telemetry Diag programming API directly).
For what the application monitors, the configuration schema, rule definitions, event log lifecycle, unsupported data ID behavior, version availability, and safety posture, see the capabilities companion.
For the documented invocations and workflows —
configure,build,run,debug, plus theCommand appendix— see the tasks companion.
Related skills
doca-hardware-safety/SKILL.md— the bundle's hardware/firmware state-change gate. The Telemetry Traceback application is read-only for telemetry data, but the--force-ownershipflag changes diag domain ownership; route any use of that flag through this skill before execution.doca-version/SKILL.md— canonical DOCA version-handling rules. The## Version compatibilitysection in the capabilities companion is a concise overlay that redirects here for the body.doca-setup/SKILL.md— env preparation, install verification, and the I have no install yet path with the public NGC DOCA container. This skill assumes its preconditions are satisfied.doca-public-knowledge-map/SKILL.md— routing to the public DOCA Telemetry Traceback guide and the rest of the public DOCA documentation set. The canonical URL is reached viadoca-public-knowledge-map ## DOCA tools(doca-public-knowledge-map/SKILL.md#doca-tools).doca-structured-tools-contract/SKILL.md— the bundle's detect → prefer → fall back → report contract for structured helper tools. The Command appendix in the tasks companion honors this contract.
Files
- ATTRIBUTION.mdAdded by AutoGineer966 B
- BENCHMARK.md10.8 KiB
- CAPABILITIES.md15.9 KiB
- LICENSELicence file added by AutoGineer11.2 KiB
- SKILL.md12.4 KiB
- SKILLCARD.yaml2.6 KiB
- TASKS.md19.5 KiB
- evals/evals.json3.6 KiB
- skill-card.md5.0 KiB
- skill.oms.sig5.2 KiB
TASKS.md
DOCA Telemetry Traceback Application — Tasks
Where to start: The verbs that carry real workflow content are
## configure, ## build, ## run, and ## debug. The ## modify
verb carries a routing stub because the thing the agent modifies is the
JSON configuration and rule definitions, not the application source —
the Telemetry Traceback application is distributed as source code and
must be compiled, but source modification is out of scope for this
skill and routes to the DOCA Reference Applications page and development
tips. The ## test verb is an iterative loop (configure → run → observe
event log → adjust, with every state-changing operation re-opening the
smoke), not a one-shot pass — see the eval-loop overlay in ## test
below.
This file is loaded by SKILL.md after
CAPABILITIES.md. It walks the agent through the six
task verbs every artifact in this bundle exposes
(configure / build / modify / run / test / debug), then explicitly
defers task verbs that do not belong here, and ends with the
Command appendix honoring the bundle's
doca-structured-tools-contract/SKILL.md
preamble.
configure
The Telemetry Traceback application's configuration is the JSON file
documented in
CAPABILITIES.md ## Capabilities and modes —
diag_sample_period_ns, sample_history_depth, data-ids, and
rules — layered on top of the precondition that DOCA is installed and
the application has been compiled. The application does not carry a
separate daemon contract of its own beyond the JSON file passed via
-r/--rules; if that flag is not provided, the application defaults
to rules.json in the working directory.
Steps the agent should walk the user through, in order:
Confirm the DOCA install and version compatibility. Walk
doca-version TASKS.md ## configure(doca-version/TASKS.md#configure) to capture the installed DOCA version, then apply the Telemetry Traceback overlay inCAPABILITIES.md ## Version compatibility: confirm the application source is present at/opt/mellanox/doca/applications/telemetry/traceback/and that the installed version supports the rule types and flags the user plans to use. If the artifact is not present on the install profile, route todoca-setup ## install(doca-setup/TASKS.md).Identify the device and the data IDs to monitor. The application reads telemetry from a specific device via the PCIe address passed at run time, but the JSON configuration must name the data IDs to sample. Each
data_idis a 16-character hexadecimal value in the format0x[0-9a-fA-F]{16}. Not all data IDs supported by the application are supported by every device; the application reports unsupported IDs and requires the administrator to adjust inputs. The agent should not commit to a data ID without confirming the device supports it — if unknown, run once with the candidate IDs and adjust based on the reported unsupported list.Choose the sample period and history depth.
diag_sample_period_nsis the sampling interval in nanoseconds and is passed directly to the diag instance.sample_history_depthis the number of historical records a rule evaluates; the application automatically provisions a circular buffer double this size to ensure equal historical and active event data. The agent must surface two depth constraints: differential rules (dt_gt,dt_lt) require at leastsample_history_depthvalues in the buffer before they can function, andgt/ltrules requiresample_history_depthconsecutive samples on the correct side of the threshold.Define the
data-idsarray. Each entry has aname(a friendly name used as the column header in the events log) and adata_id(the 16-character hexadecimal value). Thenameis arbitrary but should be stable because it appears in the log header.Define the
rulesarray. Each rule has aname, adata_idthat must match an ID defined in thedata-idsarray, acomparison_type, and an integercomparison_value. The five rule types and their hysteresis are documented inCAPABILITIES.md ## Capabilities and modesrule definitions. The agent should help the user select the rule type based on the metric's behavior:incremental_greater_than(inc_gt) is designed for incrementally increasing values and triggers each time the value increases by the comparison threshold.differential_greater_than(dt_gt) anddifferential_less_than(dt_lt) evaluate the delta between the newest sample and the sample at[N-(sample_history_depth-1)].greater_than(gt) andless_than(lt) are designed strictly for values that can fluctuate; they are not suitable for metrics that only increment, such as total bytes transferred.
Plan the event log output. The application writes event data to a log file. If
--event-logis not provided, the application creates or truncatesevents.login the working directory (the default named in the code flow). The agent should record the intended log path so the## testand## debugloops can inspect it.Validate the configuration before hardware allocation. The application performs
validate_configuration()to catch expected configuration errors before allocating hardware resources. The agent should pre-validate the same checks:data_idformat, ruledata_idmatches an entry indata-ids,comparison_typeis one of the five accepted values,comparison_valueis an integer, and the sample period and depth are positive.Plan the rollback path. Because configuration changes alter what is monitored and what is logged, the agent records the previous JSON file and event log path. If the user plans to use
--force-ownership, that flag changes diag domain ownership and must be routed throughdoca-hardware-safety/SKILL.mdbefore execution — see## Safety policy.
Example configuration, as documented in the public guide:
{
"diag_sample_period_ns": 100000,
"sample_history_depth": 10000,
"data-ids": [
{
"name": "port_0_rx_bytes",
"data_id": "0x1020000100000000"
}
],
"rules": [
{
"name": "Rx Bytes/s > 1MeBs",
"data_id": "0x1020000100000000",
"comparison_type": "differential_greater_than",
"comparison_value": 1048576
}
]
}build
The Telemetry Traceback application is distributed as source code and
must be compiled prior to execution. The source is located at
/opt/mellanox/doca/applications/telemetry/traceback/. DOCA reference
applications are installed with full source code and build instructions;
for development and compilation tips, refer to the DOCA Reference
Applications page. For install-related questions, route to
doca-setup/SKILL.md.
Compiling all applications. By default, the DOCA Meson project is configured to build every reference application simultaneously:
cd /opt/mellanox/doca/applications/
meson /tmp/build
ninja -C /tmp/buildThe compiled binaries are generated in /tmp/build/telemetry/.
Compiling only the current application. To significantly reduce build times, isolate the Telemetry Traceback application.
Option 1 — command line configuration:
cd /opt/mellanox/doca/applications/
meson /tmp/build -Denable_all_applications=false -Denable_telemetry=true -Denable_telemetry_traceback=true
ninja -C /tmp/buildOption 2 — configuration file. Edit
/opt/mellanox/doca/applications/meson_options.txt and set:
enable_all_applications = false
enable_telemetry = true
enable_telemetry_traceback = trueThen run the standard compilation commands:
cd /opt/mellanox/doca/applications/
meson /tmp/build
ninja -C /tmp/buildConfiguration rule. If enable_all_applications is set to false,
the main enable_telemetry flag must be set to true for any
underlying telemetry application to compile successfully. The individual
applications default to true, but can be toggled on or off as needed
once the main telemetry flag is enabled.
modify
The thing the agent modifies for the Telemetry Traceback application is
the JSON configuration and rule definitions, not the application source.
Configuration changes are covered in ## configure. If
the user wants to modify the application source code itself, that is out
of scope for this skill; the source is available at
/opt/mellanox/doca/applications/telemetry/traceback/ and the user can
modify it as-is, but development and compilation tips live on the DOCA
Reference Applications page, not in this skill.
run
The application is distributed as source code and must be compiled prior to execution. The execution syntax is:
sudo doca_telemetry_traceback -d 03:00.0 --rules my_rules_file.jsonSteps the agent should walk the user through, in order:
Confirm the build completed. The compiled binary is generated in
/tmp/build/telemetry/when built with Meson. If the binary is not present, return to## build.Confirm root privileges. The application strictly requires sudo (root privileges) to access hardware-level telemetry data on the device. The agent must state this requirement before any run command.
Identify the target device PCIe address. The mandatory
-dparameter must exactly match the physical PCIe address of the target device (for example,03:00.0). A wrong address produces a device open failure.Prepare the rules JSON file. The
-r/--rulesflag takes the path to the JSON configuration file. If not overridden via CLI, the application defaults torules.jsonin the working directory.Optionally specify the event log path. Use
--event-logto set the output log file. If omitted, the application creates or truncatesevents.login the working directory.Execute the application. Example with an explicit event log:
sudo doca_telemetry_traceback -d 03:00.0 --rules my_rules_file.json --event-log /tmp/traceback_events.logMonitor the run. The application logs its configuration header immediately, then enters a continuous polling loop. It installs a SIGINT signal handler so the operator can terminate cleanly with CTRL+C. Device cleanup is handled automatically via C++ RAII
unique_ptrobjects when the SIGINT signal breaks the execution loop.Handle unsupported data IDs. If the application reports unsupported data IDs, adjust the JSON inputs accordingly and re-run.
Handle sample size/period mismatch. The application calls
doca_telemetry_diag_get_sample_size()anddoca_telemetry_diag_get_sample_period()to confirm the hardware accepted the requested parameters. If the actual sample size or period does not match the requested parameters, the application explicitly stops. This is a deliberate safety check, not a bug; the agent must not recommend workarounds that bypass it. Adjustdiag_sample_period_nsor the data IDs to match hardware capabilities.If
--force-ownershipis needed. That flag forces ownership of the diag domain and only applies when the device firmware is in single domain mode. Route any use of it throughdoca-hardware-safety/SKILL.mdbefore execution.
General DOCA flags (-h, -v, -l, --sdk-log-level,
--log-filter, -j) and program flags (-d, -r, --event-log,
--force-ownership) are listed in the
Command appendix.
test
The Telemetry Traceback application does not ship a separate test
harness; the ## test verb is an iterative verification loop built from
the run and debug verbs. The goal is to confirm that a configured rule
actually produces the expected event log output before the operator
relies on it for long-term monitoring.
The loop is:
Configure a minimal rule set with a known threshold. Choose a rule type appropriate to the metric being monitored. For an incrementing counter, use
incremental_greater_thanwith a smallcomparison_valueso the event triggers quickly. For a fluctuating metric, usegreater_thanorless_thanwith a threshold that will be crossed under normal load.Run the application with
--event-logpointing to a dedicated test log file, per## run.Generate the condition the rule monitors. The application samples telemetry data; the operator must cause the threshold to be crossed (for example, by generating traffic on the monitored port).
Observe the event log. The log should contain the configuration header, an "event started" marker, the historical data dump, all active event data, and an "event completed" marker. If multiple events activate simultaneously, individual begin/end rows are inserted to track their respective lifecycles.
If the log is empty or missing markers, do not proceed to bulk use. Route to
## debugand adjust the configuration.Terminate with SIGINT (CTRL+C), inspect the log, adjust the JSON configuration, and repeat until the event log matches the expected lifecycle.
Every state-changing operation in this loop (editing the JSON file, changing the event log path, re-running with a different PCIe address) re-opens the smoke from step 1. The test is not a one-shot pass.
debug
Map the symptom to the right layer before any state-changing
intervention. The full error taxonomy is in
CAPABILITIES.md ## Error taxonomy.
| Symptom | Likely layer | What to check |
|---|---|---|
| Event log is empty even though a threshold was crossed | Rule configuration | Verify comparison_type and sample_history_depth. Differential rules require depth samples before functioning; gt/lt require consecutive samples on the correct side. Confirm the rule's data_id matches an entry in data-ids. |
| Application reports unsupported data IDs | Device capability | The specific device may not support all data IDs the application supports. Adjust the JSON inputs accordingly. |
| Application stops immediately after start | Sample size/period mismatch | The hardware did not accept the requested diag_sample_period_ns or sample size. The application explicitly stops. Adjust the sample period or data IDs to match hardware capabilities. |
| Application fails to access telemetry data | Privileges | The application strictly requires sudo (root privileges). |
| Application cannot find the device | PCIe addressing | Ensure the -d parameter exactly matches the physical PCIe address of the target device. |
| Diag domain ownership conflict | Firmware domain mode | --force-ownership forces ownership of the diag domain and only applies when the device firmware is in single domain mode. Route through doca-hardware-safety/SKILL.md. |
For deeper runtime diagnostics, increase log verbosity with the DOCA
logging flags (-l, --sdk-log-level, --log-filter) documented in
the public guide and the installed --help. For any issue encountered
with compilation, installation, or execution of the DOCA applications,
refer to the NVIDIA BlueField Platform Software Troubleshooting Guide.
Deferred task verbs
The following task verbs do not belong in this skill and are explicitly deferred:
install— routes todoca-setup/SKILL.md. This skill assumes DOCA is already installed and the application source is present at/opt/mellanox/doca/applications/telemetry/traceback/.version— routes todoca-version/SKILL.md. Version-specific availability, changes, and compatibility questions are owned there.telemetry-diag-api— routes to the DOCA Telemetry Diag programming guide. This skill covers the Traceback application, not the underlying Telemetry Diag library API.raw-telemetry— routes to the DOCA Telemetry Diag programming guide. The Traceback application processes telemetry data locally for traceback logging; it is not a raw telemetry collection tool.hardware-state-change— routes todoca-hardware-safety/SKILL.md. The only hardware/firmware state-changing flag in this application is--force-ownership.source-modification— routes to the DOCA Reference Applications page and development tips. This skill covers configuration and operation, not modifying the application source code.
Command appendix
The commands below are the fallback path when the bundle's structured
helper tools are not available; prefer the structured tools per
doca-structured-tools-contract/SKILL.md.
Build all applications:
cd /opt/mellanox/doca/applications/
meson /tmp/build
ninja -C /tmp/buildBuild only the Telemetry Traceback application (CLI flags):
cd /opt/mellanox/doca/applications/
meson /tmp/build -Denable_all_applications=false -Denable_telemetry=true -Denable_telemetry_traceback=true
ninja -C /tmp/buildBuild only the Telemetry Traceback application (configuration file):
Edit /opt/mellanox/doca/applications/meson_options.txt to set
enable_all_applications = false, enable_telemetry = true,
enable_telemetry_traceback = true, then:
cd /opt/mellanox/doca/applications/
meson /tmp/build
ninja -C /tmp/buildRun the application:
sudo doca_telemetry_traceback -d 03:00.0 --rules my_rules_file.jsonRun with an explicit event log:
sudo doca_telemetry_traceback -d 03:00.0 --rules my_rules_file.json --event-log /tmp/traceback_events.logPrint help:
doca_telemetry_traceback --helpPrint version:
doca_telemetry_traceback --versionGeneral flags:
-h,--help— print help synopsis and exit.-v,--version— print program version information and exit.-l,--log-level— set numeric log level (10 DISABLE, 20 CRITICAL, 30 ERROR, 40 WARNING, 50 INFO, 60 DEBUG, 70 TRACE; TRACE requires compilation with TRACE support).--sdk-log-level— set SDK numeric log level using the same 10–70 scale.--log-filter— filter logs from specific modules (comma-separated list).-j,--json— parse command-line flags from a specified input JSON file.
Program flags:
-d,--device— mandatory; exact PCIe address of the device to read telemetry information from.-r,--rules— path to a JSON file containing the application configuration.--event-log— path to output log file for events information.--force-ownership— force ownership of the diag domain; only applies when the device firmware is in single domain mode. Route throughdoca-hardware-safety/SKILL.mdbefore use.
Cross-cutting
Root privileges are mandatory for every run; the agent must state this before any execution command.
PCIe address must exactly match the physical device; a wrong address fails at device open.
Unsupported data IDs are reported by the application; adjust the JSON inputs and re-run.
Sample size/period mismatch causes the application to stop deliberately; do not bypass this check.
--force-ownershipchanges diag domain ownership and is the only hardware/firmware state-changing flag; route throughdoca-hardware-safety/SKILL.md.Version questions route to
doca-version/SKILL.md; install questions route todoca-setup/SKILL.md.The application is read-only for telemetry data except for the
--force-ownershipflag; seeCAPABILITIES.md ## Safety policy.
Requirements and compatibility
Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta
“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.
The author says: Requires DOCA SDK installed at /opt/mellanox/doca on Linux with a BlueField DPU or ConnectX NIC, plus root privileges to access hardware-level telemetry data. The application is distributed as source code and must be compiled before execution; the source is located at /opt/mellanox/doca/applications/telemetry/traceback/. Validation steps require a live DOCA install.
Security
What our scanner noticed· Medium risk
- Large base64-encoded blobs
A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.
Attribution and licence
- Created by
- NVIDIA
- Publisher
- NVIDIA (Official)
- Source
- NVIDIA/skills · skills/doca-telemetry-traceback-application · commit fce3cca
- Licence
- Apache License 2.0 (redistribution allowed)
- LICENSE (added by AutoGineer from LICENSE-APACHE)
- ATTRIBUTION.md (written by AutoGineer)
- Synced
AutoGineer is not affiliated with or endorsed by NVIDIA or NVIDIA.
Download ZIP
The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download doca-telemetry-traceback-application.zip