Chapters

2.1 Trailblazer PRO Documentation

PRO

Trailblazer PRO is a collection of additional tools for working with Trailblazer, such as the following.

  • A web debugger that integrates with our tracing tools like #wtf.
  • Our BPMN editor for designing long-running workflows that are executed by the trailblazer-workflow process engine.

It is free of charge for low-volume users. Please consider purchasing a subscription in order to support Trailblazer development.

Rails support

Using our web debugger in your project is as easy as the following five steps.

  1. In your Rails’ Gemfile, add the gem.

    
       gem "trailblazer-pro-rails"
     
  2. Get your API key from https://pro.trailblazer.to/settings. You have to sign up with Github if you haven’t before. We’re not asking for a credit card number, upgrading is always possible.
  3. In your Rails app, run our generator and enter your API key.

    
       $ rails g trailblazer:pro:install
     

You’re now ready to trace and debug on the web.

  1. Run your operation via #WTF?.

    
       result = API::V1::Diagram::Operation::Update.wtf?(params: params)
     

Click the [TRB PRO] link in your terminal and start debugging.

Rails support Explicit tracing

You can use the new method Operation.WTF? to explicitly trace using the web debugger.


  result = API::V1::Diagram::Operation::Update.wtf?(params: params)

This will always send the trace to the web, regardless of any configuration.

Rails support Automatic tracing

It’s possible to web-trace operation that’re invoked with the generic Operation.().

For example, you could automatically web-trace specific operation run from a controller with the following configuration in config/environments/development.rb.


  config.trailblazer.pro.trace_operations = {
    "API::V1::Diagram::Operation::Update" => true,
  }

The trace_operations directive allows you to enable web-tracing for particular operations.

If needed, you can enable it for all operations.

# TODO

Rails support Planned

Please note that trailblazer-pro and trailblazer-pro-rails are still experimental, and we’re presently collecting “power user” experiences and feature requests.

Planned features are

  • End-to-end encryption for traces, so we won’t be able to see anything your app is doing.
  • Activity tracing.
  • More configuration of the tracing process.
  • Better production mode: collect the trace (which is fast), and only render it if something went wrong. Add the web-trace link to your exception handlers.
  • Please contact us if you need more: https://github.com/trailblazer/trailblazer-pro-rails/issues or https://trailblazer.zulipchat.com