Get Notified of Workflow Errors

This post applies to SharePoint 2007, SharePoint 2010, and even SharePoint Online in Office 365.

This DOES apply to SharePoint 2010 workflows created in SharePoint Designer 2013 (on prem or O365).  This DOES NOT apply to SharePoint 2013 workflows. They store errors very differently, so there isn’t an equivalent solution.

There is a way in SharePoint to create alerts based on filtered views, which I have blogged about before.  In this post, I’ll show you how to create an alert so that you’ll be notified when errors occur in your workflows.

The first trick is to find the workflow history list.  It is hidden.  This is where all of the workflow information is automatically recorded as workflows run.  This list is under Lists, and is called “Workflow History”, so the URL will be:

http://YOURSITE/Lists/Workflow%20History/

Create a new view of the list, you can call it ERRORS, and set the filter settings:

Description contains failed OR Description contains error

(Note that these 2 filters have seemed to encompass all errors I’ve come across, but I’m not positive that there won’t be some other error that’s got different verbiage than this)

ch5[120]

Save the new view.

Create a new alert for yourself on this workflow history list, and in the section Send alerts for these changes, pick the ERRORS view you created.  You can even set the alert title to something catchy like “Workflow errors”

ch5[121]

Note, here’s another blog post I’ve written about the workflow history list:

SharePoint Workflow History Issue

