• I used your TEST DB creation method, generated 3 statements in the queue.. viewed the content of the queue table did not look any strange or anything like that.. also the queue captured some statements from another DB's transactional backup..

    then I placed couple of email notifications as an echo print for debugging in the USP..

    and I was just checking the email to see how far in the USP the process go in..

    create PROCEDURE [dbo].[USP_ProcessAuditDatabaseManagementEvents]

    WITH EXECUTE AS OWNER

    AS

    DECLARE @message_body XML;

    DECLARE @message_sequence_number INT;

    DECLARE @dialog UNIQUEIDENTIFIER;

    DECLARE @email_message NVARCHAR(MAX);

    EXEC msdb.dbo.sp_send_dbmail

    @profile_name = 'LocalServer', -- your defined email profile

    @recipients = 'JohnE.SQL@gmail.com', -- your email

    @subject = 'Audit Database Management Event Notification',

    @body = 'echo print to the message_body in USP';

    WHILE ( 1 = 1 )

    BEGIN

    BEGIN TRANSACTION;

    EXEC msdb.dbo.sp_send_dbmail

    @profile_name = 'LocalServer', -- your defined email profile

    @recipients = 'JohnE.SQL@gmail.com', -- your email

    @subject = 'Audit Database Management Event Notification',

    @body = 'after reading a records ';

    -- Receive the next available message FROM the queue

    WAITFOR

    (

    RECEIVE TOP(1) -- just handle one message at a time

    @message_body=CAST(message_body AS XML)

    FROM dbo.AuditDatabaseManagementEventQueue

    ), TIMEOUT 1000; -- if queue empty for 1 sec, give UPDATE AND GO away

    sure, no problem, I will send you the code..

    it is basically like the other ones that were adapted from yours and they work fabulously ..

    that's why my suspicion was on audit_database_management...etc.. class / event name..

    Cheers,
    John Esraelo