Open source Kubernetes observability for developers
Pixie is an open-source observability tool for Kubernetes applications. Use Pixie to view the high-level state of your cluster (service maps, cluster resources, application traffic) and also drill down into more detailed views (pod state, flame graphs, individual full-body application requests).
Why Pixie?
Three features enable Pixie's magical developer experience:
Auto-telemetry: Pixie uses eBPF to automatically collect telemetry data such as full-body requests, resource and network metrics, application profiles, and more. See the full list of data sources here.
In-Cluster Edge Compute: Pixie collects, stores and queries all telemetry data locally in the cluster. Pixie uses less than 5% of cluster CPU and in most cases less than 2%.
Scriptability: PxL, Pixie’s flexible Pythonic query language, can be used across Pixie’s UI, CLI, and client APIs.
Use Cases Network Monitoring
Use Pixie to monitor your network, including:
For more details, check out the tutorial or watch an overview.
Infrastructure Health
Monitor your infrastructure alongside your network and application layer, including:
For more details, check out the tutorial or watch an overview.
Service Performance
Pixie automatically traces a variety of protocols. Get immediate visibility into the health of your services, including:
For more details, check out the tutorial or watch an overview.
Database Query Profiling
Pixie automatically traces several different database protocols. Use Pixie to monitor the performance of your database requests:
For more details, check out the tutorial or watch an overview.
Request Tracing
Pixie makes debugging this communication between microservices easy by providing immediate and deep (full-body) visibility into requests flowing through your cluster. See:
For more details, check out the tutorial or watch an overview.
Continuous Application Profiling
Use Pixie's continuous profiling feature to identify performance issues within application code.
For more details, check out the tutorial or watch an overview.
Distributed bpftrace Deployment
Use Pixie to deploy a bpftrace program to all of the nodes in your cluster. After deploying the program, Pixie captures the output into a table and makes the data available to be queried and visualized in the Pixie UI. TCP Drops are pictured. For more details, check out the tutorial or watch an overview.
Dynamic Go Logging
Debug Go binaries deployed in production environments without needing to recompile and redeploy. For more details, check out the tutorial or watch an overview.
Get Started
It takes just a few minutes to install Pixie. To get started, check out the Install Guides.
Once installed, you can interact with Pixie using the:
Get Involved
Pixie is a community-driven project; we welcome your contribution! For code contributions, please read our contribution guide.
Latest Releases
We version separate components of Pixie separately, so what Github shows as the "latest" release will only be the latest for one of the components. We maintain links to the latest releases for all components here:
Changelog
The changelog is stored in annotated git tags.
For vizier:
git for-each-ref refs/tags/release/vizier/$tagname --format='%(tag) %(contents)'
For the CLI:
git for-each-ref refs/tags/release/cli/$tagname --format='%(tag) %(contents)'
These are also published on the releases page.
Adopters
The known adopters and users of Pixie are listed here.
Software Bill of Materials
We publish a list of all the components Pixie depends on and the corresponding versions and licenses here.
About Pixie
Pixie was contributed by New Relic, Inc. to the Cloud Native Computing Foundation as a Sandbox project in June 2021.
License
Pixie is licensed under Apache License, Version 2.0.
Twice a month we will interview people behind open source businesses. We will talk about how they are building a business on top of open source projects.
We'll never share your email with anyone else.