Extension Kits

Steadybit's Extension Kits allow you to extend the Chaos Engineering capabilities by adding support for additional technologies or proprietary applications. So, you only need to know about these kits if you are considering authoring a custom extension.

Steadybit provides development kits for the following purposes:

  • ActionKit to create your own custom Chaos Engineering attacks, checks for integrating, e.g., into observability or load test integration

  • AdviceKit to implement your own advice and ease identifying experiments and tracking progress

  • DiscoveryKit to support discovery of new infrastructure components

  • EventKit to send events about running experiments from Steadybit to other third-party applications (e.g., observability)

All these development kits are agnostic to the programming language and rely on HTTP interfaces. However, if you want to develop your extension using Go, we recommend our ExtensionKit to benefit from helpful utility classes and best practices.

ActionKit

The Steadybit ActionKit enables the extension of Steadybit with new action capabilities that you can use within experiments. For example, ActionKit can be used to author open/closed source:

  • attacks to attack AWS, Azure, and Google Cloud services that Steadybit cannot natively attack,

  • integrate load testing tools,

  • health and state checks and

  • every other runnable action!

You can learn more about ActionKit through its GitHub repository.

AdviceKit

The Steadybit AdviceKit enables the extension of Steadybit's advice for providing guidance on reliability configuration issues and suggesting appropriate experiments.

You can learn more about AdviceKit through its GitHub repository.

DiscoveryKit

The Steadybit DiscoveryKit enables the extension of Steadybit with new discovery capabilities. For example, DiscoveryKit can be used to author open/closed source discoveries for:

  • proprietary technology,

  • non-natively supported open-source tech,

  • hardware components and

  • every other 'thing' you would want to see and attack with Steadybit.

You can learn more about DiscoveryKit through its GitHub repository.

EventKit

EventKit allows extensions to consume events from the Steadybit platform to integrate with third-party systems. Extensions leveraging EventKit are similar to webhooks but do not face the typical web routing issues as Steadybit agents handle this aspect. You can use EventKit to:

  • Forward audit logs to an external system.

  • Add markers to monitoring systems' charts during experiment runs.

  • Capture experiment run statistics.

  • Report information about experiment runs to Slack, Discord etc.

You can learn more about EventKit through its GitHub repository.

ExtensionKit

Through kits like ActionKit and DiscoveryKit, Steadybit can be extended with new capabilities. ExtensionKit on the other hand contains helpful utilities and best practices for extension authors leveraging the Go programming language.

You can learn more about ExtensionKit through its GitHub repository.

Last updated