16 lines
522 B
Racket
16 lines
522 B
Racket
|
#lang racket/base
|
||
|
|
||
|
(provide report-stats)
|
||
|
|
||
|
(define (report-stats REPORT_EVERY)
|
||
|
(define start-time (current-inexact-milliseconds))
|
||
|
(define prev-value 0)
|
||
|
(lambda (new-value)
|
||
|
(when (zero? (remainder new-value REPORT_EVERY))
|
||
|
(define end-time (current-inexact-milliseconds))
|
||
|
(define delta (/ (- end-time start-time) 1000.0))
|
||
|
(define count (- new-value prev-value))
|
||
|
(set! prev-value new-value)
|
||
|
(set! start-time end-time)
|
||
|
(log-info "Box got ~a (~a Hz)" new-value (/ count delta)))))
|