123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081 |
- package main
- import (
- "flag"
- "fmt"
- "log"
- "os"
- "runtime"
- "github.com/710leo/urlooker/modules/agent/backend"
- "github.com/710leo/urlooker/modules/agent/cron"
- "github.com/710leo/urlooker/modules/agent/g"
- "github.com/710leo/urlooker/modules/agent/utils"
- "github.com/toolkits/file"
- )
- func prepare() {
- runtime.GOMAXPROCS(runtime.NumCPU())
- log.SetFlags(log.Ldate | log.Ltime | log.Lshortfile)
- }
- func init() {
- prepare()
- cfg := flag.String("c", "", "configuration file")
- version := flag.Bool("v", false, "show version")
- help := flag.Bool("h", false, "help")
- flag.Parse()
- handleVersion(*version)
- handleHelp(*help)
- handleConfig(*cfg)
- fmt.Println("g.Config.Web.Addrs: ", g.Config)
- backend.InitClients(g.Config.Web.Addrs)
- g.Init()
- }
- func main() {
- ips, err := utils.IntranetIP()
- if len(ips) > 0 {
- g.IP = ips[0]
- } else {
- log.Println("get local ip err: ", err)
- }
- go cron.Push()
- cron.StartCheck()
- }
- func handleVersion(displayVersion bool) {
- if displayVersion {
- fmt.Println(g.VERSION)
- os.Exit(0)
- }
- }
- func handleHelp(displayHelp bool) {
- if displayHelp {
- flag.Usage()
- os.Exit(0)
- }
- }
- func handleConfig(configFile string) {
- if configFile == "" {
- configFile = "configs/agent.yml"
- }
- if file.IsExist("configs/agent.local.yml") {
- configFile = "configs/agent.local.yml"
- }
- err := g.Parse(configFile)
- if err != nil {
- log.Fatalln(err)
- }
- }
|