ant-media / Ant-Media-Server

Ant Media Server is a live streaming engine software that provides adaptive, ultra low latency streaming by using WebRTC technology with ~0.5 seconds latency. Ant Media Server is auto-scalable and it can run on-premise or on-cloud.
https://antmedia.io
Other
4.25k stars 622 forks source link

Prometheus or open-telemetry compatible application metrics support #4460

Open Rajpratik71 opened 1 year ago

Rajpratik71 commented 1 year ago

Is your feature request related to a problem? Please describe. Prometheus or open-telemetry compatible metrics about application usage in terms of Memory, CPU, requests etc.

Describe the solution you'd like Libraries like "open-telemetry" at https://opentelemetry.io/docs/instrumentation/java/ can help .

https://github.com/open-telemetry/opentelemetry-java-instrumentation/blob/main/docs/supported-libraries.md

Describe alternatives you've considered Still have to evaluate the workaround approach mentioned at https://github.com/ant-media/Ant-Media-Server/issues/3122

mekya commented 1 year ago

Thank you for the issue @Rajpratik71

Let us revisit the issue #3122 and check the feasibility

Rajpratik71 commented 1 year ago

Thank you for the issue @Rajpratik71

Let us revisit the issue #3122 and check the feasibility

@mekya Sure, I will.

But on high level instead of producing and utilizing Prometheus or open-telemetry compatible metrics for monitoring.

Use of 3 more heavy components (Kafka, ElasticSearch and Logstash ) are making things complex and heavy weight.

mekya commented 1 year ago

Hi @Rajpratik71 ,

I agree with you about the heavy components especially for ElasticSearch and Logstash.

May I ask you some questions to save some time?

When I take a look at this link, it seems that it supports Apache Kafka Producer/Consumer API.

From my understanding, Ant Media Server uses Apache Kafka APIs and may it directly send info to Open-Telemetry?

jack78901 commented 1 year ago

Not to re-open a thread almost a year old, but getting Prom/OTEL support would be very beneficial.

@mekya to answer your question about OTEL and the auto-instrumentation for Java and the Kafka instrumentation. That doesn't mean we could read off from a Kafka queue. Instead, this would allow us to see how the queue itself is working, throughput, etc.

We want to get the same metrics that the heavy-weight monitoring package uses in a lighter-weight way. Also, Elastic Stack really isn't built for time-series metrics. It is designed for logs and indexing. If we could us OTEL or Prometheus it would be much easier/lighter-weight.

mekya commented 1 year ago

Hi @jack78901,

Thank you for your comment. We can revisit this issue and thinking of this implementation. Btw, do you use Ant Media Server and require Prom/OTEL on your end? If yes, we can continue discussion how we can proceed here or through contact@antmedia.io.

Let's proceed to discuss how we can create a solution for your case