I implemented this technique and it has already uncovered numerous sync failures due to DupeCatcher validation rules that were not identified in the Marketo Notifications.
I discovered that the minimum time interval for the Date of Activity constraint is minutes, not seconds, so I initially changed the Wait flow action before the Request Campaign flow action to 1 minute and the Not Lead was Synced to SFDC flow action's Date of Activity constraint to 2 minutes. However, I was getting a lot of false alerts, so I changeded the Wait flow action before the Request Campaign step to 2 minutes. I also changed the Not Lead was Synced to SFDC flow action's Date of Activity constraint to 5 minutes because the Request Campaign flow action sometimes is executed much longer than the 2 minutes in the Wait flow action after the sync to SFDC flow actions (I guess due to processing latency in Marketo). I also expanded the instructions below to include all of the flow actions that cause a lead to be synced to SFDC. I'll update my post if I discover any other issues over time.
1. Using the Campaign Inspector, identify all of your smart campaigns that contain a flow action that causes a lead to be synced to SFDC.
-
Sync Lead to SFDC
-
Create Task
-
Change Owner
-
Add to SFDC Campaign
-
Change Status in SFDC Campaign
-
Remove from SFDC Campaign
-
Change Program Status (if synched to a SFDC Campaign)
2. In the Flow section of each of the smart campaigns identified above, add the following flow actions after the last flow action that causes a sync to SFDC in the smart campaign. If there are multiple"sync to SFDC" flow actions in the smart campaigns with a wait step between them, then you will want to add the Request Campaign flow action after each "sync to SFDC" flow action.
-
Wait: 2 minutes
-
"Request Campaign: SFDC Sync Failure Alert" flow action
3. Create the SFDC Sync Failure Alert smart campaign as follows.
-
In the Smart List section, add the following:
-
Campaign is Requested trigger with the "Source: Marketo Flow Action" constraint
-
Not Lead was Synced to SFDC with the following constraints
-
Assign To: is not empty
-
Date of Activity: in past 5 minutes
-
In the Flow section of the smart campaign, add a Send Alert flow action
-
In the Schedule tab of the smart campaign, you may want to use the "Only Once" qualification rule rather than "EveryTime" to prevent a flood of emails from successive synch failures on the same lead. If you do this, you'll need to clone the SFDC Sync Failure Alert smart campaign after you get an alert and delete the previous version, so that the lead can flow through the alert again. But if you get these alerts often for different leads, you probably should leave the qualification rule as "Every Time".
Due to the unpredictability of the time to process the flow actions and the consequent need to have a 5 minute window to detect if a sync has occured or not, It's possible that if multiple "syncs to SFDC" occur during this period and at least one is succesful the failed sync will not be detected.