feat(web): 增加pulsar接收时间和压缩最后业务时间的展示
This commit is contained in:
@@ -13,6 +13,7 @@ public class SyncState implements Serializable {
|
||||
private String alias;
|
||||
private String messageId;
|
||||
private Long sourceStartTime;
|
||||
private Long sourceReceiveTime;
|
||||
private Long sourceCheckpointTime;
|
||||
private Long sourcePublishTime;
|
||||
private Long sourceOperationTime;
|
||||
@@ -31,6 +32,7 @@ public class SyncState implements Serializable {
|
||||
this.alias = builder.alias;
|
||||
this.messageId = builder.messageId;
|
||||
this.sourceStartTime = builder.sourceStartTime;
|
||||
this.sourceReceiveTime = builder.sourceReceiveTime;
|
||||
this.sourceCheckpointTime = builder.sourceCheckpointTime;
|
||||
this.sourcePublishTime = builder.sourcePublishTime;
|
||||
this.sourceOperationTime = builder.sourceOperationTime;
|
||||
@@ -78,6 +80,14 @@ public class SyncState implements Serializable {
|
||||
this.sourceStartTime = sourceStartTime;
|
||||
}
|
||||
|
||||
public Long getSourceReceiveTime() {
|
||||
return sourceReceiveTime;
|
||||
}
|
||||
|
||||
public void setSourceReceiveTime(Long sourceReceiveTime) {
|
||||
this.sourceReceiveTime = sourceReceiveTime;
|
||||
}
|
||||
|
||||
public Long getSourceCheckpointTime() {
|
||||
return sourceCheckpointTime;
|
||||
}
|
||||
@@ -174,6 +184,7 @@ public class SyncState implements Serializable {
|
||||
private String alias;
|
||||
private String messageId;
|
||||
private Long sourceStartTime;
|
||||
private Long sourceReceiveTime;
|
||||
private Long sourceCheckpointTime;
|
||||
private Long sourcePublishTime;
|
||||
private Long sourceOperationTime;
|
||||
@@ -207,6 +218,11 @@ public class SyncState implements Serializable {
|
||||
return this;
|
||||
}
|
||||
|
||||
public Builder sourceReceiveTime(Long sourceReceiveTime) {
|
||||
this.sourceReceiveTime = sourceReceiveTime;
|
||||
return this;
|
||||
}
|
||||
|
||||
public Builder sourceCheckpointTime(Long sourceCheckpointTime) {
|
||||
this.sourceCheckpointTime = sourceCheckpointTime;
|
||||
return this;
|
||||
|
||||
@@ -47,6 +47,7 @@ public class SyncStateService extends BaseService {
|
||||
TbAppCollectTableInfo.ALIAS_A,
|
||||
TbAppHudiSyncState.MESSAGE_ID_A,
|
||||
TbAppHudiSyncState.SOURCE_START_TIME_A,
|
||||
TbAppHudiSyncState.SOURCE_RECEIVE_TIME_A,
|
||||
TbAppHudiSyncState.SOURCE_CHECKPOINT_TIME_A,
|
||||
TbAppHudiSyncState.SOURCE_PUBLISH_TIME_A,
|
||||
TbAppHudiSyncState.SOURCE_OP_TIME_A,
|
||||
@@ -76,15 +77,16 @@ public class SyncStateService extends BaseService {
|
||||
.alias(rs.getString(2))
|
||||
.messageId(rs.getString(3))
|
||||
.sourceStartTime(dateConvertor.apply(rs.getTimestamp(4)))
|
||||
.sourceCheckpointTime(dateConvertor.apply(rs.getTimestamp(5)))
|
||||
.sourcePublishTime(dateConvertor.apply(rs.getTimestamp(6)))
|
||||
.sourceOperationTime(dateConvertor.apply(rs.getTimestamp(7)))
|
||||
.compactionStartTime(dateConvertor.apply(rs.getTimestamp(8)))
|
||||
.compactionFinishTime(dateConvertor.apply(rs.getTimestamp(9)))
|
||||
.compactionApplicationId(rs.getString(10))
|
||||
.compactionStatus(rs.getString(11))
|
||||
.compactionStatusTime(dateConvertor.apply(rs.getTimestamp(12)))
|
||||
.compactionLatestOperationTime(dateConvertor.apply(rs.getTimestamp(13)))
|
||||
.sourceReceiveTime(dateConvertor.apply(rs.getTimestamp(5)))
|
||||
.sourceCheckpointTime(dateConvertor.apply(rs.getTimestamp(6)))
|
||||
.sourcePublishTime(dateConvertor.apply(rs.getTimestamp(7)))
|
||||
.sourceOperationTime(dateConvertor.apply(rs.getTimestamp(8)))
|
||||
.compactionStartTime(dateConvertor.apply(rs.getTimestamp(9)))
|
||||
.compactionFinishTime(dateConvertor.apply(rs.getTimestamp(10)))
|
||||
.compactionApplicationId(rs.getString(11))
|
||||
.compactionStatus(rs.getString(12))
|
||||
.compactionStatusTime(dateConvertor.apply(rs.getTimestamp(13)))
|
||||
.compactionLatestOperationTime(dateConvertor.apply(rs.getTimestamp(14)))
|
||||
.build();
|
||||
}
|
||||
)
|
||||
|
||||
@@ -146,7 +146,7 @@ public class TableController extends BaseController {
|
||||
.reject(ObjectUtil::isNull)
|
||||
.toList()
|
||||
.toImmutable();
|
||||
return AmisResponse.responseCrudData(tableVOS, tableVOS.size() == 0 ? 0 : total);
|
||||
return AmisResponse.responseCrudData(tableVOS, tableVOS.isEmpty() ? 0 : total);
|
||||
}
|
||||
|
||||
@GetMapping("list_metas")
|
||||
|
||||
@@ -14,6 +14,7 @@ public class SyncStateVO {
|
||||
private final SyncState syncState;
|
||||
|
||||
private final String sourceStartTimeFromNow;
|
||||
private final String sourceReceiveTimeFromNow;
|
||||
private final String sourceCheckpointTimeFromNow;
|
||||
private final String sourcePublishTimeFromNow;
|
||||
private final String sourceOperationTimeFromNow;
|
||||
@@ -27,6 +28,7 @@ public class SyncStateVO {
|
||||
|
||||
long now = Instant.now().toEpochMilli();
|
||||
this.sourceStartTimeFromNow = DatetimeUtil.fromNow(now, this::getSourceStartTime);
|
||||
this.sourceReceiveTimeFromNow = DatetimeUtil.fromNow(now, this::getSourceReceiveTime);
|
||||
this.sourceCheckpointTimeFromNow = DatetimeUtil.fromNow(now, this::getSourceCheckpointTime);
|
||||
this.sourcePublishTimeFromNow = DatetimeUtil.fromNow(now, this::getSourcePublishTime);
|
||||
this.sourceOperationTimeFromNow = DatetimeUtil.fromNow(now, this::getSourceOperationTime);
|
||||
@@ -44,6 +46,10 @@ public class SyncStateVO {
|
||||
return syncState.getSourceStartTime();
|
||||
}
|
||||
|
||||
public Long getSourceReceiveTime() {
|
||||
return syncState.getSourceReceiveTime();
|
||||
}
|
||||
|
||||
public Long getSourceCheckpointTime() {
|
||||
return syncState.getSourceCheckpointTime();
|
||||
}
|
||||
@@ -84,6 +90,10 @@ public class SyncStateVO {
|
||||
return sourceStartTimeFromNow;
|
||||
}
|
||||
|
||||
public String getSourceReceiveTimeFromNow() {
|
||||
return sourceReceiveTimeFromNow;
|
||||
}
|
||||
|
||||
public String getSourceCheckpointTimeFromNow() {
|
||||
return sourceCheckpointTimeFromNow;
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
const commonInfo = {
|
||||
// baseUrl: 'http://132.126.207.130:35690/hudi_services/service_web',
|
||||
baseUrl: '/hudi_services/service_web',
|
||||
baseUrl: 'http://132.126.207.130:35690/hudi_services/service_web',
|
||||
// baseUrl: '/hudi_services/service_web',
|
||||
clusters: {
|
||||
// hudi同步运行集群和yarn队列名称
|
||||
sync: {
|
||||
|
||||
@@ -155,6 +155,13 @@ function tableTab() {
|
||||
sortable: true,
|
||||
className: 'bg-green-50',
|
||||
},
|
||||
{
|
||||
name: 'source_receive_time',
|
||||
label: '同步接收时间',
|
||||
...timeAndFrom('syncState.sourceReceiveTime', 'syncState.sourceReceiveTimeFromNow', '无数据'),
|
||||
sortable: true,
|
||||
className: 'bg-green-50',
|
||||
},
|
||||
{
|
||||
name: 'source_checkpoint_time',
|
||||
label: '同步心跳时间',
|
||||
@@ -200,6 +207,13 @@ function tableTab() {
|
||||
sortable: true,
|
||||
className: 'bg-cyan-50',
|
||||
},
|
||||
{
|
||||
name: 'compaction_latest_operation_time',
|
||||
label: '压缩业务时间',
|
||||
...timeAndFrom('syncState.compactionLatestOperationTime', 'syncState.compactionLatestOperationTimeFromNow', '无'),
|
||||
sortable: true,
|
||||
className: 'bg-cyan-50',
|
||||
},
|
||||
{
|
||||
name: 'compaction_finish_time',
|
||||
label: '压缩完成时间',
|
||||
|
||||
Reference in New Issue
Block a user