Introduction to BAM Toolbox
A toolbox in BAM is an installable archive, with a .tbox extension. It contains all or some of the following artifacts that model a complete usecase. When you install a toolbox, all artifacts inside it get deployed.
- Stream definitions: Contain descriptions of streams of data sent to BAM in order to perform analytics. You can place any number of stream definitions under one toolbox and deploy all of them together. But, each stream definition needs to be in a separate file. For more details on creating stream definition artifacts, see Stream Definition Artifacts.
- Analytics: Contain the hive scripts. Similar to the stream definitions artifact, any number of analytic scripts can be deployed under one toolbox. You can provide the cron expression to schedule the analytic script for each script in a separate properties file. Find more information on creating analytic scripts and cron expressions, see  Analytic Artifacts.
- Dashboard components: Contain the gadget xmls, jaggery files, etc. You can specify the number of tabs, title of tabs, gadgets that are displayed in a tab in a properties file according to which the dashboard is organized. For information on creating the dashboard components, see Dashboard Components.
For example, sample stream definitions, analyzers and dashboard components required to monitor the service statistics of service-hosting WSO2 products are available in the Service Stats
toolbox. Therefore, installing the Service Stats
toolbox simply installs all artifacts to the necessary locations in the server. When data from a service stats data agent reaches BAM, you will see the Service Stats dashboard populated with statistics. For more information on setting up service statistics to BAM from other service-hosting products, see Data Agents.
Shown below is how to add/remove/change default or custom toolboxes:
Installing a default or custom toolbox
WSO2 BAM comes with a set of default toolboxes. In addition, you can also create your own toolboxes with specific requirements and install them through the management console. For information on creating your own custom toolbox, see Creating a Custom Toolbox .
Follow the steps below to install.
Following steps show how to install a toolbox using the management console. Alternatively, in order to remotely deploy a BAM toolbox, copy (scp
) the .tbox
file to <BAM_HOME>/repository/deployment/server/bam-toolbox/
folder, to install it via BAM hot deployment. Create the bam-toolbox
directory if it doesn't exist by default. Currently, it is not possible to deploy a BAM toolbox using a CAR file, and this feature would be released in a future BAM version.
- Log on to BAM management console and select BAM ToolBox -> Add in the Main menu.
- To install one of the default toolboxes, select from the Basic Toolbox list and Install. E.g., Phone Retail Store Toolbox.
- To install a custom toolbox, you can do either of the following:
Select the option Toolbox From File System if the toolbox is in your system. For example,
OR, select the ToolBox From URL if the toolbox is hosted in a location separate from your system, like an SVN. For example, - Click Install. Toolbox installs and the Available BAM Tool Boxes page opens. If the toolbox status is still
Installing
, wait approximately a minute and refresh the page to see the status changed toInstalled
.
Uninstalling a toolbox
Uninstalling a toolbox removes deployed artifacts associated with it from the system. For example, if you have installed some analytic hive script via toolbox, it will be removed when unistalling the toolbox.
Note: The steps below show how to uninstall a toolbox using the management console. Alternatively, you can delete the relevant .tbox file from <BAM_HOME>/repository/deployment/server/bam-toolbox
folder.
- Log in to BAM management console and select BAM ToolBox -> List in the Main menu.
- Select the toolbox and click Uninstall. Wait about a minute and refresh the page to see the toolbox(s) removed.
Editing a toolbox
After installing a toolbox, you might have to edit its contents such as a Hive script. You can do this as follows:
- Go to
<BAM_HOME>/repository/deployment/server/bam-toolbox
folder and select the .tbox file you want to edit. - Open the .tbox file using any file archiving utility (e.g., 7z).
- Edit the files in the toolbox according to your requirements. For example, Hive scripts are in the Analytics folder.
- Once the edits are done, archive the folder again and simply change its extension to tbox.
- Save the edited .tbox file in same
bam-toolbox
folder mentioned above and restart the server.