Plugin Development Best Practices

Simple methods to make your plugins run smooth.

Use the `needs( )` method instead of `require( )`.

The needs(*libraries) method wraps the require( ) method with several safeguards and automatically loads RubyGems if needed.

Example usage:

  class MyNeedyPlugin < ScoutAgent::Mission
      needs "faster_csv", "elif"
      # ...
  end
  

Don't use alerts for notifications on a changing metric.

The logic for this already exists using triggers.

Scout Plugins on GitHub

Browse existing plugins.

Scout Agent on GitHub

View the Scout Agent code on GitHub.

Google Group

Scout-related discussion and troubleshooting.