| 123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- package perf_metrics_setting
- import "github.com/QuantumNous/new-api/setting/config"
- type PerfMetricsSetting struct {
- Enabled bool `json:"enabled"`
- FlushInterval int `json:"flush_interval"`
- BucketTime string `json:"bucket_time"`
- RetentionDays int `json:"retention_days"`
- }
- var perfMetricsSetting = PerfMetricsSetting{
- Enabled: true,
- FlushInterval: 5,
- BucketTime: "hour",
- RetentionDays: 0,
- }
- func init() {
- config.GlobalConfig.Register("perf_metrics_setting", &perfMetricsSetting)
- }
- func GetSetting() PerfMetricsSetting {
- return perfMetricsSetting
- }
- func GetBucketSeconds() int64 {
- switch perfMetricsSetting.BucketTime {
- case "minute":
- return 60
- case "5min":
- return 300
- case "hour":
- return 3600
- default:
- return 3600
- }
- }
- func GetFlushIntervalMinutes() int {
- if perfMetricsSetting.FlushInterval < 1 {
- return 1
- }
- return perfMetricsSetting.FlushInterval
- }
|