overflow_probe/crawler_manager/crawler_util.go
2017-08-03 19:08:34 +09:00

59 lines
1.2 KiB
Go

package crawler_manager
import (
"io/ioutil"
"os"
"strconv"
)
func existConfigFile(prePath string, dir string) bool {
files, _ := ioutil.ReadDir(prePath + "/" + dir)
for _, file := range files {
if file.IsDir() {
retB := existConfigFile(prePath+"/"+dir, file.Name())
if retB {
return true
}
} else {
return true
}
}
return false
}
func existConfigFileDir(prePath string, dir string, configCrawler *[]string) {
files, _ := ioutil.ReadDir(prePath + "/" + dir)
for _, file := range files {
if file.IsDir() {
existConfigFileDir(prePath+"/"+dir, file.Name(), configCrawler)
} else {
*configCrawler = append(*configCrawler, prePath+"/"+dir)
return
}
}
}
func getRunCommand(container *string) string {
return GetInstance().ConfigMgr.GetGlobalConfig().Paths.BinaryFolder + "/" + *container + "/" + GetInstance().ConfigMgr.GetGlobalConfig().Paths.ScriptFile
}
func writePid(pid int) {
ioutil.WriteFile(GetInstance().ConfigMgr.GetGlobalConfig().Paths.PidFolder+strconv.Itoa(pid), []byte(""), os.ModePerm)
}
func getConfigPaths(container *string) *[]string {
var dirs []string
existConfigFileDir(GetInstance().ConfigMgr.GetGlobalConfig().Paths.ConfigFolder, *container, &dirs)
return &dirs
}