Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add JMS exporter #27258

Closed
bputt-e opened this issue Sep 28, 2023 · 7 comments
Closed

Add JMS exporter #27258

bputt-e opened this issue Sep 28, 2023 · 7 comments
Labels

Comments

@bputt-e
Copy link

bputt-e commented Sep 28, 2023

Component(s)

No response

Is your feature request related to a problem? Please describe.

I would like to export OTEL data through Apache ActiveMQ and while options like Kafka/Pulsar exist, JMS is my only option

Describe the solution you'd like

A JMS exporter that works with JMS backends (i.e. Apache ActiveMQ). I imagine it'll work similarly to the kafka exporter

Describe alternatives you've considered

No response

Additional context

No response

@bputt-e bputt-e added enhancement New feature or request needs triage New item requiring triage labels Sep 28, 2023
@crobert-1 crobert-1 added Sponsor Needed New component seeking sponsor and removed enhancement New feature or request labels Sep 28, 2023
@atoulme
Copy link
Contributor

atoulme commented Oct 4, 2023

Do you have any code towards this goal? Did you by any chance look at how golang code can interact with JMS? Any insight?
Would you be interested in supporting this component moving forward?

@atoulme atoulme removed the needs triage New item requiring triage label Oct 4, 2023
@bputt-e
Copy link
Author

bputt-e commented Oct 4, 2023

No code written at the moment, it appears https://github.com/ibm-messaging/mq-golang-jms20/tree/main might be worthy to utilize. As far as supporting this component, it depends, we're trying to find another way to egress the data without requiring jms

@swar8080
Copy link
Contributor

swar8080 commented Nov 1, 2023

Maybe this would get more traction and usage if it was specifically for RabbitMQ instead of JMS? That misses out on SQS and ActiveMQ support, but RabbitMQ is pretty popular, and then this wouldn't be limited to Java applications! That's the approach datadog is using for their telemetry pipeline, with separate exporters for RabbitMQ and SQS

With that approach, there's the RabbitMQ go client. It uses the AMQP 0.9.1 protocol which unfortunately doesn't seem compatible with any other major queues

I'm starting to build this for fun...currently looking at similar exporters like kafka and apache pulsar. Let me know if anyone wants to team-up or has suggestions for how to build it

@atoulme
Copy link
Contributor

atoulme commented Nov 1, 2023

As you do this note we are trying to have encoding extensions to share across components.

@swar8080
Copy link
Contributor

swar8080 commented Nov 5, 2023

It looks like JMS is just an API specification, not a common wire protocol. Each queue expects its own wire protocol, like OpenWire for ActiveMQ, and an adapter built on-top of the AMQP protocol for RabbitMQ

@bputt-e an exporter specifically for ActiveMQ would probably be needed if you're still interested. https://github.com/Azure/go-amqp is the best-maintained client library I found for it

Copy link
Contributor

github-actions bot commented Jan 5, 2024

This issue has been inactive for 60 days. It will be closed in 60 days if there is no activity. To ping code owners by adding a component label, see Adding Labels via Comments, or if you are unsure of which component this issue relates to, please ping @open-telemetry/collector-contrib-triagers. If this issue is still relevant, please ping the code owners or leave a comment explaining why it is still relevant. Otherwise, please close it.

Copy link
Contributor

github-actions bot commented Mar 5, 2024

This issue has been closed as inactive because it has been stale for 120 days with no activity.

@github-actions github-actions bot closed this as not planned Won't fix, can't repro, duplicate, stale Mar 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants