ImpulseSync™ User Manual
HomePricingContact Us
  • Introduction
    • What is Impulse?
  • Crash Course of ImpulseSync
    • Overview Of ImpulseSync
    • Step 1: Endpoints
      • Endpoint Configuration
    • Step 2: Jobs
      • Job Configuration
      • Step 2a: Content manipulators
      • Step 2b: Content mapper
    • Step 3: Syncing
  • Getting Started
    • Core Concepts
    • Creating Endpoints
    • Creating Jobs
    • Starting a Transaction
    • Transaction Reports
    • Automating Jobs with Pipelines
    • Scripting Post Sync
    • Scheduling Jobs and Pipelines
    • Dashboard
    • Managing Jobs/Pipelines
    • Content Mapper
      • Aligning Mismatched Content
      • Connector Matrix
      • Locked Fields
      • Content Aligner
      • Aligning Content Challenges
  • Reports
    • Reports Screen
    • Debug Report
    • Messages
  • Connectors
    • Common Job Options
    • All Connectors List
    • Source Connectors
      • Contentful
      • Contentstack
      • dotCMS
      • Drupal v7
      • Drupal v9
      • GitHub
      • GraphQL
      • MS Teams
      • SCP
      • Snapshot
      • Strapi v3
      • Strapi v4
    • Destination Connectors
      • Contentful
      • Contentstack
      • dotCMS
      • SCP
      • Strapi v3
      • Strapi v4
  • Content Manipulators
    • Common Manipulator Options
    • Add Replace Field
    • AI(Artificial intelligence)
    • Change ID Manipulator
    • CSV Store Manipulator
    • Dynamic Job Store Manipulator
    • File to Text
    • Folder Manipulator
    • Get and Set Field
    • Language
    • Liquid Field
      • Liquid On the Quick
      • Basics
        • Impulse Values
        • Impulse Variables
        • Operators
        • Truthy and falsy
        • Types
        • Whitespace control
      • Tags
        • Control flow
        • Impulse Content Objects
        • Iteration
        • Utility
        • Variable
      • Filters
        • abs
        • append
        • capitalize
        • ceil
        • compact
        • concat
        • date
        • date_str
        • default
        • divided_by
        • downcase
        • escape
        • escape_once
        • first
        • floor
        • getStoredValue
        • htmlQuery
        • htmlReplace
        • idMap
        • join
        • jq
        • json
        • last
        • lstrip
        • map
        • minus
        • modulo
        • newline_to_br
        • plus
        • prepend
        • remove
        • remove_first
        • replace
        • replace_first
        • reverse
        • round
        • rstrip
        • section
        • sections
        • size
        • slice
        • sort
        • sort_natural
        • split
        • str_to_date
        • strip
        • strip_html
        • strip_newlines
        • times
        • truncate
        • truncatewords
        • type
        • uniq
        • upcase
        • utl_decode
        • url_encode
      • Liquid Playground
    • Markdown
    • Regex
    • Relationship
    • Store Field
    • Tidy
  • Time Machine
    • Snapshot
    • Viewing Snapshots
    • Delivery from Snapshots
  • Cookbook Recipes
    • Adding Fields
    • Aligning Content between Endpoints
    • Avoid overriding Fields
    • Avoid syncing Content Types
    • Combing Fields
    • Default Field Value
    • File (.doc) to Structured Content
    • File (.docx) to Structured Content - Expanded
    • HTML to Structured Content
    • Language (Locale) mismatch between endpoints
    • Paths/IDs Changed
    • Reference to Value
    • Single Content Type to Multiple
    • Splitting Content with Reference
    • Syncing Content with Languages
    • Text Select to Boolean
    • Text to Reference
    • Text to Reference - liquid
    • Two Sources to One Destination
    • Changing a folder path
    • Combining data between content types
    • Converting HTML Sections
    • JSON object to reference
    • Use CSV to convert values
    • Storing fields with Store field motator
  • Troubleshooting
    • What to do if I run into a Job Problem
    • Troubleshooting via UI
    • Submitting a ticket
  • Using Impulse Headlessly
    • Getting Started with cURL
      • Creating Endpoints
      • Creating Jobs
      • Starting a Transaction
      • Transaction Reports
      • Automating Jobs with Pipelines
      • Scheduling Jobs and Pipelines
      • Aligning Mismatched Content
      • Scripting Post Sync
  • Organization Tier Restrictions
  • Content Storage Options
Powered by GitBook
On this page
  • Generating a Debug Report
  • Pipeline Debug Job
  • Rules of Debug transaction
  • Viewing a Debug Report
  • Reading a Debug Report
  • The Content Object
  • Original Content
  • Manipulators
  • Content Mapping
  • Advanced
  • Deleting Debug Reports
  1. Reports

