Skip to content

Commit fa95bcb

Browse files
committed
Add an example for expvpp
1 parent 66a8388 commit fa95bcb

File tree

1 file changed

+41
-0
lines changed

1 file changed

+41
-0
lines changed

lib/expvpp/cmd/http/main.go

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
package main
2+
3+
import (
4+
"expvar"
5+
"log"
6+
"math/rand/v2"
7+
"net/http"
8+
"time"
9+
10+
"github.com/libraries/daze/lib/expvpp"
11+
)
12+
13+
var Expv = struct {
14+
Average *expvpp.Average
15+
Call *expvar.Int
16+
Hits *expvar.Int
17+
Percent *expvar.Func
18+
}{
19+
Average: expvpp.NewAverage("Average", 64),
20+
Hits: expvar.NewInt("Hits"),
21+
Call: expvar.NewInt("Call"),
22+
Percent: expvpp.NewPercent("Percent", "Hits", "Call"),
23+
}
24+
25+
func main() {
26+
go func() {
27+
for range time.NewTicker(time.Millisecond * 125).C {
28+
n := rand.Uint32N(256)
29+
Expv.Average.Append(float64(n))
30+
Expv.Call.Add(1)
31+
if n < 8 {
32+
Expv.Hits.Add(1)
33+
}
34+
}
35+
}()
36+
go func() {
37+
log.Println("main: listen and serve on 127.0.0.1:8080")
38+
http.ListenAndServe("127.0.0.1:8080", expvpp.ServeMux())
39+
}()
40+
select {}
41+
}

0 commit comments

Comments
 (0)