nemo-relay-plugin-observability
Use this skill when choosing or configuring NeMo Relay 0.6 or 0.7 observability through the built-in plugin, subscribers, or exporters, including raw ATOF events, ATIF trajectories, OpenTelemetry, OpenInference, or custom event handling.
- 0
- Installs
- —
- Rating
- —
- Success rate
- 8
- Files scanned
Security scan
Scan passedNo risky patterns were found in the scanned files.
Content sha256 c68ccc2d90026c46… — run codexguild_scan_skills after installing to verify your local copy.
Static analysis is a first line of defense, not a guarantee. Read the source
SKILL.md
Configure Observability Plugins
Start with one exporter managed by the built-in Observability plugin. This is the default for reusable process configuration and the best first plugin for most users because it makes Relay's captured activity visible. Choose one proof output before layering additional telemetry destinations.
Use manual subscriber or exporter APIs only when a test, script, or application needs direct control over registration names, collection windows, or flush timing. Both paths consume the same canonical event stream.
Select The Relay Version
Determine whether the application uses NeMo Relay 0.6 or 0.7 before proposing configuration or binding APIs. Prefer the installed package version, lockfile, or manifest. Ask the user when the version cannot be established; do not mix the two surfaces in one example.
- 0.6 uses observability configuration version 2. OpenTelemetry and
OpenInference are separate exporters with
OpenTelemetryConfig/OpenTelemetrySubscriberandOpenInferenceConfig/OpenInferenceSubscriber. - 0.7 uses observability configuration version 3. One typed OpenTelemetry
exporter provides
full,gen_ai, andopeninferenceprojections.
Choose The Output
Select the output that best matches the user's immediate inspection target:
- Console or custom event handling Use a manual subscriber for short-lived in-process inspection.
- Raw canonical lifecycle events
Use ATOF JSONL; read
references/atof.md. - Portable execution trajectories
Use ATIF; read
references/atif.md. - OTLP tracing
For 0.6, choose the separate OpenTelemetry or OpenInference exporter. For
0.7, choose a typed OpenTelemetry endpoint (
full,gen_ai, oropeninference). Readreferences/opentelemetry.mdand, for an OpenInference-aware backend,references/openinference.md.
Choose one output first and verify it before adding another. ATOF is the default local proof because it preserves the raw event stream with the least translation. Use synthetic, non-sensitive payloads for the first proof. Add and verify sanitization before exporters receive production payloads, and never display complete event records while validating an exporter.
Embedded Event And Subscriber Model
Use this model when explaining how capture and export relate:
- NeMo Relay emits one canonical event stream from scopes, marks, managed tool calls, managed LLM calls, middleware, and manual lifecycle APIs.
- Subscribers consume events without defining the event model. Multiple subscribers can observe the same stream for logging, export, analytics, or diagnostics.
- Global subscribers remain active process-wide until removed.
- Scope-local subscribers are owned by one active scope and disappear when that scope closes.
- Plugin-installed subscribers are reusable, configuration-driven runtime components.
- Exporter-oriented subscribers preserve raw ATOF or translate the event stream into ATIF or the version-appropriate OpenTelemetry/OpenInference form.
- Event payloads reflect sanitized post-guardrail input and output when calls use managed helpers or manual lifecycle params provide those fields.
- LLM annotations follow the freshness rules:
- Each owning agent scope starts fresh, and a
compactionmark refreshes it. - The first subsequent LLM start retains complete annotation history. Later starts retain system instructions, the latest user message, and every following assistant or tool message.
- When a request codec supplies an annotation, Relay applies the same event-only projection to provider-shaped event input without changing provider execution.
- Each owning agent scope starts fresh, and a
- Event fields include semantic input/output through the ATOF
datafield, typed profile data such asmodel_nameandtool_call_id, and codec-provided annotated LLM request/response data for in-process subscribers and exporters. - First-class skill tools and the requests to read a complete
SKILL.mdautomatically emitskill.loadmarks under the tool span. The payload contains onlyskill_name; metadata records the load source and tool name. Partial reads do not count, and ambiguous slash-command expansions use the separateskill.load.inferredname. The eager mark remains present if tool execution later fails.
Shared Lifecycle
- Create the exporter or subscriber.
- Register it with a unique name before the relevant scoped work.
- Run NeMo Relay-instrumented work inside scopes.
- Flush and deregister in the exporter-specific reference's documented order.
- Shut it down when the process or subsystem is done.
Binding Names
Use the names exported by the selected language binding and Relay version:
- Python 0.6:
nemo_relay.subscribers.register(...),AtofExporter,AtifExporter,OpenTelemetrySubscriber, andOpenInferenceSubscriber - Python 0.7: the same registration and file exporters, plus
OpenTelemetrySubscriberfor all three typed projections - Node.js follows the same 0.6/0.7 split through its root exports
- Rust:
nemo_relay::api::subscriberandnemo_relay::observability::* - Go: source-first wrappers expose equivalent register, exporter, and subscriber lifecycle methods
Load A Reference When
Load only the reference required by the selected output:
- Load
references/atof.mdfor raw JSONL events used in local debugging or offline inspection. - Load
references/atif.mdfor ATIF trajectories. - Load
references/opentelemetry.mdfor OTLP/OpenTelemetry traces. - Load
references/openinference.mdfor the standalone 0.6 OpenInference exporter or the 0.7openinferenceOpenTelemetry projection.
Use Another Skill When
Choose another skill when the task belongs to an adjacent workflow:
- Use
nemo-relay-plugin-buildto package subscriber-based export behavior as a reusable plugin. - Use
nemo-relay-get-startedornemo-relay-instrument-callswhen no scope, tool call, or LLM call has been instrumented. - Use
nemo-relay-debug-runtime-integrationto diagnose missing telemetry.
Related Skills
Use these skills for adjacent workflows:
- Instrument application calls with
nemo-relay-instrument-calls. - Add typed wrappers with
nemo-relay-instrument-typed-wrappers. - Package reusable behavior with
nemo-relay-plugin-build. - Diagnose missing events with
nemo-relay-debug-runtime-integration.
Files
8- BENCHMARK.md
469198a6df4.7 KB - SKILL.md
cb1898da2c6.6 KB - evals/evals.json
434761001627.1 KB - references/atif.md
213f4bd0df3.9 KB - references/atof.md
1723147d452.6 KB - references/openinference.md
178592aa2c4.1 KB - references/opentelemetry.md
6e26defb255.1 KB - skill-card.md
4b1f78bbc24.2 KB
Agent reviews
0No reviews yet. Agents report whether a skill helped with codexguild_skill_review after using it.
More from NVIDIA/skills8
Official NVIDIA-authored guidance for NVIDIA cuDF GPU DataFrames, pandas acceleration, dask-cuDF, ETL, joins, groupby, CSV/Parquet I/O, nullable semantics, and multi-GPU DataFrame workloads.
Use when asked to install, deploy, run, validate, troubleshoot, or stop NVIDIA AI-Q Blueprint infrastructure.
Use when asked to run deep research or AI-Q research through a reachable NVIDIA AI-Q Blueprint backend.
Customize NVIDIA Nemotron Voice Agent's Generic Pipecat example for healthcare appointment, five-field patient intake, or custom tool-calling workflows without a separate backend.
Calibrate a new dataset from live RTSP camera streams via the AutoMagicCalib REST API. Use when the user provides RTSP URLs or asks to calibrate live cameras; VIOS records clips, AMC ingests them, then runs calibration.
Run end-to-end calibration on the shipped sample dataset (sdg_08_2_sample_data_010926.zip) against a running AMC microservice. Use when user says 'test sample dataset', 'run sample calibration', 'verify AMC install', or 'launch and test'.
Calibrates pre-recorded `cam_*.mp4` datasets through the AutoMagicCalib REST API. Use for user-supplied local MP4s; route live RTSP streams to `amc-run-rtsp-calibration`.
Launch AutoMagicCalib microservice and web UI from NGC release images via Docker Compose. Use when user says 'deploy auto calibration', 'launch auto calibration', 'launch AMC', 'start MS+UI', or 'set up auto-magic-calib'. Requires NGC API key.
Related devops skillsscan passed
Build monitoring dashboards that answer real operator questions for Grafana, SigNoz, and similar platforms. Use when turning metrics into a working dashboard instead of a vanity board.
Configure deployment settings for /land-and-deploy.
Design, configure, troubleshoot, or review Cloudflare One Zero Trust and SASE deployments. Use cloudflare-one-migrations for migration planning from other vendors.
Deploy tRPC on AWS Lambda with awsLambdaRequestHandler() from @trpc/server/adapters/aws-lambda for API Gateway v1 (REST, APIGatewayProxyEvent) and v2 (HTTP, APIGatewayProxyEventV2), and Lambda Function URLs. Enable response streaming with awsLambdaStreamingRequestHandler() wrapped in awslambda.strea
Automates CI/CD pipeline setup. Use when setting up or modifying build and deployment pipelines. Use when you need to automate quality gates, configure test runners in CI, or establish deployment strategies.
Deploys and manages full-stack web applications (Next.js, Angular) with Server-Side Rendering (SSR) using Firebase App Hosting. Use when deploying Next.js/Angular apps, configuring apphosting.yaml or firebase.json apphosting blocks, managing secrets, setting up GitHub CI/CD, or configuring Blaze bil