| 123456789101112131415161718192021222324252627282930313233343536373839 | package logicimport (	"encoding/json"	"github.com/gravitl/netmaker/database"	"github.com/gravitl/netmaker/models")// GetMetrics - gets the metricsfunc GetMetrics(nodeid string) (*models.Metrics, error) {	var metrics models.Metrics	record, err := database.FetchRecord(database.METRICS_TABLE_NAME, nodeid)	if err != nil {		if database.IsEmptyRecord(err) {			return &metrics, nil		}		return &metrics, err	}	err = json.Unmarshal([]byte(record), &metrics)	if err != nil {		return &metrics, err	}	return &metrics, nil}// UpdateMetrics - updates the metrics of a given clientfunc UpdateMetrics(nodeid string, metrics *models.Metrics) error {	data, err := json.Marshal(metrics)	if err != nil {		return err	}	return database.Insert(nodeid, string(data), database.METRICS_TABLE_NAME)}// DeleteMetrics - deletes metrics of a given nodefunc DeleteMetrics(nodeid string) error {	return database.DeleteRecord(database.METRICS_TABLE_NAME, nodeid)}
 |