Skip to content

Commit ca3c2a9

Browse files
authored
Add docs for Pixie Plugin System (#154)
* plugin docs Signed-off-by: Michelle Nguyen <michellenguyen@pixielabs.ai> * add in reference index Signed-off-by: Michelle Nguyen <michellenguyen@pixielabs.ai> * update OTel Export link Signed-off-by: Michelle Nguyen <michellenguyen@pixielabs.ai> * address comments Signed-off-by: Michelle Nguyen <michellenguyen@pixielabs.ai>
1 parent ff24bd9 commit ca3c2a9

6 files changed

Lines changed: 61 additions & 5 deletions

File tree

content/en/01-about-pixie/04-roadmap.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,4 +30,4 @@ We are building a data plane for Kubernetes rather than a full-fledged observabi
3030
* Non-Kubernetes environments
3131
* Alerting (available via Pixie’s New Relic One integration or [Slackbot](/tutorials/integrations/slackbot-alert) API integration)
3232
* Advanced dashboarding (available with Pixie's [Grafana plugin](/reference/plugins/grafana))
33-
* Long-term storage (available with [New Relic One integration](https://newrelic.com/platform/kubernetes-pixie))
33+
* Long-term storage (available with the [Pixie Plugin system](/reference/plugins/plugin-system) and [New Relic One integration](https://newrelic.com/platform/kubernetes-pixie))

content/en/01-about-pixie/05-faq.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ Pixie has a [1GiB memory requirement](/installing-pixie/requirements/#memory) pe
7474

7575
Retention time depends on the level of traffic in your cluster, but will generally be on the order of hours. Each data table in Pixie (e.g. `http_events`) has its own maximum size. These tables collect data until the maximum size is reached, and then begin dropping the oldest data.
7676

77-
We recommend integrating with third-party observability tools (such as [New Relic’s integration](https://newrelic.com/platform/kubernetes-pixie)) to provide long-term retention.
77+
Pixie's [Plugin System](/reference/plugins/plugin-system) integrates with other tools to for long-term retention. Other third-party observability tools (such as [New Relic’s integration](https://newrelic.com/platform/kubernetes-pixie)) may also provide this capability.
7878

7979
### How does Pixie secure its data?
8080

@@ -146,7 +146,7 @@ Pixie does not yet offer full RBAC support. However, you can enable “Approvals
146146

147147
Pixie does not offer alerting. However, alerts can be set up using Pixie’s API. For example, see the [Slackbot Alert Tutorial](/tutorials/integrations/slackbot-alert/).
148148

149-
For comprehensive alerting, we recommend integrating with third-party observability tools (such as New Relic’s integration).
149+
For comprehensive alerting, we recommend integrating with third-party observability tools (such as New Relic’s integration). In the future, Pixie's [Plugin System](/reference/plugins/plugin-system) will allow easy integration with other tools to setup alerts using Pixie data.
150150

151151
### How do I delete a cluster?
152152

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
---
2+
title: "Pixie Plugin System"
3+
metaTitle: "Reference | Plugins | Pixie Plugin System "
4+
metaDescription: "Pixie's Plugin System"
5+
order: 1
6+
---
7+
8+
Pixie's primary focus is to build a real-time debugging platform, not a full-fledged observability solution. Pixie provides a plugin system to integrate with external tools to enable capabilities like longterm data retention and alerting.
9+
10+
- [*Longterm Data Retention*](#longterm-data-retention): Pixie only retains up to 24 hours of data. Leverage an external datastore for longterm data retention by sending Pixie data in the [OpenTelemetry](https://opentelemetry.io/) format. Future support will be added for querying longterm data from within the Pixie UI, allowing you to use PxL and Pixie's versatile live views.
11+
- *Alerts* (Coming Soon!): Power alerts using Pixie's rich dataset, all configurable from within Pixie's UI.
12+
13+
## Enabling a Plugin
14+
15+
Plugins can be configured from within the Admin UI.
16+
17+
1. Open the Live UI and navigate to the Plugins tab on the Admin page (`/admin/plugins`).
18+
2. Find the plugin you wish to enable and click the toggle to enable/disable the plugin.
19+
3. Expand the plugin row to specify the necessary configuration values. The required set of fields differs per plugin provider, and usually contains information such as API keys which are used for authentication.
20+
21+
## Longterm Data Retention
22+
23+
Enable a plugin which offers longterm data retention capabilities to send Pixie data to an external datastore. This plugin allows you to configure PxL scripts to export data at regularly scheduled intervals. This only currently supports exporting data through the [OpenTelemetry](https://opentelemetry.io/) format.
24+
25+
By default, the plugin provider has configured a set of preset scripts. These will automatically start running and exporting data from all clusters in the org as soon as the plugin is enabled. Users can also choose to export custom data by creating a custom export script.
26+
27+
### Configuring Preset Export Scripts
28+
29+
1. [Enable a plugin provider](#enabling-a-plugin) which supports longterm data retention.
30+
2. Open the Live UI and navigate to the Data Export page in the sidebar (`/configure-data-export`).
31+
3. All preset scripts are listed under `<Plugin Provider> Scripts`.
32+
4. Click the toggle to enable/disable the export from the preset script.
33+
5. Click the gear icon to configure the preset script. Name, description, and PxL is uneditable. However, users may choose which clusters to export from and how frequently the script is run.
34+
6. Click "Save" to update the script with your changes.
35+
36+
### Creating Custom Export Scripts
37+
38+
1. [Enable a plugin provider](#enabling-a-plugin) which supports longterm data retention.
39+
2. Open the Live UI and navigate to the Data Export page in the sidebar (`/configure-data-export`).
40+
3. Under `Custom Scripts`, click the `Create Scripts` button on the right-hand side.
41+
4. Enter a script name and description.
42+
5. Select which clusters to export from. If none is specified, data will be exported from all clusters in the org.
43+
6. Enter the PxL script. This script should contain a `px.export` call for exporting data to the OpenTelemetry format. See our [OpenTelemetry export tutorial](/tutorials/integrations/otel/) and [OpenTelemetry export reference docs](/reference/pxl/otel-export/) for more information. No `endpoint` needs to be specified to the `px.otel.Data` object, as this will be filled in automatically based on the selected plugin provider.
44+
7. Select how often this script should run.
45+
8. Select the plugin provider to export this data to.
46+
9. Click "Create" to save your settings. Data export should start immediately.
47+
48+
## Contributing a Plugin
49+
50+
Interested in contributing a plugin to our Plugin system? Check out our [Pixie Plugin Repository](https://github.com/pixie-io/pixie-plugin) and follow the provided instructions.
51+

content/en/05-reference/03-plugins/01-grafana.md renamed to content/en/05-reference/03-plugins/02-grafana.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
title: "Grafana Datasource Plugin"
33
metaTitle: "Reference | Plugins | Grafana Datasource Plugin "
44
metaDescription: "Pixie's Grafana Datasource Plugin"
5-
order: 1
5+
order: 2
66
---
77

88
The Pixie Datasource plugin allows you to visualize data from the Pixie observability platform in Grafana.

content/en/05-reference/03-plugins/index.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,10 @@ metaDescription: "Reference docs for Pixie plugins."
55
order: 3
66
---
77

8-
Plugins available for Pixie:
8+
Plugins available in Pixie:
9+
10+
- [Pixie Plugin System](/reference/plugins/plugin-system)
11+
12+
Plugins available for Pixie in other tools:
913

1014
- [Grafana Datasource Plugin](/reference/plugins/grafana)

content/en/05-reference/index.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ order: 50
3232

3333
#### Plugins
3434

35+
- [Pixie Plugin System](/reference/plugins/plugin-system)
3536
- [Grafana Datasource Plugin](/reference/plugins/grafana)
3637

3738
#### PxL Language

0 commit comments

Comments
 (0)