PublisherMonitor.EnumLogReaderAgentSessions(String, Int32, Boolean) 方法

定义

返回有关日志读取器代理会话的信息。

public:
 System::Data::DataSet ^ EnumLogReaderAgentSessions(System::String ^ agentName, int sessionDuration, bool returnOnlyErrorSessions);
public System.Data.DataSet EnumLogReaderAgentSessions (string agentName, int sessionDuration, bool returnOnlyErrorSessions);
member this.EnumLogReaderAgentSessions : string * int * bool -> System.Data.DataSet
Public Function EnumLogReaderAgentSessions (agentName As String, sessionDuration As Integer, returnOnlyErrorSessions As Boolean) As DataSet

参数

agentName
String

一个指定日志读取器代理的名称的 String 值。 可从已发布数据库的 LogReaderAgentName 属性获取此值。

sessionDuration
Int32

一个 Int32 值,该值指定当前时间之前的小时数,以便将结果限制在这个时间范围之内。 例如,如果值为 24,则将返回有关最近 24 小时之内的代理会话的信息。 如果值为 -1,则返回有关最近 100 个会话的信息;如果值为 0,则返回有关所有会话的信息。

returnOnlyErrorSessions
Boolean

一个 Boolean 值,该值指定是仅返回导致错误的会话的信息,还是返回所有会话的信息。 如果为 true,则仅返回错误会话。 如果为 false,则返回所有会话。

返回

一个包含以下列的 DataSet 对象。

数据类型 说明
runstatusInt32 运行状态:

1 = 开始

2 = 成功

3 = 正在进行

4 = 空闲

5 = 重试

6 = 失败

start_timeString 上次执行代理的日期和时间。
timeString 记录会话的日期和时间。
commentsString 代理记录的消息文本。
durationInt32 会话的持续时间,以秒为单位。
delivery_rateSingle 每秒传递的平均命令数。
delivery_latencyInt32 在命令被提交到已发布数据库和命令被提交到分发数据库之间的时间,以毫秒为单位。
delivery_timeInt32 传递第一个事务的时间。
delivered_transactionsInt32 会话中传递的事务总数。
delivered_commandsInt32 会话中传递的命令总数。
average_commandsInt32 会话中传递的每个事务的平均命令数。
action_countInt32 会话中记录的代理日志消息数。
error_idInt32 [MSrepl_errors (Transact-SQL) ] (http://msdn.microsoft.com/library/c6e023c1-2c32-4269-8d76-e442ea309e4b) 系统表中错误的 ID。 使用 EnumErrorRecords(Int32) 方法可以返回有关错误的详细信息。

注解

应在调用此方法之前将 PublisherMonitor 任何属性更改提交到对象,因为如果尚未加载此对象的属性,则可能需要加载这些属性。

方法EnumLogReaderAgentSessions只能由分发数据库上的 或 replmonitor 固定数据库角色的成员db_owner调用。

适用于

另请参阅