2012-03-21 75 views
0

我們已經開始研究服務代理並計劃在應用程序中實施。但是我們沒有得到如何顯示包含以下內容的統計信息報告(在UI中): 1.隊列中沒有消息。 2.所有執行/完成的消息數量。 3.無過程,等待,失敗消息等 4.沒有在特定的時間週期的對話等 等等等等....服務代理隊列自定義報告

是否有充分獲取這些信息的任何可能的方式/部分

任何有關這方面的幫助是非常感謝。

在此先感謝。

回答

1

使用目錄視圖(msdn)。例如:

Select * From sys.service_queues 
Select * From sys.transmission_queue 
Select * From sys.conversation_groups 
Select * From sys.conversation_endpoints 

使用DMV(msdn)。例如:

SELECT spid, DB_NAME(database_id) database_name, OBJECT_NAME(queue_id) queue_name, 
    procedure_name, execute_as 
FROM sys.dm_broker_activated_tasks 
WHERE database_id = DB_ID(); 

SELECT DB_NAME(database_id) database_name, OBJECT_NAME(queue_id) queue_name, 
    state, last_empty_rowset_time, last_activated_time, tasks_waiting 
FROM sys.dm_broker_queue_monitors 
WHERE database_id = DB_ID(); 

使用SQL Server日誌。也可以這樣做:

EXEC sys.xp_readerrorlog 0, 1 

在Management Studio中使用報告。進入「Service Broker」節點,點擊右鍵,然後點擊「Reports-> Standart Reports-> Service Broker Statistics」