EXCEPTIONERROR = 32, No enabled application monitor is on behalf of queue ?

  • I have launched the Service broker between 2 instances on 2 VMs and it worked normally. for example, ServerA as the initiator and ServerB as the target server.

    then ran below scripts on database which receives the ssb message on ServerB.

    CREATE QUEUE NotifyQueue ;

    GO

    CREATE SERVICE NotifyService

    ON QUEUE NotifyQueue

    ([http://schemas.microsoft.com/SQL/Notifications/PostEventNotification]);

    GO

    CREATE ROUTE NotifyRoute

    WITH SERVICE_NAME = 'NotifyService',

    ADDRESS = 'LOCAL';

    GO

    CREATE EVENT NOTIFICATION Event_Notify_Test

    ON QUEUE [http://soa.microsoft.com/SOA/USA/InfrastructureService/V10/Test/AllQueue]

    FOR QUEUE_ACTIVATION

    TO SERVICE 'NotifyService' , 'current database'

    GO

    after I sent the XML SSB message from the initiator ServerA, I could find the ssb existing the Queue [http://soa.microsoft.com/SOA/USA/InfrastructureService/V10/Test/AllQueue] and notification queue NotifyQueue.

    then launched the SSBEA program on ServerB and made some configurations changed.

    1.change the service account for SSBEA to one domain account.

    2.create one windows login using the domain account and grant it to the database owner permission in SSB database. then add the domain account into SSBEA Admin group and make it have the full control permissions for SSBEA directory.

    3.the SSBEA configuration file likes below:

    <?xml version="1.0" encoding="utf-8"?>

    <Activator xmlns="http://schemas.microsoft.com/sqlserver/2008/10/servicebroker/externalactivator"

    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

    xsi:schemaLocation="http://schemas.microsoft.com/sqlserver/2008/10/servicebroker/externalactivator EAServiceConfig.xsd"

    >

    <NotificationServiceList>

    <NotificationService name="NotifyService" id="100" enabled="true">

    <Description>My test notification service</Description>

    <ConnectionString>

    <!-- All connection string parameters except User Id and Password should be specificed here -->

    <Unencrypted>server=ServerB;database=SSB;Application Name=MyMessageApplication;Integrated Security=true;</Unencrypted>

    </ConnectionString>

    </NotificationService>

    </NotificationServiceList>

    <ApplicationServiceList>

    <ApplicationService name="MyNotificationService" enabled="true">

    <OnNotification>

    <ServerName>ServerB</ServerName>

    <DatabaseName>SSB</DatabaseName>

    <SchemaName>dbo</SchemaName>

    <QueueName>[http://soa.microsoft.com/SOA/USA/InfrastructureService/V10/Test/AllQueue]</QueueName>

    </OnNotification>

    <LaunchInfo>

    <ImagePath>D:\MyMessageApplication\MyMessageApplication.exe</ImagePath>

    <CmdLineArgs></CmdLineArgs>

    <WorkDir>D:\MyMessageApplication</WorkDir>

    </LaunchInfo>

    <Concurrency min="1" max="1" />

    </ApplicationService>

    </ApplicationServiceList>

    <LogSettings>

    <LogFilter>

    <TraceFlag>All Levels</TraceFlag>

    <TraceFlag>All Modules</TraceFlag>

    <TraceFlag>All Entities</TraceFlag>

    <TraceFlag>Verbose</TraceFlag>

    </LogFilter>

    </LogSettings>

    </Activator>

    from the configuration file ,we can see that the executable program is under D:\MyMessageApplication directory. when I ran the executable program, it can ran successfully and inserted some data into the related tables.

    but when I started the SSBEA, it failed to call the executable program.

    the error message is

    2016/3/31 15:30:12EXCEPTIONERROR = 32, No enabled application monitor is on behalf of queue [ServerB].[SSB].[dbo].[http://soa.microsoft.com/SOA/USA/InfrastructureService/V10/Test/AllQueue].

    I have searched a lot on the internet, but all failed to fix the error.

    can anyone help me ?

    appreciate that.

Viewing 0 posts

You must be logged in to reply to this topic. Login to reply