示例#1
0
func Test(t *testing.T) {
	runtime.GOMAXPROCS(runtime.NumCPU())

	//指定是否控制台打印,默认为true
	logger.SetConsole(true)
	//设置日志格式 默认格式为Ldate|Ltime|Lshortfile 前缀为2015/09/17 22:55:44 main.go:13:
	logger.SetFormat(logger.Ldate)
	//指定日志文件备份方式为文件大小的方式
	//第一个参数为日志文件存放目录
	//第二个参数为日志文件命名
	//第三个参数为备份文件最大数量
	//第四个参数为备份文件大小
	//第五个参数为文件大小的单位
	//logger.SetRollingFile("d:/logtest", "test.log", 10, 5, logger.KB)

	//指定日志文件备份方式为日期的方式
	//第一个参数为日志文件存放目录
	//第二个参数为日志文件命名
	logger.SetRollingDaily("d:/logtest", "test.log")

	//指定日志级别  ALL,DEBUG,INFO,WARN,ERROR,FATAL,OFF 级别由低到高
	//一般习惯是测试阶段为debug,生成环境为info以上
	logger.SetLevel(logger.ERROR)

	for i := 10000; i > 0; i-- {
		go log(i)
		time.Sleep(1000 * time.Millisecond)
	}
	time.Sleep(15 * time.Second)
}
示例#2
0
/*主入口*/
func main() {
	runtime.GOMAXPROCS(runtime.NumCPU())

	//指定是否控制台打印,默认为true
	logger.SetConsole(true)

	//指定日志级别  ALL,DEBUG,INFO,WARN,ERROR,FATAL,OFF 级别由低到高
	logger.SetLevel(logger.INFO)
	logger.SetRollingFile("./log", "datapostlog.log", 100, 50, logger.MB)

	if beego.AppConfig.String("runmode") == "dev" {
		orm.Debug = true
	}

	//支持异构版本升级
	pipe.Upgrade()
	time.Sleep(3 * time.Second)

	//配置文件初始化
	err := pipe.InitFile()
	if err != nil {
		logger.Error("InitFile():", err)
	}

	//注册运行服务
	ServiceHandle(cSvcName, cSvcName, cSvcName, func() {
		//初始化运行参数
		pipe.InitConfigMap()

		//运行参数管理UI服务
		beego.Router("/", &pipe.IndexInfo{}, "*:Index")
		beego.Router("/index/list", &pipe.IndexInfo{}, "*:List")
		beego.Router("/index/edit", &pipe.IndexInfo{}, "*:Edit")
		beego.Router("/index/test", &pipe.IndexInfo{}, "*:Test")
		beego.Router("/index/help", &pipe.IndexInfo{}, "*:Help")
		beego.Router("/index/treedata", &pipe.IndexInfo{}, "*:TreeData")

		//启动数据同步
		go pipe.StartAllSys()

		//启动https服务
		go pipe.Https_start()

		//启动参数管理UI 服务
		beego.Run()
		logger.Info("DaemonName=", cSvcName, "Daemon started.")
		for {
			time.Sleep(time.Hour)
		}
	}, func() {
		Stop()
		logger.Info("DaemonName=", cSvcName, "Daemon stoped.")
	})
}
示例#3
0
func main() {
	logPath := getPath()
	// init log
	log.SetConsole(true)
	log.SetRollingDaily(logPath, "network.log")
	log.SetLevel(log.DEBUG)

	protocol := &packet.TransProtocolComm{}
	reactor := &ComReactor{}
	log.Debug("protocol addr is-", protocol)
	log.Debug("reactor addr is-", reactor)
	tcpServer := socket.NewTcpListenSock(protocol, reactor)
	log.Debug("TcpServer start!")
	tcpServer.InitTcpServer("localhost:9009")
	select {}
}
示例#4
0
文件: main.go 项目: markman101/Ginger
func fmain() {
	logPath := getPath()
	// init log
	log.SetConsole(true)
	log.SetRollingDaily(logPath, "client.log")
	log.SetLevel(log.DEBUG)

	protocol := &packet.TransProtocolComm{}
	reactor := &ComReactor{}
	conn, err := socket.ConServer("localhost:9009")
	if err != nil {
		log.Error("conn failed")
		return
	}

	tcpClient := socket.NewTcpSocket(conn, protocol, reactor)
	tcpClient.Start()
	data := []byte{'h', 'e', 'l', 'l', 'o'}
	tcpClient.Write(data)
	select {}
}
示例#5
0
func (p *Workshop) Init(ctx *sj.Json, upCtrlChan chan int, upReportChan chan int, isTest bool) error {
	p.ctx = ctx
	p.upCtrlChan = upCtrlChan
	p.upReportChan = upReportChan

	p.processedLine = 0
	var err error
	if err = p.initLog(isTest); err != nil {
		return err
	}
	logger.Debug("workshop init log success")

	if err = p.initSrcProvider(); err != nil {
		return err
	}
	logger.Debug("workshop init srcProvider success")

	p.cronTickInterval = ctx.Get("main").Get("cron_tick_interval").MustInt()
	p.memLimit = ctx.Get("main").Get("mem_limit").MustUint64()
	p.PRCtrlChan = make(chan int, 1000) // 1000 is enough
	p.PRReportChan = make(chan int)
	p.CLCtrlChan = make(chan int, 1000) // 1000 is enough
	p.CLReportChan = make(chan int)

	if err = p.initChannel(isTest); err != nil {
		return err
	}
	logger.Debug("workshop init channel and subroutine success")

	logger.Info("start...  config:\n[", *p.ctx, "]\n")
	if isTest {
		p.provider.Destory()
	}
	logger.SetConsole(false)
	return nil
}