Rename nodes_dynamic_path to state_path
This commit is contained in:
parent
4cc93891ee
commit
5ca74e51bc
|
@ -13,8 +13,9 @@ webroot = "webroot"
|
||||||
[nodes]
|
[nodes]
|
||||||
enable = true
|
enable = true
|
||||||
nodes_version = 2
|
nodes_version = 2
|
||||||
nodes_path = "/var/www/html/meshviewer/data/nodes_all.json"
|
nodes_path = "/var/www/html/meshviewer/data/nodes.json"
|
||||||
graph_path = "/var/www/html/meshviewer/data/graph.json"
|
graph_path = "/var/www/html/meshviewer/data/graph.json"
|
||||||
|
state_path = "/var/lib/collector/state.json"
|
||||||
|
|
||||||
# Export nodes and graph periodically
|
# Export nodes and graph periodically
|
||||||
save_interval = "5s"
|
save_interval = "5s"
|
||||||
|
|
|
@ -19,13 +19,13 @@ type Config struct {
|
||||||
Webroot string
|
Webroot string
|
||||||
}
|
}
|
||||||
Nodes struct {
|
Nodes struct {
|
||||||
Enable bool
|
Enable bool
|
||||||
NodesVersion int
|
NodesVersion int
|
||||||
NodesPath string
|
NodesPath string
|
||||||
NodesDynamicPath string
|
GraphPath string
|
||||||
GraphPath string
|
StatePath string
|
||||||
SaveInterval Duration // Save nodes periodically
|
SaveInterval Duration // Save nodes periodically
|
||||||
PruneAfter Duration // Remove nodes after n days of inactivity
|
PruneAfter Duration // Remove nodes after n days of inactivity
|
||||||
}
|
}
|
||||||
Influxdb struct {
|
Influxdb struct {
|
||||||
Enable bool
|
Enable bool
|
||||||
|
|
|
@ -18,6 +18,6 @@ func TestReadConfig(t *testing.T) {
|
||||||
assert.Equal(time.Minute, config.Respondd.CollectInterval.Duration)
|
assert.Equal(time.Minute, config.Respondd.CollectInterval.Duration)
|
||||||
|
|
||||||
assert.Equal(2, config.Nodes.NodesVersion)
|
assert.Equal(2, config.Nodes.NodesVersion)
|
||||||
assert.Equal("/var/www/html/meshviewer/data/nodes_all.json", config.Nodes.NodesPath)
|
assert.Equal("/var/www/html/meshviewer/data/nodes.json", config.Nodes.NodesPath)
|
||||||
assert.Equal(time.Hour*24*7, config.Nodes.PruneAfter.Duration)
|
assert.Equal(time.Hour*24*7, config.Nodes.PruneAfter.Duration)
|
||||||
}
|
}
|
||||||
|
|
|
@ -28,7 +28,7 @@ func NewNodes(config *Config) *Nodes {
|
||||||
config: config,
|
config: config,
|
||||||
}
|
}
|
||||||
|
|
||||||
if config.Nodes.NodesDynamicPath != "" {
|
if config.Nodes.StatePath != "" {
|
||||||
nodes.load()
|
nodes.load()
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
|
@ -178,7 +178,7 @@ func (nodes *Nodes) expire() {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (nodes *Nodes) load() {
|
func (nodes *Nodes) load() {
|
||||||
path := nodes.config.Nodes.NodesDynamicPath
|
path := nodes.config.Nodes.StatePath
|
||||||
|
|
||||||
if f, err := os.Open(path); err == nil { // transform data to legacy meshviewer
|
if f, err := os.Open(path); err == nil { // transform data to legacy meshviewer
|
||||||
if err = json.NewDecoder(f).Decode(nodes); err == nil {
|
if err = json.NewDecoder(f).Decode(nodes); err == nil {
|
||||||
|
@ -197,7 +197,7 @@ func (nodes *Nodes) save() {
|
||||||
defer nodes.RUnlock()
|
defer nodes.RUnlock()
|
||||||
|
|
||||||
// serialize nodes
|
// serialize nodes
|
||||||
save(nodes, nodes.config.Nodes.NodesDynamicPath)
|
save(nodes, nodes.config.Nodes.StatePath)
|
||||||
|
|
||||||
if path := nodes.config.Nodes.NodesPath; path != "" {
|
if path := nodes.config.Nodes.NodesPath; path != "" {
|
||||||
version := nodes.config.Nodes.NodesVersion
|
version := nodes.config.Nodes.NodesVersion
|
||||||
|
|
|
@ -47,7 +47,7 @@ func TestLoadAndSave(t *testing.T) {
|
||||||
assert := assert.New(t)
|
assert := assert.New(t)
|
||||||
|
|
||||||
config := &Config{}
|
config := &Config{}
|
||||||
config.Nodes.NodesDynamicPath = "testdata/nodes.json"
|
config.Nodes.StatePath = "testdata/nodes.json"
|
||||||
|
|
||||||
nodes := NewNodes(config)
|
nodes := NewNodes(config)
|
||||||
nodes.load()
|
nodes.load()
|
||||||
|
|
Loading…
Reference in New Issue