|
1 | 1 | ---
|
2 | 2 | title: 'Explore extensions'
|
3 | 3 | menuTitle: 'Explore extensions'
|
4 |
| -description: 'Explore the k6 extension ecosystem to find extensions that meet your requirements.' |
| 4 | +description: 'Explore the k6 extension ecosystem to find extensions that fit your use cases.' |
5 | 5 | weight: 01
|
6 | 6 | ---
|
7 | 7 |
|
8 | 8 | # Explore extensions
|
9 | 9 |
|
10 |
| -## Supported by automatic extension resolution |
| 10 | +Extensions can be used to extend the core k6 features to fit your performance-testing use cases. There are two main categories of extensions: |
11 | 11 |
|
12 |
| -These extensions can be used in your test without any additional configuration. They are automatically resolved and loaded by k6 when you [import them in your test script](https://grafana.com/docs/k6/<K6_VERSION>/extensions/run/#using-automatic-extension-loading). |
13 |
| - |
14 |
| -We have two categories of extensions: |
15 |
| - |
16 |
| -| Category | Maintainer | Audited | Cloud support | |
17 |
| -| ------------- | ----------------------------------- | ------- | ------------- | |
18 |
| -| **Official** | Grafana Labs | ✅ Yes | ✅ Yes | |
19 |
| -| **Community** | Community | ✅ Yes | ⚠️ Partial\* | |
| 12 | +| Category | Maintainer | Audited | Cloud support | |
| 13 | +| ------------- | ------------ | ------- | ------------- | |
| 14 | +| **Official** | Grafana Labs | ✅ Yes | ✅ Yes | |
| 15 | +| **Community** | Community | ✅ Yes | ⚠️ Partial\* | |
20 | 16 |
|
21 |
| -\* *Partial* means that they can be used in the CLI with the `--local-execution` mode. Also, on Private Load Zones if a custom image is build. They don't work on Grafana Cloud k6 Public Load Zones. |
| 17 | +\* _Partial_ cloud support means that the extensions can be used in the CLI with the `--local-execution` mode, and on Private Load Zones with a custom image. They don't work on Grafana Cloud k6 Public Load Zones. |
22 | 18 |
|
23 |
| -### Official extensions |
| 19 | +## Official extensions |
24 | 20 |
|
25 |
| -| Extension | Description | Versions | |
26 |
| -| --------- | ----------- | -------- | |
27 |
| -| [xk6-client-prometheus-remote](https://github.com/grafana/xk6-client-prometheus-remote) | Test Prometheus Remote Write-compatible endpoints | 0.3.2 | |
28 |
| -| [xk6-faker](https://github.com/grafana/xk6-faker) | Generate fake data in your tests | 0.4.0, 0.4.1, 0.4.2, 0.4.3, 0.4.4 | |
29 |
| -| [xk6-loki](https://github.com/grafana/xk6-loki) | Test Grafana Loki log ingestion endpoints | 1.0.0, 1.0.1 | |
| 21 | +| Extension | Description | Versions | |
| 22 | +| --------------------------------------------------------------------------------------- | ------------------------------------------------- | ---------------------------------------- | |
| 23 | +| [xk6-client-prometheus-remote](https://github.com/grafana/xk6-client-prometheus-remote) | Test Prometheus Remote Write-compatible endpoints | 0.3.2 | |
| 24 | +| [xk6-faker](https://github.com/grafana/xk6-faker) | Generate fake data in your tests | 0.4.0, 0.4.1, 0.4.2, 0.4.3, 0.4.4 | |
| 25 | +| [xk6-loki](https://github.com/grafana/xk6-loki) | Test Grafana Loki log ingestion endpoints | 1.0.0, 1.0.1 | |
30 | 26 | | [xk6-sql](https://github.com/grafana/xk6-sql) | Test SQL servers | 1.0.0, 1.0.1, 1.0.2, 1.0.3, 1.0.4, 1.0.5 |
|
31 |
| -| [xk6-sql-driver-mysql](https://github.com/grafana/xk6-sql-driver-mysql) | SQL driver for MySQL | 0.1.0, 0.2.0, 0.2.1 | |
32 |
| -| [xk6-sql-driver-postgres](https://github.com/grafana/xk6-sql-driver-postgres) | SQL driver for Postgres | 0.1.0, 0.1.1 | |
33 |
| -| [xk6-ssh](https://github.com/grafana/xk6-ssh) | Use SSH connections in your tests | 0.1.0, 0.1.1, 0.1.2, 0.1.3 | |
| 27 | +| [xk6-sql-driver-mysql](https://github.com/grafana/xk6-sql-driver-mysql) | SQL driver for MySQL | 0.1.0, 0.2.0, 0.2.1 | |
| 28 | +| [xk6-sql-driver-postgres](https://github.com/grafana/xk6-sql-driver-postgres) | SQL driver for Postgres | 0.1.0, 0.1.1 | |
| 29 | +| [xk6-ssh](https://github.com/grafana/xk6-ssh) | Use SSH connections in your tests | 0.1.0, 0.1.1, 0.1.2, 0.1.3 | |
34 | 30 |
|
35 |
| -### Community extensions |
| 31 | +## Community extensions |
36 | 32 |
|
37 | 33 | {{< admonition type="note" >}}
|
38 | 34 |
|
39 |
| -We are working on process for community folks to submit their extensions to be included here. |
| 35 | +We're working on a process for community folks to submit their extensions. |
40 | 36 |
|
41 | 37 | {{< /admonition >}}
|
42 | 38 |
|
43 |
| -| Extension | Description | Versions | |
44 |
| -| --------------------------------------------------------------------------------------- | ------------------------------------------------- | ---------------------------------------- | |
45 |
| -| [xk6-kafka](https://github.com/mostafa/xk6-kafka) | Load test Apache Kafka | 1.0.0 | |
46 |
| -| [xk6-sql-driver-azuresql](https://github.com/grafana/xk6-sql-driver-azuresql) | SQL driver for AzureSQL | 0.1.0, 0.1.1 | |
47 |
| -| [xk6-sql-driver-clickhouse](https://github.com/grafana/xk6-sql-driver-clickhouse) | SQL driver for Clickhouse | 0.1.0, 0.1.1 | |
48 |
| -| [xk6-sql-driver-sqlserver](https://github.com/grafana/xk6-sql-driver-sqlserver) | SQL driver for SQLite3 | 0.1.0, 0.1.1 | |
49 |
| -| [xk6-sse](https://github.com/phymbert/xk6-sse) | Test with Server-Sent Events (SSE) | 0.1.10, 0.1.11 | |
| 39 | +| Extension | Description | Versions | |
| 40 | +| --------------------------------------------------------------------------------- | ---------------------------------- | -------------- | |
| 41 | +| [xk6-kafka](https://github.com/mostafa/xk6-kafka) | Load test Apache Kafka | 1.0.0 | |
| 42 | +| [xk6-sql-driver-azuresql](https://github.com/grafana/xk6-sql-driver-azuresql) | SQL driver for AzureSQL | 0.1.0, 0.1.1 | |
| 43 | +| [xk6-sql-driver-clickhouse](https://github.com/grafana/xk6-sql-driver-clickhouse) | SQL driver for Clickhouse | 0.1.0, 0.1.1 | |
| 44 | +| [xk6-sql-driver-sqlserver](https://github.com/grafana/xk6-sql-driver-sqlserver) | SQL driver for SQLite3 | 0.1.0, 0.1.1 | |
| 45 | +| [xk6-sse](https://github.com/phymbert/xk6-sse) | Test with Server-Sent Events (SSE) | 0.1.10, 0.1.11 | |
| 46 | + |
| 47 | +## Use extensions |
50 | 48 |
|
51 |
| -## Require building a custom k6 binary |
| 49 | +There are two ways to use extensions when running a k6 test script. |
52 | 50 |
|
53 |
| -### Your own extensions |
| 51 | +### Automatic extension resolution |
54 | 52 |
|
55 |
| -If you have developed your own k6 extension or want to use an extension that's not available through automatic extension resolution, you'll need to build a custom k6 binary. This process involves using the xk6 tool to compile k6 with your desired extensions included. Custom binaries give you the flexibility to incorporate any extension from the k6 ecosystem. |
| 53 | +These extensions can be used in your test without any additional configuration. They are automatically resolved and loaded by k6 when you [import them in your test script](https://grafana.com/docs/k6/<K6_VERSION>/extensions/run/#using-automatic-extension-loading). |
56 | 54 |
|
57 |
| -Check out how to [build a custom k6 binary guide](https://grafana.com/docs/k6/<K6_VERSION>/extensions/run/#using-extensions-that-require-building-a-custom-k6-binary) to learn how to create your own k6 binary with custom extensions. |
| 55 | +### Custom k6 binary |
58 | 56 |
|
59 |
| -### More ecosystem extensions |
| 57 | +If you have developed your own k6 extension or want to use an extension that's not available through automatic extension resolution, you have to build a custom k6 binary. The process involves using the xk6 tool to compile k6 with your desired extensions included. Custom binaries give you the flexibility to incorporate any extension from the k6 ecosystem. |
| 58 | + |
| 59 | +Refer to [build a custom k6 binary guide](https://grafana.com/docs/k6/<K6_VERSION>/extensions/run/#use-extensions-with-a-custom-k6-binary) to learn how to create your own k6 binary with custom extensions. |
60 | 60 |
|
61 | 61 | {{< admonition type="caution" >}}
|
62 | 62 |
|
63 |
| -The extensions in this category are not maintained nor audited by Grafana Labs. |
| 63 | +Many other extensions maintained by members of the k6 ecosystem are available in [GitHub](https://github.com/topics/xk6). These extensions aren't maintained nor audited by Grafana Labs. |
64 | 64 |
|
65 | 65 | {{< /admonition >}}
|
66 |
| - |
67 |
| -Many other extensions, maintained by members of the k6 ecosystem are available in [GitHub](https://github.com/topics/xk6). |
0 commit comments