Skip to main content
Solved

In FME Server, how to pass parameters to the subscriber when a workspace ends on failure?


Hi folks,

I'm using FME Server 2016 here. Basically, my main workspace is published on FME Server with a jobsubmitter service and a notification on job completion. I ask to post to topics on Failure (and I check a topic that I already created in FME Server). This topic triggers a subscriber which is another workspace that sends an email. I want to know how do I manage the parameters that can be passed to the second workspace when the first workspace has failed? For example, the first workspace contains the user email to which we want to send the email in the second workspace. How do I pass it? It seems obvious when the topic is set on Success but not on failure.

Here is what the JSON string automatically passed on failure between both workspace looks like:

[ { "workspace": "aaaaaa.fmw", "timeRequested": "Tue-05-Jul-2016 04:11:39 PM", "requestKeyword": "JOB_SUBMITTER_SERVICE", "timeStarted": "Tue-05-Jul-2016 04:11:39 PM", "repository": "aaaa", "jobsuccess_topic": "", "LogFileName": "job_647.log", "StatusMessage": "Terminator_1: Aborting Translation n'.", "jobfailure_topic": "PUBLISH_FAILURE", "StatusNumber": "859017", "id": "647", "timeFinished": "Tue-05-Jul-2016 04:11:41 PM", "logHome": "//dddddddddd/fmeserver/share///resources/logs", "logUrl": "http://dddddddddd/fmerest/v3/transformations/jobs/id/647/log" } ]

 

 

Is there a way to add parameters to this JSON String other than having to read the job log file and parse it to get my wanted value?

Thanks!

Charles

Best answer by todd_davis

I have had similar issues previously, in that on termination I wanted to send an email to a person who had lodged the job, but the problem was that the process has terminated already.

The answer was to create a parent workspace that used a FmeServerJobSubmitter to call the first process. Waiting for the result, you can them get details of the failure and the parent which still has all the input parameters.

View original
Did this help you find an answer to your question?

2 replies

todd_davis
Influencer
Forum|alt.badge.img+22
  • Influencer
  • Best Answer
  • July 10, 2016

I have had similar issues previously, in that on termination I wanted to send an email to a person who had lodged the job, but the problem was that the process has terminated already.

The answer was to create a parent workspace that used a FmeServerJobSubmitter to call the first process. Waiting for the result, you can them get details of the failure and the parent which still has all the input parameters.


Hi todd,

thank you! That is a good suggestion to overcome the difficulty of launching a workspace on failure from another workspace with appropriate parameters. I will probably try this kind of approach for the moment.

Charles


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings