use crate::{
ids::AccessMetricKind,
ops::runtime::metrics::{
access::AccessMetrics,
auth::{
AuthMetricOperation, AuthMetricOutcome, AuthMetricReason, AuthMetricSurface,
AuthMetrics, attestation_epoch_rejected_predicate, attestation_verify_failed_predicate,
auth_attestation_verifier_endpoint,
},
},
};
pub fn record_attestation_verify_failed() {
record_attestation_metric(
AuthMetricOperation::Verify,
AuthMetricOutcome::Failed,
AuthMetricReason::VerifyFailed,
attestation_verify_failed_predicate(),
);
}
pub fn record_attestation_epoch_rejected() {
record_attestation_metric(
AuthMetricOperation::Verify,
AuthMetricOutcome::Failed,
AuthMetricReason::EpochRejected,
attestation_epoch_rejected_predicate(),
);
}
fn record_attestation_metric(
operation: AuthMetricOperation,
outcome: AuthMetricOutcome,
reason: AuthMetricReason,
predicate: &'static str,
) {
AuthMetrics::record(AuthMetricSurface::Attestation, operation, outcome, reason);
AccessMetrics::increment(
auth_attestation_verifier_endpoint(),
AccessMetricKind::Auth,
predicate,
);
}