LogoLogo
Reliability HubAPI DocsPlatform
  • Welcome to Steadybit
  • Quick Start
    • First Steps
    • Compatibility
    • Install Agent and Extensions
    • Run an Experiment
    • Deploy Example Application
  • Concepts
    • Actions
    • Discovery
    • Query Language
  • Install and Configure
    • Install Agent
      • Architecture
      • Install on Kubernetes
      • Install on Linux Hosts
      • Install using Docker Compose
      • Install on Amazon ECS
      • Extension Registration
      • Using Mutual TLS for Extensions
      • Configuration Options
      • Agent State
      • Agent API
    • Install On-Prem Platform
      • Install on Minikube
      • Advanced Agent Authentication
      • Configuration Options
      • Maintenance & Incident Support
      • Syncing Teams via OIDC Attribute
    • Manage Environments
    • Manage Teams and Users
      • Users
      • Teams
      • Permissions
    • Manage Experiment Templates
  • Use Steadybit
    • Experiments
      • Design
      • Run
      • Run History
      • Schedule
      • Variables
      • Emergency Stop
      • Share
        • Templates
        • Duplicate
        • File
      • OpenTelemetry Integration
    • Explorer
      • Landscape
      • Targets
      • Advice
    • Reporting
  • Integrate with Steadybit
    • Extensions
      • Anatomy of an Extension
      • Extension Installation
      • Extension Kits
      • Available Extensions
    • API
      • Interactive API Documentation
    • CLI
    • Badges
    • Webhooks
      • Custom Webhooks
      • Preflight Webhooks
    • Preflight Actions
    • Slack Notifications
    • Audit Log
    • Hubs
  • Troubleshooting
    • How to troubleshoot
    • Common fixes
      • Extensions
      • Agents
      • On-prem platform
Powered by GitBook

Extension Docs

  • ActionKit
  • DiscoveryKit
  • EventKit

More Resources

  • Reliability Hub
  • API Docs
On this page
  • ActionKit
  • AdviceKit
  • DiscoveryKit
  • EventKit
  • ExtensionKit
  • PreflightKit

Was this helpful?

Edit on GitHub
  1. Integrate with Steadybit
  2. Extensions

Extension Kits

Last updated 1 month ago

Was this helpful?

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:

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

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

  • to support discovery of new infrastructure components

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

  • utility classes and best practices for extension authors using the Go programming language

  • to implement preflight actions that can be used to prevent experiment executions

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 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!

AdviceKit

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

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.

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.

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.

PreflightKit

PreflightKit enables the extension of Steadybit with new preflight capabilities that you can use to prevent experiment executions. For example, PreflightKit can be used to author open/closed source:

  • preflight actions to allow or disallow experiment executions based on the experiment and its targets,

  • preflight actions to prevent experiment executions based on the time of day / maintenance windows,

  • or anything else you can think of!

You can learn more about ActionKit through its .

You can learn more about AdviceKit through its .

You can learn more about DiscoveryKit through its .

You can learn more about EventKit through its .

You can learn more about ExtensionKit through its .

You can learn more about PreflightKit through its .

GitHub repository
GitHub repository
GitHub repository
GitHub repository
GitHub repository
GitHub repository
advice
ActionKit
AdviceKit
DiscoveryKit
EventKit
ExtensionKit
PreflightKit
ExtensionKit
ActionKit logo depicting the text action kit and a crosshair icon
AdviceKit logo depicting the text advice kit and a shield icon
DiscoveryKit logo depicting the text discovery kit and a radar dish icon
EventKit logo depicting the text event kit and a bell icon
ExtensionKit logo depicting the text extension kit and a wrench icon
PreflightKit logo depicting the text preflight kit and a preflight icon
ActionKit logo depicting the text action kit and a crosshair icon
AdviceKit logo depicting the text advice kit and a shield icon
DiscoveryKit logo depicting the text discovery kit and a radar dish icon
EventKit logo depicting the text event kit and a bell icon
ExtensionKit logo depicting the text extension kit and a wrench icon
PreflightKit logo depicting the text preflight kit and a preflight icon