diff --git a/disperser/batcher/batcher.go b/disperser/batcher/batcher.go index 0ec01c3c8..68f9b9b24 100644 --- a/disperser/batcher/batcher.go +++ b/disperser/batcher/batcher.go @@ -419,7 +419,10 @@ func (b *Batcher) HandleSingleBatch(ctx context.Context) error { } log.Trace("[batcher] AggregateSignatures took", "duration", time.Since(stageTimer)) b.Metrics.ObserveLatency("AggregateSignatures", float64(time.Since(stageTimer).Milliseconds())) - b.Metrics.UpdateAttestation(len(batch.State.IndexedOperators), len(aggSig.NonSigners)) + b.Metrics.UpdateAttestation(len(batch.State.IndexedOperators), len(aggSig.NonSigners), aggSig.QuorumResults) + for _, quorumResult := range aggSig.QuorumResults { + log.Info("[batcher] Aggregated quorum result", "quorumID", quorumResult.QuorumID, "percentSigned", quorumResult.PercentSigned) + } numPassed := numBlobsAttested(aggSig.QuorumResults, batch.BlobHeaders) // TODO(mooselumph): Determine whether to confirm the batch based on the number of successes diff --git a/disperser/batcher/metrics.go b/disperser/batcher/metrics.go index 415dddc31..b1c7331c9 100644 --- a/disperser/batcher/metrics.go +++ b/disperser/batcher/metrics.go @@ -6,6 +6,7 @@ import ( "net/http" "github.com/Layr-Labs/eigenda/common" + "github.com/Layr-Labs/eigenda/core" "github.com/Layr-Labs/eigenda/disperser" "github.com/prometheus/client_golang/prometheus" "github.com/prometheus/client_golang/prometheus/collectors" @@ -124,9 +125,14 @@ func NewMetrics(httpPort string, logger common.Logger) *Metrics { return metrics } -func (g *Metrics) UpdateAttestation(operatorCount, nonSignerCount int) { +func (g *Metrics) UpdateAttestation(operatorCount, nonSignerCount int, quorumResults map[core.QuorumID]*core.QuorumResult) { g.Attestation.WithLabelValues("signers").Set(float64(operatorCount - nonSignerCount)) g.Attestation.WithLabelValues("non_signers").Set(float64(nonSignerCount)) + + for _, quorumResult := range quorumResults { + label := fmt.Sprintf("quorum_result_%d", quorumResult.QuorumID) + g.Attestation.WithLabelValues(label).Set(float64(quorumResult.PercentSigned)) + } } // UpdateCompletedBlob increments the number and updates size of processed blobs.