Pixie uses eBPF to automatically instrument Kubernetes applications. Pixie ships with a set of default data sources, which can also be extended by the user.
Pixie automatically collects the following data:
Protocol traces: Full-body messages between the pods of your applications. Tracing currently supports the following list of protocols.
Resource metrics: CPU, memory and I/O metrics for your pods.
Network metrics: Network-layer and connection-level RX/TX statistics.
JVM metrics: JVM memory management metrics for Java applications.
Application profiles: Sampled stack traces from your application. Pixie’s continuous profiler is always running to help identify application performance bottlenecks when you need it. Currently works for compiled languages (Go, Rust, C/C++).
The following is a list of protocols automatically traced by Pixie.
|HTTP2/gRPC||Partially Supported||Currently only for Golang apps|
Additional protocols are under development.
Pixie supports tracing of traffic encrypted with the following libraries: