Plugins 〉Pixie Grafana Datasource Plugin

Data Source
community

Pixie Grafana Datasource Plugin

  • Overview
  • Installation
  • Change log
  • Related content

What is Pixie?

Pixie is an observability platform for Kubernetes. It allows developers to debug, monitor, and explore their applications. Pixie uses eBPF to automatically capture telemetry data without the need for manual instrumentation.

This plugin allows Grafana users to use Pixie as a datasource in their Grafana dashboards. It can be used to visualize the following data automatically collected in Pixie:

  • Protocol tracing and metrics: Pixie automatically collects full-body messages between the pods of your applications. Supports protocols such as HTTP, MySQL, DNS, and Redis. You can also expose application metrics such as request latency, error rate, and throughput.

  • 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.

<img src=".readme_assets/service-throughput.png" alt="Service throughput" width="525">

<img src=".readme_assets/http-errors.png" alt="HTTP errors by service" width="525">

Getting started

Install Pixie on your Kubernetes cluster.

Installing the Plugin

On Grafana Cloud

The Pixie datasource plugin is available on Grafana Cloud, which makes it easy to install Grafana plugins to your Grafana Cloud instance.

On a local Grafana instance

In order to deploy to a local Grafana instance, you can run the following command:

grafana-cli plugins install pixie-pixie-datasource

Using the plugin

Check out the Grafana plugin tutorial on Pixie's docs.

Pixie's data can be accessed using PxL, the query language for the data it collects. This datasource allows Grafana users to enter a PxL script when using Pixie as a datasource for a panel in their dashboard.

Development

If you want to add a new feature to the plugin, check out CONTRIBUTING.md. We welcome the contributions of the community!

Clone the repo

git clone git@github.com:pixie-io/grafana-plugin.git

Building from source: front-end

Once the repo has been cloned, please:

  1. Install dependencies

    yarn install
    
  2. Build plugin in development mode or run in watch mode

    yarn dev
    

    or

    yarn watch
    
  3. Build plugin in production mode

    yarn build
    

Building from source: back-end

  1. Update Grafana plugin SDK for Go dependency to the latest minor version:

    go get -u github.com/grafana/grafana-plugin-sdk-go
    
  2. Build backend plugin binaries for Linux, Windows and Darwin:

    mage -v
    

Installing the dev version of the plugin

  1. Copy the dist folder to your Grafana plugins directory.

  2. Edit your Grafana configuration file to detect the plugin binaries. Additional details here.

For more information, visit the docs on plugin installation.

Changelog

0.0.1

Initial release. This plugin supports Pixie as a backend datasource for Grafana. Both time range and interval macros are supported.