@@ -50,6 +50,7 @@ type TrillianLogRPCServer struct {
5050 timeSource clock.TimeSource
5151 leafCounter monitoring.Counter
5252 proofIndexPercentiles monitoring.Histogram
53+ fetchedLeaves monitoring.Counter
5354}
5455
5556// NewTrillianLogRPCServer creates a new RPC server backed by a LogStorageProvider.
@@ -71,6 +72,10 @@ func NewTrillianLogRPCServer(registry extension.Registry, timeSource clock.TimeS
7172 "Count of inclusion proof request index using percentage of current log size at the time" ,
7273 monitoring .PercentileBuckets (1 ),
7374 ),
75+ fetchedLeaves : mf .NewCounter (
76+ "fetched_leaves" ,
77+ "Count of individual leaves fetched through get-entries calls" ,
78+ ),
7479 }
7580}
7681
@@ -500,6 +505,7 @@ func (t *TrillianLogRPCServer) GetLeavesByIndex(ctx context.Context, req *trilli
500505 }
501506 defer t .closeAndLog (ctx , tree .TreeId , tx , "GetLeavesByIndex" )
502507
508+ t .fetchedLeaves .Add (float64 (len (req .LeafIndex )))
503509 leaves , err := tx .GetLeavesByIndex (ctx , req .LeafIndex )
504510 if err != nil {
505511 return nil , err
@@ -553,6 +559,7 @@ func (t *TrillianLogRPCServer) GetLeavesByRange(ctx context.Context, req *trilli
553559 r := & trillian.GetLeavesByRangeResponse {SignedLogRoot : slr }
554560
555561 if req .StartIndex < int64 (root .TreeSize ) {
562+ t .fetchedLeaves .Add (float64 (req .Count ))
556563 leaves , err := tx .GetLeavesByRange (ctx , req .StartIndex , req .Count )
557564 if err != nil {
558565 return nil , err
@@ -589,6 +596,7 @@ func (t *TrillianLogRPCServer) GetLeavesByHash(ctx context.Context, req *trillia
589596 }
590597 defer t .closeAndLog (ctx , tree .TreeId , tx , "GetLeavesByHash" )
591598
599+ t .fetchedLeaves .Add (float64 (len (req .LeafHash )))
592600 leaves , err := tx .GetLeavesByHash (ctx , req .LeafHash , req .OrderBySequence )
593601 if err != nil {
594602 return nil , err
0 commit comments