Debug Report

PreviousReports ScreenNextMessages

Last updated 1 year ago

A debug report can be generated for jobs to test a job's configuration before actually delivering the content.

Generating a Debug Report

A debug report can be generated by running a debug job. This can be done by opening the run job options and selecting "Run Debug".

This will start a new transaction for the job. Once the transaction is finished the Debug Report can be viewed.

Generating a debug report will leave it in storage for the organization until deleted. We suggest deleting debug reports once they are no longer needed to be stored in ImpulseSync storage so as not to incur unexpected costs.

Pipeline Debug Job

A pipeline can also generate debug reports for jobs.

When editing a pipeline, each job can be set to run in debug and generate a debug report for that job.

You can tell which jobs will run in debug mode if the bug icon is filled in.

In the above example, the article -> article job will be run in debug while the other two jobs will not.

To set which jobs in a pipeline should generate a debug report, simple press the bug icon and the debug option will be toggled. (If the debug option is set, pressing the bug icon will remove the debug option, leaving the job to run normally. And vice versa.)

When the pipeline runs, it will run as normal. With the exception that any job with the debug option set, will run in debug mode with the appropriate rules of a debug transaction.

Rules of Debug transaction

There are a few rules to a debug transaction.

  1. A debug transaction will limit the amount of content picked up from each system to 1.

  2. A debug transaction will not deliver content. It will run all the steps like a normal transaction except it will not deliver the content to the system.

Viewing a Debug Report

A debug report can be downloaded and viewed by going to the reports page. Find the transaction that was run with the debug option and open the "action" menu and press "Download Debug Report"

This will then download the debug report in a JSON file. This file can then be viewed with your preferred JSON viewer.

Note: if the debug report does not exist (or couldn't be downloaded) for a transaction, a notification will appear stating that the report does not exist.

Reading a Debug Report

The debug report has 5 attributes in the root JSON object.

  1. transactionId

    • The transaction ID that generated the report

  2. originalContent

    • The content as Motation after being picked up from the source system

  3. manipulators

    • The content as Motation after each manipulator has been run

  4. contentMapping

    • The content as Motation after the content mapper (including field locking) before being delivered to the destination system

  5. advanced

    • Additional details for advanced users of the system and Motiv support

The Content Object

The originalContent, manipulators, and contentMapping attributes all share a common JSON object which will be referred to as a "content" object.

A content object has the following JSON structure.

{
 "totalTime": <time of the step in milliseconds>
 "contentId": <id of the content>
 "language": <id of the language for the content> 
 "fields": [
   {
    "fieldId": <field id/unique name of the field>
    "fieldType": <Motation field type of the field>
    "fieldValue": [
     "binary": <binary values of the field>
     "order": <order of the value>
     "relations": <relationship values of the field>
     "value": <value of the field>
    ]
   }
 ]
}

This content object can be copied and pasted into the liquid template playground to test liquid templates against the values from the content object.

Original Content

The originalContent attribute is the content after it was picked up from the source system and transformed into Motation. The value of this attribute is an array of content objects. Often each content object is a different language of the content.

All manipulators and content mapping will happen after the original content.

Manipulators

The manipulators attribute is the content object after each manipulator runs. The value of this attribute is an array of JSON objects with an attribute which is the name of the manipulator and the order it was run compared all other manipulators. Each manipulator then has an inner JSON object with the attribute "content" which is an array of content objects.

An example of the format for this JSON can be seen below.

 {
  "manipulators": [
   {
    "Liquid-Field-Manipulator-1": {
     "content": [
      { 
       <content object attributes> 
      }
     ]
    }
   }
  ]
 }

The manipulators are listed in the order that they ran during the transaction.

If a manipulator adjusted folders, then the changes to the folders will be seen in the attribute "folder" rather than "content".

Content Mapping

The contentMapping attribute is the content object after the content mapper has run. This includes any locked fields as well as mapped fields. The value of this attribute is an array of content objects.

Advanced

The advanced attribute can often be ignored and is for users with a deep understanding of ImpulseSync or Motiv support. This attribute will contain additional data that can prove useful in select cases where a view of the definition for the content is required.

Deleting Debug Reports

Debug reports can be deleted from storage by going to the reports page, scrolling to the bottom of the page, and pressing the "Delete All Debug Reports" button.

This will then open a confirmation modal to confirm you want to delete all debug reports. To continue with the deletion process, press the new "Delete All Debug Reports" button.

This will then close the confirmation modal and start the deletion process for all debug reports.

When the for a job are configured, the job will automatically remove the debug option. Be sure to check that the debug option is set appropriately after setting start transaction options for a job.

This would be the same as option to 1.

max content to pickup
start transaction options