X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-distributed-datastore%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fdatastore%2Fjmx%2Fmbeans%2Fshard%2FShardStats.java;h=c6c1579ce336dc78e64ecc6b79042c30eee28148;hp=4eb6a8cef96319d0ca885112c3a0812ee06e5431;hb=62ee81f764eef592f00e67181b4dbedb3f734de6;hpb=79d775c3cc0fe48b01eefdb732124e81dfe3441c diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/jmx/mbeans/shard/ShardStats.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/jmx/mbeans/shard/ShardStats.java index 4eb6a8cef9..c6c1579ce3 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/jmx/mbeans/shard/ShardStats.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/jmx/mbeans/shard/ShardStats.java @@ -2,85 +2,177 @@ package org.opendaylight.controller.cluster.datastore.jmx.mbeans.shard; import org.opendaylight.controller.cluster.datastore.jmx.mbeans.AbstractBaseMBean; +import java.text.SimpleDateFormat; +import java.util.Date; + /** * @author: syedbahm */ public class ShardStats extends AbstractBaseMBean implements ShardStatsMBean { - private Long committedTransactionsCount; - private Long journalMessagesCount; - final private String shardName; - private String leader; - private String raftState; - ShardStats(String shardName){ - this.shardName = shardName; - committedTransactionsCount =0L; - journalMessagesCount = 0L; - }; + private final String shardName; + + private Long committedTransactionsCount = 0L; + + private Long readOnlyTransactionCount = 0L; + + private Long writeOnlyTransactionCount = 0L; + + private Long readWriteTransactionCount = 0L; + + private String leader; + + private String raftState; + + private Long lastLogTerm = -1L; + + private Long lastLogIndex = -1L; + + private Long currentTerm = -1L; + + private Long commitIndex = -1L; + + private Long lastApplied = -1L; + + private Date lastCommittedTransactionTime = new Date(0L); + + private Long failedTransactionsCount = 0L; + + private SimpleDateFormat sdf = + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS"); + + ShardStats(String shardName) { + this.shardName = shardName; + } + + + @Override + public String getShardName() { + return shardName; + } + + @Override + public Long getCommittedTransactionsCount() { + return committedTransactionsCount; + } + + @Override public String getLeader() { + return leader; + } + + @Override public String getRaftState() { + return raftState; + } + + @Override public Long getReadOnlyTransactionCount() { + return readOnlyTransactionCount; + } + + @Override public Long getWriteOnlyTransactionCount() { + return writeOnlyTransactionCount; + } + + @Override public Long getReadWriteTransactionCount() { + return readWriteTransactionCount; + } + + @Override public Long getLastLogIndex() { + return lastLogIndex; + } + + @Override public Long getLastLogTerm() { + return lastLogTerm; + } + + @Override public Long getCurrentTerm() { + return currentTerm; + } + + @Override public Long getCommitIndex() { + return commitIndex; + } + + @Override public Long getLastApplied() { + return lastApplied; + } + + @Override + public String getLastCommittedTransactionTime() { + return sdf.format(lastCommittedTransactionTime); + } - @Override - public String getShardName() { - return shardName; - } + @Override public Long getFailedTransactionsCount() { + return failedTransactionsCount; + } - @Override - public Long getCommittedTransactionsCount() { - return committedTransactionsCount; - } + public Long incrementCommittedTransactionCount() { + return committedTransactionsCount++; + } - @Override - public Long getJournalMessagesCount() { - //FIXME: this will be populated once after integration with Raft stuff - return journalMessagesCount; - } + public Long incrementReadOnlyTransactionCount() { + return readOnlyTransactionCount++; + } - @Override public String getLeader() { - return leader; - } + public Long incrementWriteOnlyTransactionCount() { + return writeOnlyTransactionCount++; + } - @Override public String getRaftState() { - return raftState; - } + public Long incrementReadWriteTransactionCount() { + return readWriteTransactionCount++; + } - public Long incrementCommittedTransactionCount() { - return committedTransactionsCount++; - } + public void setLeader(String leader) { + this.leader = leader; + } + public void setRaftState(String raftState) { + this.raftState = raftState; + } - public void updateCommittedTransactionsCount(long currentCount){ - committedTransactionsCount = currentCount; + public void setLastLogTerm(Long lastLogTerm) { + this.lastLogTerm = lastLogTerm; + } - } + public void setLastLogIndex(Long lastLogIndex) { + this.lastLogIndex = lastLogIndex; + } - public void updateJournalMessagesCount(long currentCount){ - journalMessagesCount = currentCount; + public void setCurrentTerm(Long currentTerm) { + this.currentTerm = currentTerm; + } - } + public void setCommitIndex(Long commitIndex) { + this.commitIndex = commitIndex; + } - public void setLeader(String leader){ - this.leader = leader; - } + public void setLastApplied(Long lastApplied) { + this.lastApplied = lastApplied; + } - public void setRaftState(String raftState){ - this.raftState = raftState; - } + public void setLastCommittedTransactionTime( + Date lastCommittedTransactionTime) { + this.lastCommittedTransactionTime = lastCommittedTransactionTime; + } - @Override - protected String getMBeanName() { - return shardName; - } + @Override + protected String getMBeanName() { + return shardName; + } - @Override - protected String getMBeanType() { - return JMX_TYPE_DISTRIBUTED_DATASTORE; - } + @Override + protected String getMBeanType() { + return JMX_TYPE_DISTRIBUTED_DATASTORE; + } - @Override - protected String getMBeanCategory() { - return JMX_CATEGORY_SHARD; - } + @Override + protected String getMBeanCategory() { + return JMX_CATEGORY_SHARD; + } + public void incrementFailedTransactionsCount() { + this.failedTransactionsCount++; + } }