1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- package main
- import (
- "flag"
- "fmt"
- "log"
- "os"
- "runtime"
- "github.com/710leo/urlooker/modules/alarm/backend"
- "github.com/710leo/urlooker/modules/alarm/cron"
- "github.com/710leo/urlooker/modules/alarm/g"
- "github.com/710leo/urlooker/modules/alarm/judge"
- "github.com/710leo/urlooker/modules/alarm/receiver"
- "github.com/710leo/urlooker/modules/alarm/sender"
- "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)
- judge.InitHistoryBigMap()
- sender.Init()
- backend.InitClients(g.Config.Web.Addrs)
- }
- func main() {
- go cron.SyncStrategies()
- receiver.Start()
- }
- 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/alarm.yml"
- }
- if file.IsExist("configs/alarm.local.yml") {
- configFile = "configs/alarm.local.yml"
- }
- err := g.Parse(configFile)
- if err != nil {
- log.Fatalln(err)
- }
- }
|