How do I tell what agent profile is being used?

Posted on

Question :

When you change from one replication agent profile to another using the SSMS GUI, you often have to stop and restart the agent for the change to take effect.

I’m trying to debug an issue where it looks like someone changed the active profile, but replication is behaving as if a different profile was being used. How do I determine the actual replication agent profile being used?

A parallel – when using sp_configure, both the configured values and the run values are returned. The Replication GUI seems to be returning the configured values. How do I determine the running values for the agent profile?

We have a profile that is set to skip certain errors. We turn on that profile briefly, only if needed. And then we turn the default profile back on. It looks like someone turned on the error skipping profile and left it on. But when I open the agent profile dialog box, it’s set to the correct, default profile.

Answer :

Ref: Replication Agents: Profiles and Parameters

Use the below query to find out which agent is using which profile.

SELECT
    [publication] as Publication
    ,c.srvname as SubscriberName 
    ,b.profile_name as Profile
    ,[name] as DistributionJobName
FROM 
    [distribution].[dbo].[MSdistribution_agents] a
INNER JOIN
    msdb.[dbo].[MSagent_profiles] b
    ON a.profile_id = b.profile_id
INNER JOIN 
    master..sysservers c
    ON a.subscriber_id = c.srvid
ORDER BY 
    b.profile_name;

If you want to see what profile your agent job was using previously best place to see is job history.

Leave a Reply

Your email address will not be published.