package main
|
|
import (
|
"plc-recorder/msg"
|
"runtime"
|
|
"plc-recorder/collector"
|
"plc-recorder/config"
|
"plc-recorder/logger"
|
"plc-recorder/nsqclient"
|
|
"github.com/rs/zerolog"
|
)
|
|
var logFilePath = "./log/plc-recorder.log"
|
|
func main() {
|
// 初始化配置
|
config.Load()
|
|
// 初始化zerolog, 主要是避免plc4go打印无关的日志
|
zerolog.SetGlobalLevel(zerolog.FatalLevel)
|
|
// 初始化日志
|
if runtime.GOOS == "windows" {
|
logFilePath = "log/plc-recorder.log"
|
}
|
|
logger.InitLog(logFilePath, "debug", 15, false)
|
logger.Info("plc-recorde start!")
|
|
// 初始化nsq
|
nsqclient.InitNsqProducer()
|
|
// 订阅设备变更
|
go nsqclient.InitNsqConsumer(config.Options.SubDeviceTopic, "plc-recorder", collector.HandleDeviceUpdate)
|
|
collector.InitTask()
|
|
// 测试数据
|
go msg.TestSendDeviceLiveData()
|
|
select {}
|
}
|