1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- package client
- import (
- "github.com/cnlh/nps/lib/common"
- "github.com/cnlh/nps/lib/config"
- "github.com/cnlh/nps/lib/lg"
- "log"
- "os"
- "path/filepath"
- "strconv"
- "strings"
- )
- func GetTaskStatus(path string) {
- cnf, err := config.NewConfig(path)
- if err != nil {
- log.Fatalln(err)
- }
- c, err := NewConn(cnf.CommonConfig.Tp, cnf.CommonConfig.VKey, cnf.CommonConfig.Server, common.WORK_CONFIG, cnf.CommonConfig.ProxyUrl)
- if err != nil {
- log.Fatalln(err)
- }
- if _, err := c.Write([]byte(common.WORK_STATUS)); err != nil {
- log.Fatalln(err)
- }
- if f, err := common.ReadAllFromFile(filepath.Join(common.GetTmpPath(), "npc_vkey.txt")); err != nil {
- log.Fatalln(err)
- } else if _, err := c.Write([]byte(string(f))); err != nil {
- log.Fatalln(err)
- }
- if l, err := c.GetLen(); err != nil {
- log.Fatalln(err)
- } else if b, err := c.ReadLen(l); err != nil {
- lg.Fatalln(err)
- } else {
- arr := strings.Split(string(b), common.CONN_DATA_SEQ)
- for _, v := range cnf.Hosts {
- if common.InArr(arr, v.Remark) {
- log.Println(v.Remark, "ok")
- } else {
- log.Println(v.Remark, "not running")
- }
- }
- for _, v := range cnf.Tasks {
- ports := common.GetPorts(v.Ports)
- for _, vv := range ports {
- var remark string
- if len(ports) > 1 {
- remark = v.Remark + "_" + strconv.Itoa(vv)
- } else {
- remark = v.Remark
- }
- if common.InArr(arr, remark) {
- log.Println(remark, "ok")
- } else {
- log.Println(remark, "not running")
- }
- }
- }
- }
- os.Exit(0)
- }
|