Using a Transformer Sandbox Page


The Transformer Sandbox page is a sandbox environment within Beckon that isolates untested transformers and experimentation from production ("Transformer Rules" page). In this article, you will find relevant information that will be helpful when working with a sandbox in Beckon.


To get to the sandbox environment, from the navigation bar, navigate to Connect > Load > Transformer Sandbox.


You will then see the Transformer Sandbox page:


  1. Download Beckon Rules and Scripts: Provides users with a zip file of all available shared rules and scripts that can be used in their custom transformer.
  2. Download Transformer Documentation: Provides users with a pdf documentation of basic transformer rules. This button will be deprecated in the future.
  3. RULES and TEST tabs: Allows users to toggle between the rules and test page.
  4. Upload Rules: Allows users to upload their custom transformers in the sandbox environment.
  5. List of transformers and scripts: Transformers and scripts that are currently used by an account will be listed here. 

light_bulb_small.png Learn more about the function of each shared rules and scripts, refer to Shared Transformer Rules.  


In order to test a transformer, you will need the following:

  • A transformer
  • An input file
  • Mapping file (if applicable)
  • Script (if applicable)

To assist with the following, here is an example of a transformers and an input file that you can use:

Follow the following steps to upload a transformer into the sandbox environment:

  1. Navigate to the Rules tab.
  2. Click on Upload Rules.
  3. Upload the transformer, mapping file, and the script that have been provided.
  4. You should see lunches.json_restaurant_name_mapping.csv, and skip_rows_without_date.rb listed when it's done uploading; the "Last Modified" column will indicate the timestamp for when the transformer was successfully uploaded.

Now that your transformer has been uploaded into the sandbox environment, you need to test it to make sure it works. To verify if the transformer is working, follow these steps:

  1. Click on the tab TEST.
  2. Click on Start Test.
  3. You should then see the additional options. Upload the input file lunches_12_8_2017.csv in the drag and drop area.
  4. Select the transformer from Test > lunches.Transformer_Sandbox__Test_2_.png
  5. With all the options selected, this is what it should look like before we begin testing. Click TEST when you are ready. Transformer_Sandbox__Test_3_.png
  6. After clicking on TEST, the file will begin processing with the transformer that was selected for the input file. Keep in mind that you can check the status of the file by looking at Status column. Screen_Shot_2018-04-11_at_3.42.14_PM.png
  7. You may need to refresh the page a couple of times before the transformation is complete. When it finishes, you will see a status message with "TRANSFORM_SUCCESS."Screen_Shot_2018-04-11_at_3.59.38_PM.png
  8. To download the final output file, click on the drill down (>) Screen_Shot_2019-03-22_at_7.45.38_AM.png icon and you should see the following page:Transformer_Sanbox__Test_4_.png

In the orange box, there are several files available for download:

  • Data File - This is the output file also known as the transformed file. Here is the output file that you should see: Transformed-lunches_12_8_2017 2.csv
  • Metric File - This is a template file that summarizes all the available metrics that are available in the transformed data.
  • Dimension File - This is a template file that summarizes all the possible dimensions that are available in the transformed file.

light_bulb_small.png To learn more about the metric and dimension files, refer to Beckon's Template Files.

Try playing around with the transformer lunches.json to get a better idea of how the transformer works. Since this is a sandbox environment, there's no need to worry about breaking anything! For example, you can replace the dimension_alias rule with the following and compare the output file:

    "dimension_alias": {
      "class": "DimensionAliasRule",
      "aliases": {
        "What cuisine is this?"             : "dimension(Cuisine)",
        "What was the restaurant name?"     : "dimension(Restaurant Name)",
        "Email Address"                     : "dimension(Email Address)",
        "What did you order, bring or make?": "dimension(Lunch Order)",
        "Rating"                            : "dimension(Rating)"




Article is closed for comments.