Gunakan Tablestore SDK for Java untuk mengkueri konfigurasi, tahap, status channel, serta progres konsumsi data inkremental suatu tunnel.
Prasyarat
Pasang Tablestore SDK for Java dan inisialisasi TunnelClient.
Deskripsi fitur
Panggil describeTunnel untuk mengkueri informasi tentang suatu tunnel. Respons mencakup konfigurasi tunnel, titik konsumsi inkremental keseluruhan, tujuan titik pemulihan (RPO), serta status dan progres konsumsi setiap channel dalam tunnel tersebut.
DescribeTunnelResponse describeTunnel(DescribeTunnelRequest request)
throws TableStoreException, ClientException
Contoh berikut mengkueri informasi tentang tunnel example_tunnel dari tabel example_table, lalu mencetak tahap tunnel serta status dan progres konsumsi setiap channel:
String tableName = "example_table";
String tunnelName = "example_tunnel";
DescribeTunnelRequest request =
new DescribeTunnelRequest(tableName, tunnelName);
DescribeTunnelResponse response = tunnelClient.describeTunnel(request);
TunnelInfo tunnelInfo = response.getTunnelInfo();
System.out.printf(
"name=%s, type=%s, stage=%s%n",
tunnelInfo.getTunnelName(),
tunnelInfo.getTunnelType(),
tunnelInfo.getStage());
for (ChannelInfo channelInfo : response.getChannelInfos()) {
System.out.printf(
"channelId=%s, type=%s, status=%s, count=%d%n",
channelInfo.getChannelId(),
channelInfo.getChannelType(),
channelInfo.getChannelStatus(),
channelInfo.getChannelCount());
}
Parameter
request bertipe DescribeTunnelRequest dan berisi parameter berikut:
|
Name |
Type |
Description |
|
tableName (required) |
|
Nama tabel. |
|
tunnelName (required) |
|
Nama tunnel. |
Nilai kembali
Nilai kembali bertipe DescribeTunnelResponse dan berisi bidang berikut:
|
Name |
Type |
Description |
|
tunnelConsumePoint |
|
Titik konsumsi inkremental terbaru dari tunnel. Nilainya merupakan titik konsumsi channel paling lambat dalam tunnel. Nilai default: 00:00:00 pada 1 Januari 1970 (UTC). Panggil |
|
tunnelRpo |
|
RPO konsumsi inkremental tunnel, yaitu selisih antara waktu saat ini dan titik konsumsi channel paling lambat. Satuan: milidetik. Panggil |
|
tunnelInfo |
|
Informasi tunnel. Panggil |
|
channelInfos |
|
Daftar channel dalam tunnel. Jika tunnel belum menginisialisasi channel apa pun, daftar kosong akan dikembalikan. Panggil |
tunnelConsumePoint dan tunnelRpo hanya berlaku untuk konsumsi inkremental. Jika konsumsi inkremental belum dimulai atau tunnel hanya mengonsumsi data penuh, tunnelConsumePoint bernilai default. Dalam kasus ini, jangan gunakan tunnelRpo untuk menentukan latensi konsumsi.
Informasi channel
Setiap elemen dalam channelInfos[] bertipe ChannelInfo dan berisi bidang berikut:
|
Name |
Type |
Description |
|
channelId |
|
ID channel. |
|
channelType |
|
Tipe channel. Nilai yang valid: |
|
channelStatus |
|
Status channel. Nilai yang valid: |
|
clientId |
|
ID client yang mengonsumsi channel. Bidang ini mungkin kosong jika tidak ada client yang ditugaskan ke channel tersebut. ID client dihasilkan berdasarkan |
|
channelConsumePoint |
|
Titik konsumsi inkremental terbaru dari channel. Nilai default: 00:00:00 pada 1 Januari 1970 (UTC). Bidang ini tidak berlaku untuk channel data penuh. |
|
channelRpo |
|
RPO konsumsi inkremental channel, yaitu selisih antara waktu saat ini dan |
|
channelCount |
|
Jumlah baris yang disinkronkan oleh channel. |