建立通道後,您可以使用DescribeTunnel介面擷取某個通道內的具體資訊,例如通道資訊、通道內的Channel資訊等。
前提條件
已初始化TunnelClient。
已為資料表建立通道。具體操作,請參見建立通道。
參數
請求參數
參數 | 說明 |
TableName | 需要擷取通道資訊的資料表名稱。 |
TunnelName | 通道的名稱。 |
響應參數
參數 | 說明 |
TunnelConsumePoint | 通道消費增量資料的最新時間點,其值等於Tunnel中消費最慢的Channel的時間點,預設值為1970年1月1日(UTC)。 |
TunnelInfo | 通道資訊的列表,包含如下內容:
|
List<ChannelInfo> | 通道中的Channel資訊列表,包含如下資訊:
|
RequestId | 當次請求的Request ID。 |
樣本
以下樣本用於查詢指定通道的具體資訊,例如資料消費時間位點、通道資訊、通道內Channel資訊。
//資料消費時間位點(ConsumePoint)和RPO(Recovery Point Objective)為增量類型專用屬性值,全量類型無此概念。
//Tunnel增量:TunnelInfo中Stage的值為ProcessStream;Channel增量:ChannelInfo中的ChannelType為Stream。
private static void describeTunnel(TunnelClient client, String tableName, String tunnelName) {
DescribeTunnelRequest request = new DescribeTunnelRequest(tableName, tunnelName);
DescribeTunnelResponse resp = client.describeTunnel(request);
System.out.println("RequestId: " + resp.getRequestId());
//通道消費增量資料的最新時間點,其值等於Tunnel中消費最慢的Channel的時間點,預設值為1970年1月1日(UTC)。
System.out.println("TunnelConsumePoint: " + resp.getTunnelConsumePoint());
System.out.println("TunnelInfo: " + resp.getTunnelInfo());
for (ChannelInfo ci : resp.getChannelInfos()) {
System.out.println("ChannelInfo::::::");
System.out.println("\tChannelId: " + ci.getChannelId());
//Channel的類型,包括BaseData(全量)和增量(Stream)兩種。
System.out.println("\tChannelType: " + ci.getChannelType());
//用戶端的ID標識,預設由用戶端主機名稱和隨機串拼接而成。
System.out.println("\tClientId: " + ci.getClientId());
//Channel消費增量資料的最新時間點。
System.out.println("\tChannelConsumePoint: " + ci.getChannelConsumePoint());
//Channel同步的資料條數。
System.out.println("\tChannelCount: " + ci.getChannelCount());
}
}
相關文檔
關於API說明的更多資訊,請參見DescribeTunnel。
如果要快速使用通道服務消費資料,請參見快速使用通道服務文檔進行操作。
如果要查看指定表的所有通道資訊,您可以通過擷取表內的通道資訊實現。更多資訊,請參見擷取表內的通道資訊。
如果不再使用某個通道,您可以刪除相應通道。更多資訊,請參見刪除通道。