All Downloads are FREE. Search and download functionalities are using the official Maven repository.

ui.topics.resources.ftl Maven / Gradle / Ivy

There is a newer version: 0.8.0
Show newest version
<#-- @ftlvariable name="appUrl" type="com.infobip.kafkistry.webapp.url.AppUrl" -->
<#-- @ftlvariable name="clusterIdentifier" type="java.lang.String" -->
<#-- @ftlvariable name="topicResources" type="com.infobip.kafkistry.service.resources.TopicClusterDiskUsageExt" -->

<#import "../common/util.ftl" as rUtil>
<#import "../common/infoIcon.ftl" as rInfo>

Disk resource usage of topic on ${clusterIdentifier} 🔍

<#assign hasActual = topicResources.combined.usage.actualUsedBytes??> <#assign hasPossible = topicResources.combined.usage.retentionBoundedBytes??> <#assign hasOrphaned = topicResources.combined.usage.orphanedReplicasCount gt 0> <#if hasActual> <#if hasPossible> <#if hasOrphaned> <#if hasActual> <#if hasPossible> <#if hasPossible> <#macro diskUsage broker, usage, portions, brokerUsage, brokerPortions worstPossibleUsageLevel="NONE" worstTotalPossibleUsageLevel="NONE"> <#-- @ftlvariable name="usage" type="com.infobip.kafkistry.service.resources.TopicDiskUsageExt" --> <#-- @ftlvariable name="portions" type="com.infobip.kafkistry.service.resources.UsagePortions" --> <#-- @ftlvariable name="brokerUsage" type="type="com.infobip.kafkistry.service.resources.BrokerDiskUsage" --> <#-- @ftlvariable name="brokerPortions" type="com.infobip.kafkistry.service.resources.BrokerDiskPortions" --> <#-- @ftlvariable name="worstPossibleUsageLevel" type="com.infobip.kafkistry.service.resources.UsageLevel" --> <#-- @ftlvariable name="worstTotalPossibleUsageLevel" type="com.infobip.kafkistry.service.resources.UsageLevel" --> <#if hasActual> <#if hasPossible> <#if hasOrphaned> <#assign brokerUsageLevelClass = rUtil.usageLevelToHtmlClass(brokerPortions.usageLevel)> <#if hasPossible> <#assign possibleUsageLevel = (worstPossibleUsageLevel == "NONE")?then(portions.possibleClusterUsageLevel, worstPossibleUsageLevel)> <#assign possibleUsageLevelClass = rUtil.usageLevelToHtmlClass(possibleUsageLevel)> <#assign totalPossibleUsageLevel = (worstTotalPossibleUsageLevel == "NONE")?then(portions.totalPossibleClusterUsageLevel, worstTotalPossibleUsageLevel)> <#assign totalPossibleUsageLevelClass = rUtil.usageLevelToHtmlClass(totalPossibleUsageLevel)> <@diskUsage broker="ALL" usage=topicResources.combined portions=topicResources.combinedPortions brokerUsage=topicResources.clusterDiskUsage.combined.usage brokerPortions=topicResources.clusterDiskUsage.combined.portions worstPossibleUsageLevel=topicResources.worstPossibleClusterUsageLevel worstTotalPossibleUsageLevel=topicResources.worstTotalPossibleClusterUsageLevel /> <#list topicResources.brokerUsages as brokerId, brokerUsage> <@diskUsage broker="${brokerId}" usage=brokerUsage portions=topicResources.brokerPortions?api.get(brokerId) brokerUsage=topicResources.clusterDiskUsage.brokerUsages?api.get(brokerId).usage brokerPortions=topicResources.clusterDiskUsage.brokerUsages?api.get(brokerId).portions />
Broker ReplicasCurrent disk usage Possible disk usage <#assign possibleUsageDoc> Possible usage of disk if this topic would reach it's retention.bytes limit <@rInfo.icon tooltip = possibleUsageDoc/> Required usage <#assign possibleUsageDoc> How much of usage is required/expected/predicted by resource requirement expectations for this topic on this cluster <@rInfo.icon tooltip = possibleUsageDoc/> # orphan replicas Cluster broker(s)
Total % of broker used % of required Total % of broker used % of required Current used <#assign clusterUsedDoc> Current disk usage of all replicas on particular broker <@rInfo.icon tooltip = clusterUsedDoc/> Possible usage <#assign clusterPossibleDoc> Possible usage of disk if this topic would reach it's retention.bytes limit, and all other topics would remain at current usage <@rInfo.icon tooltip = clusterPossibleDoc/> Max possible usage <#assign clusterTotalPossibleDoc> Possible usage of disk if all topics, including this topic, would reach it's retention.bytes limit <@rInfo.icon tooltip = clusterTotalPossibleDoc/> Capacity
${broker} <#if broker == "ALL"> ${usage.usage.replicasCount} <#if usage.usage.actualUsedBytes??> ${rUtil.prettyDataSize(usage.usage.actualUsedBytes)} <#else> --- <#if portions.actualUsedBytesPercentOfBrokerTotal??> ${rUtil.prettyNumber(portions.actualUsedBytesPercentOfBrokerTotal)}% <#else> --- <#if portions.actualUsedBytesPercentOfExpected??> ${rUtil.prettyNumber(portions.actualUsedBytesPercentOfExpected)}% <#else> --- <#if usage.usage.retentionBoundedBytes??> ${rUtil.prettyDataSize(usage.usage.retentionBoundedBytes)} <#else> --- <#if portions.retentionBoundedBytesPercentOfBrokerTotal??> ${rUtil.prettyNumber(portions.retentionBoundedBytesPercentOfBrokerTotal)}% <#else> --- <#if portions.retentionBoundedBytesPercentOfExpected??> ${rUtil.prettyNumber(portions.retentionBoundedBytesPercentOfExpected)}% <#else> --- <#if usage.usage.expectedUsageBytes??> ${rUtil.prettyDataSize(usage.usage.expectedUsageBytes)} <#else> --- ${usage.usage.orphanedReplicasCount} title="${rUtil.prettyNumber(brokerPortions.usedPercentOfCapacity)}%" > <#if brokerUsage.totalUsedBytes??> ${rUtil.prettyDataSize(brokerUsage.totalUsedBytes)} <#else> --- title="${rUtil.prettyNumber(portions.retentionBoundedBrokerTotalBytesPercentOfCapacity)}%" > <#if usage.retentionBoundedBrokerTotalBytes??> ${rUtil.prettyDataSize(usage.retentionBoundedBrokerTotalBytes)} <#else> --- title="${rUtil.prettyNumber(portions.retentionBoundedBrokerPossibleBytesPercentOfCapacity)}%" > <#if usage.retentionBoundedBrokerPossibleBytes??> ${rUtil.prettyDataSize(usage.retentionBoundedBrokerPossibleBytes)} <#else> --- <#if brokerUsage.totalCapacityBytes??> ${rUtil.prettyDataSize(brokerUsage.totalCapacityBytes)} <#else> ---




© 2015 - 2024 Weber Informatics LLC | Privacy Policy