Skip to content

[exporter/nats] add NATS exporter#49827

Open
leocarrozzo wants to merge 5 commits into
open-telemetry:mainfrom
leocarrozzo:feat/nats-exporter
Open

[exporter/nats] add NATS exporter#49827
leocarrozzo wants to merge 5 commits into
open-telemetry:mainfrom
leocarrozzo:feat/nats-exporter

Conversation

@leocarrozzo

Copy link
Copy Markdown

Description

This PR implements the NATS Exporter component for OpenTelemetry Collector (exporter/natsexporter).
It provides support for Traces, Metrics, and Logs over NATS Core and JetStream, with both OTLP Protobuf and JSON encodings.

To keep the review process manageable and focused, this PR introduces the Exporter first. The NATS Receiver will be submitted in a separate follow-up PR.

I am also volunteering as Code Owner for exporter/natsexporter.

Link to tracking issue

Partially resolves #39540

Testing

  • Unit and integration tests added under exporter/natsexporter.
  • Linter checks passed locally (make lint).
  • Manual end-to-end verification performed using telemetrygen and a local NATS server instance.

Documentation

  • Added README.md and metadata.yaml for exporter/natsexporter.

Authorship

  • I, a human, wrote this pull request description myself.

@leocarrozzo
leocarrozzo requested a review from a team as a code owner July 22, 2026 23:28
@linux-foundation-easycla

linux-foundation-easycla Bot commented Jul 22, 2026

Copy link
Copy Markdown

CLA Signed
The committers listed above are authorized under a signed CLA.

@github-actions github-actions Bot added the first-time contributor PRs made by new contributors label Jul 22, 2026
@github-actions

Copy link
Copy Markdown
Contributor

Welcome, contributor! Thank you for your contribution to opentelemetry-collector-contrib.

Important reminders:

  • Read our Contributing Guidelines.
  • Sign the CLA if you haven't already.
  • Follow the OpenTelemetry Generative AI policy: disclose any AI use in your contribution, and communicate (PR descriptions, review replies) in your own words rather than AI-generated text.
  • Give reviewers at least a few days before pinging them for feedback.
  • If you need help with general setup, development process, or contributor etiquette, ask in #opentelemetry-new-contributors.
  • First-time contributors should have at most one PR not marked as draft until their first PR is merged.
  • If your change isn't one of our priority components, reviews may take more time.
  • Raise technical or Collector-specific questions in #otel-collector-dev or a Collector SIG meeting.

@github-actions github-actions Bot added the cmd/otelcontribcol otelcontribcol command label Jul 22, 2026
@opentelemetry-pr-dashboard

opentelemetry-pr-dashboard Bot commented Jul 22, 2026

Copy link
Copy Markdown

Pull request dashboard status

Status last refreshed: 2026-07-23 00:30:20 UTC.

  • Waiting on: Reviewers
  • Next step: Review the latest changes.

This automated status or its linked feedback items may be incorrect. If something looks wrong, please report it with the result you expected.

@leocarrozzo leocarrozzo changed the title feat(exporter/nats): add NATS exporter (#39540) [exporter/nats] add NATS exporter Jul 23, 2026
@leocarrozzo

Copy link
Copy Markdown
Author

FYI on Architecture and Design:
The design and implementation of the NATS exporter takes reference from the existing Kafka and RabbitMQ exporters. This ensures full consistency with established OpenTelemetry standards, idiomatic code patterns, and maintainability.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cmd/otelcontribcol otelcontribcol command first-time contributor PRs made by new contributors

Projects

None yet

Development

Successfully merging this pull request may close these issues.

New component: NATS as a Receiver and Exporter

1 participant