All Projects → mehrdadrad → Tcpdog

mehrdadrad / Tcpdog

Licence: mit
eBPF based TCP observability.

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to Tcpdog

Cilium
eBPF-based Networking, Security, and Observability
Stars: ✭ 10,256 (+8518.49%)
Mutual labels:  monitoring, observability, bpf, ebpf
Tcpprobe
Modern TCP tool and service for network performance observability.
Stars: ✭ 207 (+73.95%)
Mutual labels:  tcp, socket, monitoring, observability
Grav
Performance visualisation tools
Stars: ✭ 262 (+120.17%)
Mutual labels:  monitoring, observability, ebpf
Express Status Monitor
🚀 Realtime Monitoring solution for Node.js/Express.js apps, inspired by status.github.com, sponsored by https://dynobase.dev
Stars: ✭ 3,302 (+2674.79%)
Mutual labels:  socket, monitoring, observability
aya
Aya is an eBPF library for the Rust programming language, built with a focus on developer experience and operability.
Stars: ✭ 950 (+698.32%)
Mutual labels:  ebpf, observability, bpf
Asyncrat C Sharp
Open-Source Remote Administration Tool For Windows C# (RAT)
Stars: ✭ 819 (+588.24%)
Mutual labels:  tcp, socket, tool
Goproxy
🔥 Proxy is a high performance HTTP(S) proxies, SOCKS5 proxies,WEBSOCKET, TCP, UDP proxy server implemented by golang. Now, it supports chain-style proxies,nat forwarding in different lan,TCP/UDP port forwarding, SSH forwarding.Proxy是golang实现的高性能http,https,websocket,tcp,socks5代理服务器,支持内网穿透,链式代理,通讯加密,智能HTTP,SOCKS5代理,黑白名单,限速,限流量,限连接数,跨平台,KCP支持,认证API。
Stars: ✭ 11,334 (+9424.37%)
Mutual labels:  tcp, socket
Eye
Process monitoring tool. Inspired from Bluepill and God.
Stars: ✭ 1,167 (+880.67%)
Mutual labels:  monitoring, tool
Netty Stroll
RPC基础通信框架
Stars: ✭ 77 (-35.29%)
Mutual labels:  tcp, socket
Tcpraw
Sending packets through TCP
Stars: ✭ 86 (-27.73%)
Mutual labels:  tcp, socket
Callmon
CallMon is an experimental system call monitoring tool that works on Windows 10 versions 2004+ using PsAltSystemCallHandlers
Stars: ✭ 83 (-30.25%)
Mutual labels:  monitoring, tool
Cloudprober
An active monitoring software to detect failures before your customers do.
Stars: ✭ 1,269 (+966.39%)
Mutual labels:  monitoring, observability
Easychatandroidclient
EasyChat是一个开源的社交类的App。主要包含消息、好友、群组等相关的IM核心功能。部分界面参照了QQ、微信等相关社交APP。EasyChat APP整体采用MVVM模式,基于JetPack(Lifecycle,LiveData,ViewModel,Room)构建
Stars: ✭ 64 (-46.22%)
Mutual labels:  tcp, socket
Awesome Ebpf
A curated list of awesome projects related to eBPF.
Stars: ✭ 1,102 (+826.05%)
Mutual labels:  bpf, ebpf
Kubectl Trace
Schedule bpftrace programs on your kubernetes cluster using the kubectl
Stars: ✭ 1,194 (+903.36%)
Mutual labels:  bpf, ebpf
Veza
IPC/TCP Networking Utility to connect several processes with great concurrency.
Stars: ✭ 45 (-62.18%)
Mutual labels:  tcp, socket
Hubble
Hubble - Network, Service & Security Observability for Kubernetes using eBPF
Stars: ✭ 1,245 (+946.22%)
Mutual labels:  observability, ebpf
T Io
解决其它网络框架没有解决的用户痛点,让天下没有难开发的网络程序
Stars: ✭ 1,331 (+1018.49%)
Mutual labels:  tcp, socket
Stackdriver Prometheus Sidecar
A sidecar for the Prometheus server that can send metrics to Stackdriver.
Stars: ✭ 91 (-23.53%)
Mutual labels:  monitoring, observability
Smux
smux is a socket multiplexer written in Golang. It provides fast communication by efficiently a single connection.
Stars: ✭ 97 (-18.49%)
Mutual labels:  tcp, socket

Github Actions Go report Coverage Status GoDev

TCPDog is a total solution from exporting TCP statistics from Linux kernel by eBPF very efficiently to store them at your Elasticsearch or InfluxDB database with Geo and ASN informations. It can handle all TCP tracepoints at the same time with different customizeable requests through simple yaml configuration.

Features

  • TCP socket stats by eBPF TCP tracepoints.
  • Supports all TCP tracepoints simultaneously.
  • Customizable TCP fields at kernel space.
  • Ingest to Elasticsearch, ClickHouse or InfluxDB.
  • Central collection through gRPC or Kafka.
  • Supports sampling and filtering at kernel space.
  • Supports Geo and ASN by Maxmind.

topo

Requirements

  • Linux kernel versions 4.16 and later
  • Libbcc

Documentations

Sample Elasticsearch reports

Polygon map and table

Once you installed tcpdog on your servers, you can have the end-user perspective using real performance data which they export by tcpdog. It would be very helpful for SRE and network team to optimize and troubleshooting network and applications. kibana

kibana

You can see all the current available metrics here.

Sample JSON Lines output

[RTT,AdvMSS,TotalRetrans,SAddr,DAddr,DPort,LPort,BytesReceived,BytesSent,timestamp]
[172,1460,0,"10.0.2.15","103.17.108.173",80,0,456,73,1612298721]
[55,1460,0,"10.0.2.15","187.141.67.60",80,0,389,74,1612298722]
[140,1460,0,"10.0.2.15","154.118.230.171",443,0,5209,551,1612298723]
[118,1460,0,"10.0.2.15","88.204.157.165",443,0,4445,514,1612298724]
[8,1460,0,"10.0.2.15","47.254.92.5",80,0,760,70,1612298731]
[1,1460,0,"10.0.2.15","184.51.206.209",443,0,4820,577,1612298735]
[238,1460,0,"10.0.2.15","164.100.61.151",80,0,141,71,1612298737]
[171,1460,0,"10.0.2.15","77.238.121.220",80,0,158,74,1612298742]

License

This project is licensed under MIT license. Please read the LICENSE file.

Contribute

Welcomes any kind of contribution, please follow the next steps:

  • Fork the project on github.com.
  • Create a new branch.
  • Commit changes to the new branch.
  • Send a pull request.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].