20 comments

  • This encompasses OOTB workflows as well as SPD?

  • Hi Nancy, Yes, it encompasses all workflows.

  • Hi Laura, I am not a developer like you and i want to make the “Today”column to update everyday. How can i do that? Thanks 🙂

  • Evelyn, You’d have to use the data view web part, and you’d have to do it in XSLT code, unfortunately. I haven’t blogged about it, but basically there’s a $Today parameter that exists that can be used in a formula.

  • Hi Laura, I love ur blogs.. I am daily reader of your blog. I want to Add one column from parent List to its Associate History list. But not getting any solution. Please reply me if this could possible. My Email Add : lavanya.neh@gmail.com

  • Neha, You’re not supposed to modify the built in Workflow History list. Here’s what you can do instead: Create a new custom list (call it “custom WF history” or something, with your own fields for whatever information you want to be logged. After each action in your workflow, add a new action to “create list item” and create an item in your custom WF history list. Set all the field values to whatever you want to, such as the workflow initiator’s name, a description of what just happened in the workflow, etc. It’s totally free-form. This way, you can capture any and all the info you want, without all the weirdness and restrictions of the built in WF history list.

  • “Someone changes an item that appears in the following view…” is not one of the options in front of me (only the first four appear) in the view created from the workflow history list. I’m also filtering on EventID = 10, which gives me both the “error occured” and the more detailed entry. Alternately, I’ve created a workflow status view of my original list diplaying the fields that get added when you first run the workflow. I have about 20 spd wf on this list, but some of them aren’t showing up as fields I can add to a view (and I can’t figure out why). The fifth option for the alert DOES show up if I try and set up the alert here (but without all of the workflow status fields, it is less than completely useful). Is there another way to accomplish this (something administrative)? Thanks in advance (your posts have been quite helpful)

  • Warren, To troubleshoot, can you try creating a filtered view on any other list in sharepoint and see if you can create an alert based on that view? If not, there may be something wrong on the server. 20 workflows on a list? That seems a bit extreme. I’d look at narrowing it down. I hate to do any more than 1 or 2 on a list, and use a lot of conditions to make it do what I want according to different conditions. The issue with them not showing as fields could be related to the fact that there are just so many of them.

  • It is extreme. But the document approval/routing model that SharePoint assumes doesn’t quite fit our needs (think assembly line with QC feedback loops). We transform/scrub 2500 data sets a year, each with 2-20 related files — no way I’m turning that into a document library. So we’ve built a task management/tracking application — using lots of status and category fields. The thing is that we have strict compliance requirements that necessitate a detailed audit trail — the built in workflow history is beyond inadequate. So there’s no direct editing of the list (I took away the edititem form) — every change must go through a workflow so that entries can be made to two different SQL tables (ECT) noting the changes. I have at least two dozen views to go with it (one for every status, etc.) so that people don’t have to do complicated filtering (which doesn’t get remembered after a workflow is run). In fact, if you have any pull with the powers that be, I’d really like to see them change the default bahavior that takes you to the default view of a list after a workflow is run (List Item Menu) on an item. Some sort of LastURL behind the scenes field (like Modified and ModifiedBy) so that whenever you launch a workflow, you return to where you started (even if that item no longer appears on that view). As for the error notification, I was able to use my workflow status view to figure out that the errors were being thrown because of a multi-item edit form (used to set conditions that are then picked up by an OnChange workflow). The problem was that the OnChange workflow fires on every change to a list item — even ones cause by other workflows. So if the item your working on in a standard workflow happens to set conditions used by the onchange workflow, you wind up with conflicting edits being made to an item. I could go on…

  • Hi Laura, Thanks for being my SharePoint Angel many a times. Now, I need two things……… 1. I have created a Workflow in Office 365 (SP2010) for an Expense Submission approval. I am trigerring the Workflow only while Create List Item……… as the Modify trigger is working very funnily……. Generating duplicate mails…….. I want a simple Workflow when the Approver rejects the Expense, the submitter can re-submit the same form and there is a loop…….. I want to be able to do this in SPD2010 itself without coding……….. 2. I want to know if I can and how I can use a Three-state workflow…….. Am not able to find it in the Globally Reusable Workflows in my Sit Collection and Online too……… Help is much appreciated….. Thanks in advance, Regards, Thendral Please help….

  • Warren, Oh yuck. What a mess. I’ll keep that in mind about the redirection, and see if I can maybe meet someone at Microsoft who is on the team that does the workflows. Thendral, Trying to butter me up with compliments, huh? 😉 Is this the enterprise version of SharePoint Online? If so, are you using the “Start Approval…” workflow action? when you use that action, you can just put 3 people’s names in the “To” box, and then it’s a 3 state workflow. I have an Office 365 account also (enterprise version) and I do see the 3 state workflow in there. It’s a site collection feature. You can go into any library’s workflow settings, and click to add a new workflow. Three-state is one of the options. It’s just not in SPD I guess.

  • Any way to create an alert for when the workflow doesn’t start, and the workflow column is blank on the list. I can create a view to target just the items where the workflow column is blank, and the workflow histroy hasn’t been unattached yet (i.e. modified in the last 60 days), but an alert would be great. Any ideas?

  • Link to WF in sharepoint 2007

    hi
    r u sure the link is suppose to work with sharepoint 2007?
    i get to a “The webpage cannot be found” page

    r u familiar with that? the link is different maybe…

    thanks 4 the information sharing

  • Hi Laurie,
    No I haven’t found a way to do that if it isn’t writing anything to the log.

    In 2007, from what I recall it is the same unless you have some custom wf history list with a different name.

    Laura

  • Laura,

    Your posts are always awsome. Thanks for making a good no code solutions. You are a master!!!

    Coming to this, do this work in SharePoint online (0365)workflows? I tried setting up a workflow and kept a bug so that it stucks at particular stage. But i am not getting notified. I even went to workflow history, it is not logging any error in the everntypes.

  • Hi Laura, just had the same idea and tried to achieve the same situation, you described in your post. However I’m also facing the situation, that View-based alerts are kind of buggy. I have the option “Someone changes an item that appears in the following view” BUT it does not show every view. I can only see one view, based on a filter on the Created field.
    If I try to create a new view based on the working one and if I add the additional Event type filter, the view will not show up in the Notification dropdown. It maybe makes sense to mention, that our list ist far(!) above the view list treshold. Just mention this as I assume “Created” might be some kind of indexed oob but Event Type might not.
    “Lucky me” it looks like it is not possible to put an index on “Event Type”, therefore I wonder if this technique works only as long as View List Treshold is not passed.

    • A short update on this story: My approach to reduce the number of history elements below the treshold failed, since the related application creates about 15k entries per month.
      So I tried to create an alert with good old powershell, but struggled at the same point: When I tried to update the filter property, which is just some CAML, I got a less helpfull errormessage.

      So my solution is not to set alerts based on event types, but on description field of the entries, using the “Begins with” filter. For our case this is sufficient, since all error descriptions starts with the same phrase. And the view based on this filter criteria can be selected from UI, as described in your post.
      BR
      Michael

  • I don’t get email alerts for this specific list view filter.. Alerts for other generic list/docs/workflow are all working… Can you guide me please?

    • This is a really, really old blog post, from a concept that was done many years ago. Who knows, Microsoft could have changed some underlying functionality since then. Not sure.

Leave a Reply