Event ID 2210 — Trigger Service Invocation

Applies To: Windows Server 2008

You can use the Message Queuing Triggers service to associate the arrival of each incoming message at a queue with a response that depends on the contents of the message. The response may invoke either a Component Object Model (COM) component or a stand-alone executable program. These components or programs can define business rules that can be invoked in response to such messages, without any additional programming. If a trigger invocation fails, the message processing logic that depends on that trigger will not be carried out.

Event Details

Product: Windows Operating System
ID: 2210
Source: MSMQ
Version: 6.0
Symbolic Name: MSMQ_TRIGGER_TRANSACTIONAL_INVOCATION_FAILED
Message: Rule evaluation or execution failed for the transactional trigger %3 with the ID %4. Error %1: %2

Diagnose

The invocation of a Message Queuing trigger rule can fail for several reasons. This error might be caused by one of the following conditions:

  • A rule's condition or action parameter is not valid.
  • The Component Object Model (COM) object that is invoked by a rule is not registered correctly.
  • The executable file that is specified in the rule could not be found or is not functional.

To perform these procedures, you must have membership in Administrators, or you must have been delegated the appropriate authority.

A rule's condition or action parameter is not valid

To determine the validity of a rule's condition or action parameter:

  1. Open the Computer Management snap-in. To open Computer Management, click Start. In the search box, type compmgmt.msc, and then press ENTER.
  2. In the console tree, expand Services and Applications, expand Message Queuing, and then expand Triggers.
  3. Under Message Queuing Triggers, click Triggers.
  4. Right-click the rule that you want to execute to see its properties.
  5. Click the General tab. Confirm that the rule is pointing to the desired queue and that the processing type is correct.
  6. Click the Attached Rules tab, and ensure that the attached rules are as you intended.
  7. Under Triggers, click Rules to display a list of available rules.
  8. Right-click the rules that should be executed with the trigger, and view their properties.
  9. On the Rules Conditions tab, confirm that the rule conditions are as desired.
  10. On the Rule Action tab, confirm that the rule points to the desired action.
  11. If you determine that a rule's condition or parameter is the problem, see the section titled "Configure rules or triggers."

The COM object that is invoked by a rule is not registered correctly

To determine whether the COM object is registered correctly:

  1. Open the Component Services snap-in. To open Component Services, click Start, and then click Run. In the Open box, type comexp.msc, and then press ENTER.
  2. In the console tree, expand Component Services, expand Computers, expand My Computer, and then click COM+ Applications.
  3. Confirm that your COM component is present and registered.
  4. If you determine the COM object is not registered properly, then see the section titled "Register the COM+ component."

The executable file that is specified in the rule could not be found or is not functional

To determine whether the executable file exists and is functional:

  1. Open Windows Explorer, and then browse to the executable file that is specified in the event. Confirm that the file exists and that it executes properly.
  2. Determine whether the executable file is referred to properly in the rule. Open the Computer Management snap-in. To open Computer Management, click Start. In the search box, type comexp.msc, and then press ENTER.
  3. In the console tree, expand Computer Management, expand Services and Applications, expand Message Queuing, expand Triggers, expand Rules, and then click Rules.
  4. Right-click the rule that is specified in the error message, and then click Properties.
  5. On the Rule Action tab, under Standalone executable invocation, confirm that the executable that is listed in Executable path exists and is preceded by its full path. For example, instead of just MyApp.exe, you should have c:\MyDirectory\MyApp.exe.
  6. If you determine that there is an issue with the executable file, see the section titled "Delete and recreate the rule."

