nemo-relay-plugin-observability

작성자: nvidia

NeMo Relay 0.6 또는 0.7 관측성을 내장 플러그인, 구독자 또는 내보내기를 통해 선택하거나 구성할 때 이 스킬을 사용하세요. 원시 ATOF… 포함

npx skills add https://github.com/nvidia/skills --skill nemo-relay-plugin-observability

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 / OpenTelemetrySubscriber and OpenInferenceConfig / OpenInferenceSubscriber.
  • 0.7 uses observability configuration version 3. One typed OpenTelemetry exporter provides full, gen_ai, and openinference projections.

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, or openinference). Read references/opentelemetry.md and, 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 compaction mark 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.
  • Event fields include semantic input/output through the ATOF data field, typed profile data such as model_name and tool_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.md automatically emit skill.load marks under the tool span. The payload contains only skill_name; metadata records the load source and tool name. Partial reads do not count, and ambiguous slash-command expansions use the separate skill.load.inferred name. The eager mark remains present if tool execution later fails.

Shared Lifecycle

  1. Create the exporter or subscriber.
  2. Register it with a unique name before the relevant scoped work.
  3. Run NeMo Relay-instrumented work inside scopes.
  4. Flush and deregister in the exporter-specific reference's documented order.
  5. 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, and OpenInferenceSubscriber
  • Python 0.7: the same registration and file exporters, plus OpenTelemetrySubscriber for all three typed projections
  • Node.js follows the same 0.6/0.7 split through its root exports
  • Rust: nemo_relay::api::subscriber and nemo_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.md for raw JSONL events used in local debugging or offline inspection.
  • Load references/atif.md for ATIF trajectories.
  • Load references/opentelemetry.md for OTLP/OpenTelemetry traces.
  • Load references/openinference.md for the standalone 0.6 OpenInference exporter or the 0.7 openinference OpenTelemetry projection.

Use Another Skill When

Choose another skill when the task belongs to an adjacent workflow:

  • Use nemo-relay-plugin-build to package subscriber-based export behavior as a reusable plugin.
  • Use nemo-relay-get-started or nemo-relay-instrument-calls when no scope, tool call, or LLM call has been instrumented.
  • Use nemo-relay-debug-runtime-integration to 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.

nvidia의 다른 스킬

fhir-basics
nvidia
에이전트에게 FHIR R4 API의 작동 방식, 사용 가능한 리소스, 검색 매개변수를 사용한 쿼리 방법, 모든 응답 형식을 올바르게 파싱하는 방법을 가르칩니다…
compileiq-validate-result
nvidia
검색이 완료된 후, 속도 향상을 청구하거나 ACF를 발송하기 전에 사용합니다. dump_results CSV를 로드하고, 상위 K개 후보(단일 목표)를 추출합니다…
changelog-audit
nvidia
릴리스 전에 Warp CHANGELOG.md를 감사합니다: 누락된 항목 복구, 사용자 영향별 정렬, 항목 언어 다듬기, 줄 바꿈, (릴리스 브랜치 모드) 비교 업데이트…
dgx-diagnose
nvidia
일반적인 DGX Station GB300 문제 진단 — CUDA 충돌, 잘못된 GPU 타겟팅, vLLM/SGLang 컨테이너 버그, MIG 상태 문제, NVLink/Fabric Manager 오류,…
aicr-managing-openvex
nvidia
Use when adding, updating, or removing CVE/GHSA suppressions in `.openvex.json` — the OpenVEX document consumed by the daily image vulnerability scan workflow.…
aicr-creating-slide-decks
nvidia
기술 개념이나 워크플로우에 대한 독립형 HTML 슬라이드 덱 또는 시각적 발표 자료(예: demos/*.html)를 만들 때 사용하세요. 전체 화면으로 표시하거나…
aicr-creating-guided-demos
nvidia
대화형 안내 데모 스크립트(demos/*.sh)를 라이브 또는 자기 주도 방식으로 Frame → Tell → Show → Close 패턴에 따라 구조화한다. "데모 스크립트", "안내…"와 같은 표현에 반응한다.
aicr-analyzing-snapshots
nvidia
AICR 스냅샷 YAML 파일을 분석하거나, 클러스터 상태를 검토하거나, 공급자 특성을 비교하거나, GPU/네트워크 토폴로지 인사이트를 추출할 때 사용합니다...