Class RuleMetrics

java.lang.Object
cloud.opencode.base.rules.metric.RuleMetrics

public final class RuleMetrics extends Object
Rule Metrics - Thread-Safe Per-Rule Metrics Collector 规则指标 - 线程安全的按规则指标收集器

Collects execution metrics (evaluation count, fire count, fail count, duration) for each rule in a thread-safe manner using LongAdder.

使用LongAdder以线程安全方式收集每条规则的执行指标 (评估次数、触发次数、失败次数、持续时间)。

Thread Safety | 线程安全: All methods are safe for concurrent use.

Since:
JDK 25, opencode-base-rules V1.0.3
Author:
Leon Soo www.LeonSoo.com
See Also:
  • Constructor Details

    • RuleMetrics

      public RuleMetrics()
  • Method Details

    • recordEvaluation

      public void recordEvaluation(String ruleName, long durationNanos, boolean fired)
      Records a rule evaluation 记录规则评估
      Parameters:
      ruleName - the rule name | 规则名称
      durationNanos - the evaluation duration in nanoseconds | 评估持续时间(纳秒)
      fired - whether the rule fired (condition was true) | 规则是否触发(条件为真)
    • recordFailure

      public void recordFailure(String ruleName)
      Records a rule failure 记录规则失败
      Parameters:
      ruleName - the rule name | 规则名称
    • getSnapshot

      public MetricsSnapshot getSnapshot(String ruleName)
      Returns a point-in-time snapshot of metrics for a specific rule 返回特定规则的指标时间点快照
      Parameters:
      ruleName - the rule name | 规则名称
      Returns:
      the metrics snapshot, or null if no data exists | 指标快照,如果没有数据则为null
    • getAllSnapshots

      public Map<String, MetricsSnapshot> getAllSnapshots()
      Returns snapshots for all tracked rules 返回所有跟踪规则的快照
      Returns:
      map of rule name to metrics snapshot | 规则名称到指标快照的映射
    • reset

      public void reset()
      Resets all metrics 重置所有指标
    • reset

      public void reset(String ruleName)
      Resets metrics for a specific rule 重置特定规则的指标
      Parameters:
      ruleName - the rule name | 规则名称