For more information about creating trigger rules, see Create and attach rules to triggers (https://go.microsoft.com/fwlink/?LinkId=104059).

Resolve

Resolve

Configure rules or triggers

Rule conditions or triggers must be configured properly. If you do not know the intended rule or trigger settings, you may want to contact your solution architect.

To perform this procedure, you must have membership in Administrators, or you must have been delegated the appropriate authority.

To confirm and change rules and triggers:

  1. Open the Computer Management snap-in. To open Computer Management, click Start. In the search box, type compmgmt.msc, and then press ENTER.
  2. Expand Services and Applications, expand Message Queuing, and then expand Triggers.
  3. Under Message Queuing Triggers, click Triggers.
  4. Right-click the rule that you want to execute, and then click Properties.
  5. Click the General tab. Confirm that the rule is pointing to the desired queue and that the processing type is correct.
  6. Click the Attached Rules tab, and ensure that the attached rules are as you intended.
  7. Under Triggers, click Rules to display a list of available rules.
  8. Right-click the rules that should be executed with the trigger, and view their properties.
  9. On the Rules Conditions tab, confirm that the rule conditions are as desired.
  10. On the Rule Action tab, confirm that the rule points to the desired action.
  11. Repeat steps 7 through 10 for each rule.

Register the COM+ object

The COM+ object that was invoked by a rule is not registered correctly. To register the object again, you can use the command-line utility regsvr32.exe. For more information about using regsvr32, see article 249873 in the Microsoft Knowledge Base (https://go.microsoft.com/fwlink/?LinkId=107513).

To perform this procedure, you must have membership in Administrators, or you must have been delegated the appropriate authority.

To register the COM+ object:

  1. Run regsvr32.exe. To run regsvr32.exe, click Start. In the search box, type cmd, and then press ENTER.
  2. At the command prompt, type regsvr32 <your COM+ component.dll>, and then press ENTER.

Delete and recreate the rule

The executable that is specified in the rule cannot be found or is not functional. To resolve this issue, try deleting and recreating the specified rule.

To perform this procedure, you must have membership in Administrators, or you must have been delegated the appropriate authority.

To delete and recreate a specified rule:

  1. Open the Computer Management snap-in. To open Computer Management, click Start. In the search box, type compmgmt.msc, and then press ENTER.
  2. In the console tree, expand Computer Management, expand Services and Applications, expand Message Queuing, expand Triggers, expand Rules, and then click Rules.
  3. Select the rule that is specified in the error message, and then double-click it.
  4. Ensure that you provide the full path to your executable in the rule.

For more information about creating trigger rules, see Create and attach rules to triggers (https://go.microsoft.com/fwlink/?LinkId=104059).

Verify

The Message Queuing Triggers service invocation failed. The following are possible causes:

  • The Message Queuing Triggers service is not installed or not running.
  • Triggers may not point to the correct queue, or rules may not point to the correct Component Object Model (COM) component or executable program.

Use the following procedures to verify that the Message Queuing Triggers service is installed and running and that the triggers are pointing to the right queue and the rules point to the correct COM component or executable program.

To perform these procedures, you must have membership in Administrators, or you must have been delegated the appropriate authority.

Verify that the Message Queuing Triggers service is installed and running

To confirm that the Message Queuing Triggers service is installed and running:

  1. Open the Services snap-in. To open Services, click Start. In the search box, type services.msc, and then press ENTER.
  2. Scroll down the list of services to confirm the existence of the Message Queuing Triggers service.
  3. In the Status column, confirm that the Message Queuing Triggers service is Started.

Verify that the triggers point to the correct queue and the rules point to the correct COM component or executable program

To verify that the triggers are pointing to the right queue and the rules point to the correct COM component or executable program:

  1. Open the Computer Management snap-in. To open Computer Management, click Start. In the search box, type compmgmt.msc, and then press ENTER.
  2. In the console tree, expand Services and Applications, expand Message Queuing, expand Message Queuing Triggers, and then click Triggers. Your triggers are in the details pane.
  3. Right-click the rule that you want to be executed, and then click Properties.
  4. On the General tab, under Monitored queue, confirm that the correct queue is displayed. Also, confirm that the Message processing type is correct.
  5. On the Attached Rules tab, confirm that the attached rules are correct.
  6. Return to Computer Management.
  7. Click Triggers to see a list of available rules.
  8. For each rule that should be executed with the trigger, right-click the rule, and then click Properties.
  9. On the Rule Condition tab, confirm that the conditions are as desired.
  10. On the Rule Action tab, confirm that the rule points to the desired action.

Trigger Service Invocation

Message Queuing