coroot / coroot

Coroot is an open-source APM & Observability tool, a DataDog and NewRelic alternative 📊, 🖥️, 👉. Powered by eBPF for rapid insights into system performance. Monitor, analyze, and optimize your infrastructure effortlessly for peak reliability at any scale.
https://coroot.com
Apache License 2.0
4.29k stars 158 forks source link

Incoming connections statistics #219

Open kirillyu opened 3 weeks ago

kirillyu commented 3 weeks ago

We have a lot of incidents where we need to search for consumers of one or another shared resource, but Corut does not provide information about incoming connections. Is this a technical limitation or could it be a feature request?

apetruhin commented 2 weeks ago

Could you please clarify what you mean by "incoming connections"? Are you referring to connections from services outside the cluster? Could you provide more details about your use case?

kirillyu commented 2 weeks ago

I'm not sure that I understand correctly how this works, it may be some kind of bug in my perception. Coroot has many metrics that show the properties of connections, for example container_net_tcp_successful_connects_total, I expect from this metric that I will see all established connections. at the same time, parameters such as retransmit and RTT are collected exactly from the point from which the packet is sent. in the Coroot UI I see that for all connections there is both retransmit and rtt. Does this mean that only the connections through which I send are involved in visualization (screening). Let's say there is such a scheme nginx -> service -> Kafka and imagine that Kafka only receives TCP packets. If I put Coroot on service and only on it, I will see only one Kafka, I will not see service, just like I will not be able to collect retransmits. with all this, Kafka will connect with service.

kirillyu commented 2 weeks ago

Some time ago we solved such problems too and wrote this solution. There are both incoming and outgoing connections. Checking the information with Coroot, we just came to the conclusion that Coroot is looking at some narrower pool of connections https://github.com/alebsys/ngraph