MCPcopy Create free account
hub / github.com/GoEdgeLab/EdgeNode / Init

Method Init

internal/metrics/task_kv.go:58–105  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

56}
57
58func (this *KVTask) Init() error {
59 store, err := kvstore.DefaultStore()
60 if err != nil {
61 return err
62 }
63
64 db, err := store.NewDB("metrics" + types.String(this.itemConfig.Id))
65 if err != nil {
66 return err
67 }
68
69 {
70 table, tableErr := kvstore.NewTable[*Stat]("items", &ItemEncoder[*Stat]{})
71 if tableErr != nil {
72 return tableErr
73 }
74 db.AddTable(table)
75 this.itemsTable = table
76 }
77
78 {
79 table, tableErr := kvstore.NewTable[[]byte]("values", kvstore.NewNilValueEncoder())
80 if tableErr != nil {
81 return tableErr
82 }
83 db.AddTable(table)
84 this.valuesTable = table
85 }
86
87 {
88 table, tableErr := kvstore.NewTable[[]byte]("sum_values", kvstore.NewBytesValueEncoder())
89 if tableErr != nil {
90 return tableErr
91 }
92 db.AddTable(table)
93 this.sumTable = table
94 }
95
96 // 所有的服务IDs
97 err = this.loadServerIdMap()
98 if err != nil {
99 return err
100 }
101
102 this.isLoaded = true
103
104 return nil
105}
106
107func (this *KVTask) InsertStat(stat *Stat) error {
108 if this.isStopped {

Callers

nothing calls this directly

Calls 8

AddTableMethod · 0.95
loadServerIdMapMethod · 0.95
DefaultStoreFunction · 0.92
NewTableFunction · 0.92
NewNilValueEncoderFunction · 0.92
NewBytesValueEncoderFunction · 0.92
NewDBMethod · 0.80
StringMethod · 0.45

Tested by

no test coverage detected