This post is a 2nd in the series talking about Auto Accept Agent (see the 1st post here). As mentioned in my previous post, I wanted to go over troubleshooting the most common issues with Auto Accept Agent. In this post, we will cover issues with installation of the Auto Accept Agent.
In order to troubleshoot an unsuccessful install of the agent, one should know the different components that are involved when Auto Accept Agent is installed. Prior to installing Auto Accept Agent, you need to choose which security context you want Auto Accept Agent to run under - "Run as Local System" or "This user". If you are running Microsoft Windows Server 2003, it is recommended that you run Auto Accept Agent as a local service, though you do have the option of running in the context of a domain account. If you are running Microsoft Windows 2000 Server, you must run Auto Accept Agent under the security context of a domain account. It is recommended that you create a dedicated account for this purpose. Discussed below are the 2 different security contexts the Auto Accept Agent can run under and the differences in their respective configurations.
A. Service running as "Local System"
If you choose to run the Auto Accept COM+ application under the account "Run as Local System" during installation, then the application will run as an NT Service. The agent initially installs as a COM+ Application. The Auto Accept Agent is also registered in the registry under HKLM\System\CurrentControlSet\Services\AutoAcceptAgent. The .MSI file will invoke the RunAsLocalSystem.vbs file from the \Exchsrvr\Agents\AutoAccept\Bin directory in this case.
To examine the configuration, use the Component Services MMC
From the console of the server:
- Open Start > All Programs > Administrative Tools > Component Services
- Navigate to Console Root > Component Services > Computers > My Computer > COM+ Applications
- Verify the Auto Accept Agent is present
If the files are present and the COM+ Application is present, then chances are the agent is correctly installed. Since there aren't yet any registered mailboxes on the server, the process will not be running. You can physically start the Auto Accept Agent Component by right-clicking on it in Component Services and choosing "Start" even if you don't have any mailboxes registered although it is recommended that you should do this as a post-installation measure. Check the event logs just to make sure there aren't any blatant errors. It will also turn itself off after 15 minutes of non-activity.
- Using the Component Services MMC, right click the Auto Accept Agent and choose Properties. Change to the Activation tab and verify that "Run application as NT Service" is checked. Notice the Service Name is "AutoAcceptAgent".
- Change to the Identity tab. The application will run under the System Account and verify that "Local System - Complete access to the local machine" is selected
- Using Service Control Manager, verify that the agent is installed as a service. You should see "AutoAccept Agent" listed under Services.
The service will be started and stopped as needed so the Startup Type should remain set to Manual.
Exchange invokes the Auto Accept Agent by calling the Auto Accept Agent proxy. COM+ then creates a COM+ object that executes the agent. In the above case, the agent is an out of process COM application meaning it is a COM object that gets loaded in its own address space.
B. Service running under specific user account
If you choose to run the Auto Accept COM+ application under the account "This user" and provide the User name, Password and Domain during installation, then the agent initially installs as a COM+ Application only. Of course the application will run under the account specified under the Identity tab on the Auto Accept Agent properties in COM+. On the Activation tab, "Run application as NT Service" is unchecked. In this scenario, dllhost.exe is hosting the Auto Accept Agent.
After understanding the components involved in installing the agent, we can troubleshoot the components individually. We can also use event logs, regmon and filemon depending on where the issue lies. Auto Accept agent logs messages to event logs using the event source name 'Auto Accept Agent'. Significant error, warning, and informational messages are logged to event log. There is a set of performance monitor counters that permit an administrator to verify that the agent is working and there are no problems. These counters can be obtained from the Auto Accept Agent Deployment and Administration Guide.
In next blog post - VBS scripts that are included in the Auto Accept Agent installation directory and how to use them for troubleshooting!