@@ -15,7 +15,8 @@ type Stats struct {
1515
1616 dbFlushRate * dmetrics.AvgRatePromCounter
1717 dbFlushAvgDuration * dmetrics.AvgDurationCounter
18- flusehdRows * dmetrics.ValueFromMetric
18+ flushedRows * dmetrics.ValueFromMetric
19+ dbFlushedRowsRate * dmetrics.AvgRatePromCounter
1920 lastBlock bstream.BlockRef
2021 logger * zap.Logger
2122}
@@ -26,7 +27,8 @@ func NewStats(logger *zap.Logger) *Stats {
2627
2728 dbFlushRate : dmetrics .MustNewAvgRateFromPromCounter (FlushCount , 1 * time .Second , 30 * time .Second , "flush" ),
2829 dbFlushAvgDuration : dmetrics .NewAvgDurationCounter (30 * time .Second , dmetrics .InferUnit , "per flush" ),
29- flusehdRows : dmetrics .NewValueFromMetric (FlushedRowsCount , "rows" ),
30+ flushedRows : dmetrics .NewValueFromMetric (FlushedRowsCount , "rows" ),
31+ dbFlushedRowsRate : dmetrics .MustNewAvgRateFromPromCounter (FlushedRowsCount , 1 * time .Second , 30 * time .Second , "flushed rows" ),
3032 logger : logger ,
3133
3234 lastBlock : unsetBlockRef {},
@@ -41,6 +43,10 @@ func (s *Stats) RecordFlushDuration(duration time.Duration) {
4143 s .dbFlushAvgDuration .AddDuration (duration )
4244}
4345
46+ func (s * Stats ) GetLastBlockNum () uint64 {
47+ return s .lastBlock .Num ()
48+ }
49+
4450func (s * Stats ) Start (each time.Duration , cursor * sink.Cursor ) {
4551 if ! cursor .IsBlank () {
4652 s .lastBlock = cursor .Block ()
@@ -71,7 +77,8 @@ func (s *Stats) LogNow() {
7177 s .logger .Info ("postgres sink stats" ,
7278 zap .Stringer ("db_flush_rate" , s .dbFlushRate ),
7379 zap .Stringer ("db_flush_duration_rate" , s .dbFlushAvgDuration ),
74- zap .Uint64 ("flushed_rows" , s .flusehdRows .ValueUint ()),
80+ zap .Uint64 ("flushed_rows" , s .flushedRows .ValueUint ()),
81+ zap .Stringer ("db_flushed_rows_rate" , s .dbFlushedRowsRate ),
7582 zap .Stringer ("last_block" , s .lastBlock ),
7683 )
7784}
0 commit comments