Skip to content

Commit 161489d

Browse files
authored
Register system metrics in zrouter (#91)
1 parent 3f4096a commit 161489d

File tree

1 file changed

+16
-0
lines changed

1 file changed

+16
-0
lines changed

pkg/zrouter/zrouter.go

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,16 @@ const (
2020
appRevisionMetric = "app_revision"
2121
)
2222

23+
type SystemMetrics struct {
24+
Enable bool
25+
UpdateInterval time.Duration
26+
}
27+
2328
type Config struct {
2429
ReadTimeOut time.Duration
2530
WriteTimeOut time.Duration
2631
Logger *logger.Logger
32+
SystemMetrics SystemMetrics
2733
EnableRequestID bool
2834
AppVersion string
2935
AppRevision string
@@ -95,6 +101,16 @@ func New(metricsServer metrics.TaskMetrics, config *Config) ZRouter {
95101
metricsServer: metricsServer,
96102
config: config,
97103
}
104+
105+
if config.SystemMetrics.Enable {
106+
if err := metrics.RegisterSystemMetrics(metricsServer); err != nil {
107+
logger.GetLoggerFromContext(context.Background()).Errorf("Error registering metrics %v", err)
108+
}
109+
110+
updateInterval := config.SystemMetrics.UpdateInterval
111+
go metrics.UpdateSystemMetrics(metricsServer, updateInterval)
112+
}
113+
98114
return zr
99115
}
100116

0 commit comments

Comments
 (0)