• Home

Data Sources

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.

Data Sources

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. For more information, see the Request Tracing, Service Performance, and Database Query Profiling tutorials.

  • Resource metrics: CPU, memory and I/O metrics for your pods. For more information, see the Infra Health tutorial.

  • Network metrics: Network-layer and connection-level RX/TX statistics. For more information, see the Network Monitoring tutorial.

  • JVM metrics: JVM memory management metrics for Java applications.

  • Application CPU 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 supports compiled languages (Go, Rust, C/C++). For more information, see the Continuous Application Profiling tutorial.

Pixie can also be configured by the user to collect dynamic logs from Go application code and to run custom BPFTrace scripts.

Supported Protocols

Pixie automatically traces the following protocols:

HTTP2Supported for Golang gRPC (with and without TLS).Golang apps must have debug information.
NATSSupportedRequires a NATS build with debug information.

Additional protocols are under development.

Encryption Libraries

Pixie supports tracing of traffic encrypted with the following libraries:

OpenSSLVersion 1.1.0 or 1.1.1, dynamically linked.
Go TLSRequires a build with debug information.
This site uses cookies to provide you with a better user experience. By using Pixie, you consent to our use of cookies.