@* * Copyright 2015 Yahoo Inc. Licensed under the Apache License, Version 2.0 * See accompanying LICENSE file. *@ @import kafka.manager.utils.LongFormatted @(cluster: String, topics: IndexedSeq[((String, Option[kafka.manager.model.ActorModel.TopicIdentity]),Boolean)], topicsUnderReassignment: IndexedSeq[String], pollConsumers: Boolean, displayTopicSize: Boolean )(implicit messages: play.api.i18n.Messages, request:RequestHeader) @getDeletedLevel(deleted: Boolean) = { @deleted match { case true => {table-danger} case i => {} } } @getBrokersSpreadLevel(percentage: Int) = { @percentage match { case i if i > 50 && i <= 75 => {table-warning} case i if i <= 50 => {table-danger} case i => {} } } @getBrokersSkewLevel(percentage: Int) = { @percentage match { case i if i > 0 && i <= 33 => {table-warning} case i if i >= 34 => {table-danger} case i => {} } } @getBrokersLeaderSkewLevel(percentage: Int) = { @percentage match { case i if i > 0 && i <= 33 => {table-warning} case i if i >= 34 => {table-danger} case i => {} } } @getUnderReplicatedLevel(percentage: Int) = { @percentage match { case i if i > 0 && i <= 33 => {table-warning} case i if i >= 34 => {table-danger} case i => {} } } @getReassignmentStatus(topic: String) = { @if(topicsUnderReassignment.contains(topic)) {glow-red} else {} }
Topic | # Partitions | # Brokers | Brokers Spread % | Brokers Skew % | Brokers Leader Skew % | # Replicas | Under Replicated % | @if(displayTopicSize){Leader Size | } @if(pollConsumers){Producer Message/Sec | Summed Recent Offsets | }||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
@topic | @topicIdentity.map{ ti =>@ti.partitions | }.getOrElse{} @topicIdentity.map{ ti => | @ti.topicBrokers | }.getOrElse{} @topicIdentity.map{ ti => | @ti.brokersSpreadPercentage | }.getOrElse{} @topicIdentity.map{ ti => | @ti.brokersSkewPercentage | }.getOrElse{} @topicIdentity.map{ ti => | @ti.brokersLeaderSkewPercentage | }.getOrElse{} @topicIdentity.map{ ti => | @ti.replicationFactor | }.getOrElse{} @topicIdentity.map{ ti => | @ti.underReplicatedPercentage | }.getOrElse{} @if(displayTopicSize){ @topicIdentity.map{ ti => | @ti.size | }.getOrElse{} } @if(pollConsumers){ @topicIdentity.map{ ti => | @ti.producerRate | }.getOrElse{} @topicIdentity.map{ ti => | @ti.summedTopicOffsets.formattedAsDecimal | }.getOrElse{} } |