@@ -202,11 +202,22 @@ func (st *ShuttermintState) sendPolyEvals(ctx context.Context, queries *database
202202 receivers = nil
203203 encryptedEvals = nil
204204 }()
205- return queries .ScheduleShutterMessage (
205+ eonLabel := strconv .FormatInt (currentEon , 10 )
206+ err := queries .ScheduleShutterMessage (
206207 ctx ,
207208 fmt .Sprintf ("poly eval (eon=%d)" , currentEon ),
208209 shmsg .NewPolyEval (uint64 (currentEon ), receivers , encryptedEvals ),
209210 )
211+ if err != nil {
212+ return err
213+ }
214+ for range receivers {
215+ keypermetrics .MetricsKeyperDKGMessagesSent .WithLabelValues (
216+ eonLabel ,
217+ keypermetrics .DKGMessageTypePolyEval ,
218+ ).Inc ()
219+ }
220+ return nil
210221 }
211222
212223 for _ , eval := range evals {
@@ -389,6 +400,7 @@ func (st *ShuttermintState) startPhase1Dealing(
389400 log .Fatal ().Err (err ).Msg ("aborting due to unexpected error" )
390401 }
391402 dkg .markDirty ()
403+ eonLabel := strconv .FormatUint (eon , 10 )
392404 err = queries .ScheduleShutterMessage (
393405 ctx ,
394406 fmt .Sprintf ("poly commitment (eon=%d)" , eon ),
@@ -397,6 +409,10 @@ func (st *ShuttermintState) startPhase1Dealing(
397409 if err != nil {
398410 return err
399411 }
412+ keypermetrics .MetricsKeyperDKGMessagesSent .WithLabelValues (
413+ eonLabel ,
414+ keypermetrics .DKGMessageTypePolyCommitment ,
415+ ).Inc ()
400416
401417 for _ , eval := range polyEvals {
402418 err = queries .InsertPolyEval (ctx , database.InsertPolyEvalParams {
@@ -416,9 +432,14 @@ func (st *ShuttermintState) startPhase2Accusing(
416432) error {
417433 accusations := dkg .pure .StartPhase2Accusing ()
418434 dkg .markDirty ()
435+ eonLabel := strconv .FormatUint (eon , 10 )
419436 if len (accusations ) > 0 {
420437 var accused []common.Address
421438 for _ , a := range accusations {
439+ keypermetrics .MetricsKeyperDKGMessagesSent .WithLabelValues (
440+ eonLabel ,
441+ keypermetrics .DKGMessageTypeAccusation ,
442+ ).Inc ()
422443 accused = append (accused , dkg .keypers [a .Accused ])
423444 }
424445 err := queries .ScheduleShutterMessage (
@@ -441,11 +462,16 @@ func (st *ShuttermintState) startPhase3Apologizing(
441462) error {
442463 apologies := dkg .pure .StartPhase3Apologizing ()
443464 dkg .markDirty ()
465+ eonLabel := strconv .FormatUint (eon , 10 )
444466 if len (apologies ) > 0 {
445467 var accusers []common.Address
446468 var polyEvals []* big.Int
447469
448470 for _ , a := range apologies {
471+ keypermetrics .MetricsKeyperDKGMessagesSent .WithLabelValues (
472+ eonLabel ,
473+ keypermetrics .DKGMessageTypeApology ,
474+ ).Inc ()
449475 accusers = append (accusers , dkg .keypers [a .Accuser ])
450476 polyEvals = append (polyEvals , a .Eval )
451477 }
@@ -624,6 +650,10 @@ func (st *ShuttermintState) handlePolyCommitment(
624650 return nil
625651 }
626652 dkg .markDirty ()
653+ keypermetrics .MetricsKeyperDKGMessagesReceived .WithLabelValues (
654+ strconv .FormatUint (e .Eon , 10 ),
655+ keypermetrics .DKGMessageTypePolyCommitment ,
656+ ).Inc ()
627657 return nil
628658}
629659
@@ -645,6 +675,7 @@ func (st *ShuttermintState) handlePolyEval(
645675 Msg ("event for non existent eon received" )
646676 return nil
647677 }
678+ eonLabel := strconv .FormatUint (e .Eon , 10 )
648679 sender , err := medley .FindAddressIndex (dkg .keypers , e .Sender )
649680 if err != nil {
650681 return nil
@@ -681,6 +712,10 @@ func (st *ShuttermintState) handlePolyEval(
681712 }
682713 log .Info ().Str ("event" , e .String ()).Int ("keyper" , sender ).
683714 Msg ("got poly eval message" )
715+ keypermetrics .MetricsKeyperDKGMessagesReceived .WithLabelValues (
716+ eonLabel ,
717+ keypermetrics .DKGMessageTypePolyEval ,
718+ ).Inc ()
684719 dkg .markDirty ()
685720 return nil
686721}
@@ -700,6 +735,7 @@ func (st *ShuttermintState) handleAccusation(
700735 Msg ("received accusation in wrong phase" )
701736 return nil
702737 }
738+ eonLabel := strconv .FormatUint (e .Eon , 10 )
703739 sender , err := medley .FindAddressIndex (dkg .keypers , e .Sender )
704740 if err != nil {
705741 log .Info ().Str ("event" , e .String ()).
@@ -724,7 +760,12 @@ func (st *ShuttermintState) handleAccusation(
724760 if err != nil {
725761 log .Info ().Str ("event" , e .String ()).Err (err ).
726762 Msg ("cannot handle accusation" )
763+ continue
727764 }
765+ keypermetrics .MetricsKeyperDKGMessagesReceived .WithLabelValues (
766+ eonLabel ,
767+ keypermetrics .DKGMessageTypeAccusation ,
768+ ).Inc ()
728769 }
729770 dkg .markDirty ()
730771 return nil
@@ -744,6 +785,7 @@ func (st *ShuttermintState) handleApology(
744785 Msg ("Warning: received apology in wrong phase" )
745786 return nil
746787 }
788+ eonLabel := strconv .FormatUint (e .Eon , 10 )
747789 sender , err := medley .FindAddressIndex (dkg .keypers , e .Sender )
748790 if err != nil {
749791 log .Info ().Str ("event" , e .String ()).Msg ("failed to handle apology. bad sender" )
@@ -766,7 +808,12 @@ func (st *ShuttermintState) handleApology(
766808 })
767809 if err != nil {
768810 log .Info ().Str ("event" , e .String ()).Err (err ).Msg ("failed to handle apology" )
811+ continue
769812 }
813+ keypermetrics .MetricsKeyperDKGMessagesReceived .WithLabelValues (
814+ eonLabel ,
815+ keypermetrics .DKGMessageTypeApology ,
816+ ).Inc ()
770817 }
771818 dkg .markDirty ()
772819 return nil
0 commit comments