posted Dec 13, 2012, 2:06 PM by Greg Kent
[
updated Apr 10, 2013, 9:50 AM by Eric Patrick
]
Queue Service can run side by side with Event Service MSMQ.
The following items / steps need to be confirmed as part of setting up Queue Service in a new QBO 3 environment: Ensure Message Queue Services are installed on Machine- Windows 2008 - Server Manager-> Features -> Message Queueing -> Message Queue Services (check) -> Install
Install Queue Service
- Download latest qbo.QueueService.msi from {SourceRoot}qbo v3/Installation. As of the blog post date, this is 1.04
- Install MSI. Ensure during install that "Everyone" option is selected
- Modify C:\Program Files (x86)\Quandis\Qbo Queue Service\QueueService.exe.config:
- QueueSource ConfigFile must point to QBO v3 web.config
Retrofit QBO v3 install if necessary- Ensure latest modules are installed:
- qbo.Application / qbo.AppliationWeb
- qbo.Logging / qbo.LoggingWeb
- qbo.Queue.MSMQ - MessageQueue
- qbo.Queue.ObjectQueue - ObjectQueue based Queues
- qbo.Queue.MSSQL (Optional) - MSSQL Service Broker
- Ensure ObjectQueue.sql, QueueLog.sql tables scripts have been run in target database. They can be obtained from qbo v2 Core/qbo.Database.Application/Tables
- web.config / config entries (web.config has working version of config that can be code compared)
- Ensure section references to Queuing, ObjectQueue, QueueLog, QueueScheduling exist in web.config
- Ensure membership section has fully qualified providers for type attribute: type="qbo.Security.Providers.QboMembershipProvider, qbo.Security" in web.config
- Ensure logging categorySources exists for QueueLogging:
<add switchValue="All" name="QueueSuccess">
<listeners>
<add name="QueueLog" />
</listeners>
</add>
<add switchValue="All" name="QueueFailure">
<listeners>
<add name="QueueLog" />
</listeners>
</add>
<add switchValue="All" name="QueueRetry">
<listeners>
<add name="QueueLog" />
</listeners>
</add>
<add switchValue="All" name="QueueDebug">
<listeners>
<add name="QueueLog" />
</listeners>
</add>
- Ensure logging listener exists for QueueLog
<add name="QueueLog" type="qbo.Logging.QueueLogTraceListener, qbo.Logging" listenerDataType="qbo.Logging.QueueLogTraceListenerData, qbo.Logging" formatter="Text Formatter" />
- Ensure latest Queuing.config is deployed
Initial Testing of Queuing/QueueService- Navigate to /Application/Queue.ashx (there should be no errors)
- All queues should be selected which brings up an edit panel. Ensure drop downs in edit panels contain values. If this does not work, begin troubleshooting
- In a new tab, navigate to another module (eg. /LoanSelect.ashx/Summary?LoanID=1). Queue this operation: manually navigate to /LoanSelect.ashx/Queue/Summary?LoanID=1 . Operation doesn't really do much but proves wiring works.
- "Default Queue" on /Application/Queue.ashx should now reflect newly queued item
- Start Queue Service
- Queue another item manually
- Check /Logging/QueueLog.ashx
- If item is not successfully logged, stop service and begin troubleshooting
|
|