Answered by:
External Activator not launching Application

Question
-
Hello
I am setup an External Activator solution . I think I got everything as it should be, but the application is just not launching on the QUEUE_ACTIVATION event
External Activator service start successfully and its shows a RECEIVES_OCCURRING status in sys.dm_broker_queue_monitors.
The sys.transmission_queue is empty and I can see the messages appearing in sys.conversation_endpoints with a state of CONVERSING
If I run my Application manually it completes the “Receive” command and reply a message without error.
Any ideas?
Regards, WDV
Wednesday, June 20, 2012 3:48 PM
Answers
-
You might start by turning on verbose tracing. Change the LogSettings in the EAService.config to the following so that all activity is logged at the verbose level:
<LogSettings> <LogFilter> <TraceFlag>All Levels</TraceFlag> <TraceFlag>All Modules</TraceFlag> <TraceFlag>All Entities</TraceFlag> <TraceFlag>Verbose</TraceFlag> </LogFilter> </LogSettings>
After successful activation, the log should contain messages like:
6/20/2012 9:36:50 AM VERBOSE Received event notification for [MyServer].[MyDatabase].[dbo].[MyTargetQueue]. 6/20/2012 9:36:50 AM VERBOSE Application process C:\Program Files\MyApplication\MyApplication.EXE was created: id = 7552. 6/20/2012 9:36:50 AM VERBOSE Application process id = 7552 has exited: exit code = 0, exit time = 6/20/2012 9:36:50 AM.
Dan Guzman, SQL Server MVP, http://weblogs.sqlteam.com/dang/
- Marked as answer by Iric Wen Thursday, June 28, 2012 9:53 AM
Wednesday, June 20, 2012 6:00 PM
All replies
-
You might start by turning on verbose tracing. Change the LogSettings in the EAService.config to the following so that all activity is logged at the verbose level:
<LogSettings> <LogFilter> <TraceFlag>All Levels</TraceFlag> <TraceFlag>All Modules</TraceFlag> <TraceFlag>All Entities</TraceFlag> <TraceFlag>Verbose</TraceFlag> </LogFilter> </LogSettings>
After successful activation, the log should contain messages like:
6/20/2012 9:36:50 AM VERBOSE Received event notification for [MyServer].[MyDatabase].[dbo].[MyTargetQueue]. 6/20/2012 9:36:50 AM VERBOSE Application process C:\Program Files\MyApplication\MyApplication.EXE was created: id = 7552. 6/20/2012 9:36:50 AM VERBOSE Application process id = 7552 has exited: exit code = 0, exit time = 6/20/2012 9:36:50 AM.
Dan Guzman, SQL Server MVP, http://weblogs.sqlteam.com/dang/
- Marked as answer by Iric Wen Thursday, June 28, 2012 9:53 AM
Wednesday, June 20, 2012 6:00 PM -
Hi,
I am having the exact same problem, I have turned on verbose logging and still no luck.
Error log doesn't appear to be showing much:
6/12/2013 4:37:14 PM INFO The External Activator service is starting. 6/12/2013 4:37:14 PM INFO Initializing configuration manager ... 6/12/2013 4:37:14 PM INFO Reloading configuration file C:\Program Files\Service Broker\External Activator\config\EAService.config ... 6/12/2013 4:37:14 PM INFO Reloading configuration file completed. 6/12/2013 4:37:14 PM VERBOSE Running recovery using recovery log file C:\Program Files\Service Broker\External Activator\log\EARecovery.rlog ... 6/12/2013 4:37:14 PM VERBOSE Checkpointing recovery log C:\Program Files\Service Broker\External Activator\log\EARecovery.rlog ... 6/12/2013 4:37:14 PM VERBOSE Checkpointing recovery log completed. 6/12/2013 4:37:14 PM VERBOSE Running recovery completed. 6/12/2013 4:37:14 PM INFO Initializing configuration manager completed. 6/12/2013 4:37:14 PM VERBOSE Starting worker threads... 6/12/2013 4:37:14 PM VERBOSE CM-NS-Thread is starting... 6/12/2013 4:37:14 PM VERBOSE Worker threads are successfully started. 6/12/2013 4:37:14 PM INFO The External Activator service is running. 6/12/2013 4:37:14 PM VERBOSE Heartbeat-Thread is starting...
and my queues and services are as follows:
I assumed I was having issues with "poisoned message" and restarted the entire setup (even dropped the db). I still can't get it to launch my exe.
Any suggestions would be greatly appreciated!
Sam
Wednesday, June 12, 2013 10:54 PM -
Did you get your work ?Thursday, June 13, 2013 2:48 PM
-
Hi,
I saw your message while looking for something else... I've been through this...
The SSBEAS is not launching your app because the queue is in a NOTIFIED state. When a queue is in the NOTIFIED state no new notifications are posted for it...
To get it out of this state you must read the messages... you could also launch your app manually (just like the SSBEA service would).
Oh yeah... there is another way... you can reset the service broker... only do this in your development environment though, as you will lose everything in the queues and the service broker GUID will be changed (in which case, routes that depend on the service broker id will need to be re-created).
Hope this helps...
Gabriel
- Edited by gabriel.badea Friday, May 16, 2014 3:59 PM
Friday, May 16, 2014 3:24 PM