当前位置: 首页>>代码示例>>Golang>>正文


Golang logger.Error函数代码示例

本文整理汇总了Golang中github.com/donnie4w/go-logger/logger.Error函数的典型用法代码示例。如果您正苦于以下问题:Golang Error函数的具体用法?Golang Error怎么用?Golang Error使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了Error函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。

示例1: copyFile

/*复制文件 如果存在则不再复制*/
func copyFile(src, dest string) error {
	srcFile, e := os.Open(src)
	if e != nil {
		logger.Error("copyFile:", e.Error())
		return e
	}
	defer srcFile.Close()

	df, e := os.Open(dest)
	defer df.Close()
	if e != nil && os.IsNotExist(e) {
		logger.Info("desIniFile:", dest, "file not exist!")
		destFile, e := os.Create(dest)
		if e != nil {
			logger.Error("copyFile destFile:", e.Error())
			return e
		}
		defer destFile.Close()
		io.Copy(destFile, srcFile)
		logger.Info("copy file from :", src, " to ", dest)
	} else {
		logger.Info("desIniFile:", dest, "已存在")
	}

	return nil
}
开发者ID:dcmsy,项目名称:receive,代码行数:27,代码来源:receive_file.go

示例2: RunSingleDataPipe

/*执行数据同步读取直接写入 single data 单次执行可变的业务数据 */
func (xmlInfo *XmlInfo) RunSingleDataPipe(dbIni *DBini) {
	logger.Info("All run begin >>>>>>>>>>>>>>>>")
	logger.Info("dbIni.F_DbType:", dbIni.F_DbType, "dbIni.T_DbType:", dbIni.T_DbType)
	if !StartFlag {
		return
	}
	defer func() {
		if err := recover(); err != nil {
			logger.Error("查询数据库失败", err)
		}
	}()
	f_pwd, _ := Base64Dec(dbIni.F_Password)
	t_pwd, _ := Base64Dec(dbIni.T_Password)
	dbIni.F_Db.Db_open(dbIni.F_DbType, dbIni.F_User, f_pwd, dbIni.F_Ip, dbIni.F_Port, dbIni.F_Dbname)
	dbIni.T_Db.Db_open(dbIni.T_DbType, dbIni.T_User, t_pwd, dbIni.T_Ip, dbIni.T_Port, dbIni.T_Dbname)
	//关闭数据库
	defer dbIni.F_Db.db.Close()
	defer dbIni.T_Db.db.Close()

	if dbIni.F_Db.db == nil || dbIni.T_Db.db == nil {
		logger.Error("无法链接两方数据库")
		panic("无法链接两方数据库")
		return
	}
	DataSinglePipe(dbIni, xmlInfo)
	Updater(dbIni, xmlInfo)
	ExecProc(dbIni, xmlInfo)
	logger.Info("All run end >>>>>>>>>>>>>>>>")
	time.Sleep(5 * time.Second)
}
开发者ID:dcmsy,项目名称:receive,代码行数:31,代码来源:receive_single_pipe.go

示例3: Check

/*判断是否需要查询数据*/
func Check(dbIni *DBini, xmlInfo *XmlInfo) {
	if strings.EqualFold(xmlInfo.IsValData, "true") {
		xmlInfo.CheckFlag = true
		return
	}
	if len(xmlInfo.CheckRowSQL) > 0 {
		defer func() {
			if err := recover(); err != nil {
				logger.Error("查询数据库失败", err)
			}
		}()
		f_pwd, _ := Base64Dec(dbIni.F_Password)
		dbIni.F_Db.Db_open(dbIni.F_DbType, dbIni.F_User, f_pwd, dbIni.F_Ip, dbIni.F_Port, dbIni.F_Dbname)
		defer dbIni.F_Db.db.Close()
		query, err := dbIni.F_Db.db.Query(strings.Replace(xmlInfo.CheckRowSQL, "@[dbname]", dbIni.F_Dbname, -1)) //查询数据库
		defer query.Close()

		if err != nil {
			logger.Error("查询数据库失败", err.Error())
			xmlInfo.CheckFlag = false
			panic(err)
			return
		}
		cols, _ := query.Columns()
		values := make([][]byte, len(cols))     //values是每个列的值
		scans := make([]interface{}, len(cols)) //query.Scan的参数 用len(cols)定住当次查询的长度
		for i := range values {                 //让每一行数据都填充到[][]byte里面
			scans[i] = &values[i]
		}
		dbRows := 0
		if query.Next() {
			//判断是否与上次的数据一致,如果不一致则查询数据库,否则不查询
			if err := query.Scan(scans...); err != nil { //query.Scan查询出来的不定长值放到scans[i] = &values[i],也就是每行都放在values里
				logger.Error(err)
				xmlInfo.CheckFlag = false
				return
			}
			for _, v := range values {
				intV, err := strconv.Atoi(string(v))
				if err != nil {
					xmlInfo.CheckFlag = false
				} else {
					dbRows = intV
				}
			}
			if dbRows != 0 && dbRows != xmlInfo.RowNum { //获取reader 如何获取到数据则置为0,如果获取不到了则赋予全局GobalNum
				xmlInfo.RowNum = dbRows
				xmlInfo.GobalNum = dbRows
				xmlInfo.CheckFlag = true
			} else {
				xmlInfo.CheckFlag = false
			}
		} else {
			xmlInfo.CheckFlag = true
		}
	} else {
		logger.Info(xmlInfo.Remark, "无需查询系统库行记录是否变化")
		xmlInfo.CheckFlag = true
	}
}
开发者ID:dcmsy,项目名称:datapost,代码行数:61,代码来源:datapost_pipe.go

示例4: insertStdOrgMap

/*添加待匹配组织机构*/
func insertStdOrgMap(dbIni *DBini, noneOrgMap map[string]string) {
	stdOrgMapStmt, err := dbIni.T_Db.db.Prepare(StdOrgMapInsertSQL)
	defer stdOrgMapStmt.Close()
	if err != nil {
		logger.Error(err)
		return
	}
	for deptname, _ := range noneOrgMap {
		if len(deptname) == 0 {
			continue
		}
		stdOrgMapQuery, err := dbIni.T_Db.db.Query(StdOrgMapQuerySQL, deptname)
		if err != nil {
			logger.Error("查询数据库失败", err.Error())
			return
		}
		defer stdOrgMapQuery.Close()
		if stdOrgMapQuery.Next() { //如果存在 则判断是否需要更新 sysnames
			cols, _ := stdOrgMapQuery.Columns()
			colsLength := len(cols)
			values := make([][]byte, colsLength)
			scans := make([]interface{}, colsLength)
			for i := range values {
				scans[i] = &values[i]
			}
			if err := stdOrgMapQuery.Scan(scans...); err != nil {
				logger.Error(err)
				return
			}
			row := make(map[string]string) //每行数据
			for k, v := range values {
				key := cols[k]
				row[key] = string(v)
			}
			id := row["id"]
			sysnames := row["sysnames"]
			if len(sysnames) > 0 && len(dbIni.SysName) > 0 && !strings.Contains(sysnames, dbIni.SysName) {
				updateStmt, err := dbIni.T_Db.db.Prepare(UpdateSQL)
				defer updateStmt.Close()
				if err != nil {
					logger.Error(err)
					return
				}
				updateScans := make([]interface{}, 2)
				updateScans[0] = sysnames + "," + dbIni.SysName
				updateScans[1] = id
				updateStmt.Exec(updateScans...)
			}
		} else { //insert
			stdOrgScans := make([]interface{}, 4)
			stdOrgScans[0] = deptname
			stdOrgScans[1] = dbIni.SysId
			stdOrgScans[2] = dbIni.SysName
			stdOrgScans[3] = dbIni.SysName
			stdOrgMapStmt.Exec(stdOrgScans...)
		}
	}
}
开发者ID:dcmsy,项目名称:receive,代码行数:59,代码来源:receive_orgmatch.go

示例5: StartOrgSync

/*启动组织机构同步服务*/
func (configinfo *ConfigInfo) StartOrgSync() {
	logger.Info(" StartOrgSync is run... ")
	var orgVersionUrl = "http://" + configinfo.core_ip + ":" + configinfo.core_port + configinfo.orgversion_url
	var allOrgUrl = "http://" + configinfo.core_ip + ":" + configinfo.core_port + configinfo.allorg_url
	logger.Info("orgVersionUrl start >>>>>>>>>>>>>>>>", orgVersionUrl)
	logger.Info("allOrgUrl start >>>>>>>>>>>>>>>>", allOrgUrl)
	//发起链接访问,获取返回的json数据
	for {
		var return_orgs []byte
		var return_version []byte
		var tmpOrgVersion string = ""
		if response, err := http.Get(orgVersionUrl); err != nil {
			logger.Error(" err = ", err)
		} else {
			defer response.Body.Close()
			if return_version, err = ioutil.ReadAll(response.Body); err != nil {
				logger.Error(" err = ", err)
			}
			tmpOrgVersion = string(return_version)
		}
		logger.Info(" return_version = ", tmpOrgVersion)
		if len(OrgVersion) == 0 || (len(tmpOrgVersion) > 0 && !strings.EqualFold(tmpOrgVersion, OrgVersion)) {
			OrgVersion = tmpOrgVersion
			//重新加载组织机构
			if response, err := http.Get(allOrgUrl); err != nil {
				logger.Error(" err = ", err)
			} else {
				defer response.Body.Close()
				if return_orgs, err = ioutil.ReadAll(response.Body); err != nil {
					logger.Error(" err = ", err)
				}
			}
			var orgInfos []OrgInfo
			err := json.Unmarshal(return_orgs, &orgInfos)
			if err != nil {
				logger.Error(" err = ", err)
			}
			if len(orgInfos) > 0 {
				for k, _ := range OrgMap {
					delete(OrgMap, k)
				}
				for k, _ := range OrgNameMap {
					delete(OrgNameMap, k)
				}
				for i := range orgInfos {
					org := &orgInfos[i]
					OrgMap[org.Org_path] = org.Id
					OrgMap[org.Name] = org.Id
					OrgNameMap[org.Id] = org.Name
				}
			}
		}
		time.Sleep(Time_interval * time.Second)
	}
}
开发者ID:dcmsy,项目名称:receive,代码行数:56,代码来源:receive_orgmatch.go

示例6: InitXmlInfo

/*读取xml信息初始化xmlinfo*/
func InitXmlInfo(dirName string) XmlInfo {
	content, err := ioutil.ReadFile("xml/HostAudit/repeatetimer_主机审计日志.xml")
	if err != nil {
		logger.Error(err)
	}
	var result XmlInfo
	err = xml.Unmarshal(content, &result)
	if err != nil {
		logger.Error(err)
	}
	return result
}
开发者ID:dcmsy,项目名称:datapost,代码行数:13,代码来源:datapost_pipe.go

示例7: TestReadXml

/*测试读取xml*/
func TestReadXml() {
	content, err := ioutil.ReadFile("xml/HostAudit/repeatetimer_主机审计日志.xml")
	if err != nil {
		logger.Error(err)
	}
	var result XmlInfo
	err = xml.Unmarshal(content, &result)
	if err != nil {
		logger.Error(err)
	}
	logger.Debug(result.FileName)
}
开发者ID:dcmsy,项目名称:datapost,代码行数:13,代码来源:datapost_util.go

示例8: ConServer

func ConServer(hostport string) (*net.TCPConn, error) {
	remoteAddr, err_r := net.ResolveTCPAddr("tcp4", hostport)
	if err_r != nil {
		log.Error("Conn error,ResolveTCPAddr:", hostport)
		return nil, err_r
	}
	conn, err := net.DialTCP("tcp4", nil, remoteAddr)
	if err != nil {
		log.Error("Conn error,connect to", hostport)
		return nil, err
	}

	return conn, nil
}
开发者ID:markman101,项目名称:Ginger,代码行数:14,代码来源:tcpsocket.go

示例9: Db_open

/*获取数据库连接 支持mysql mssql mongodb*/
func (f *My_db) Db_open(dbtype string, dbusername string, dbpassowrd string, dbhostsip string, dbport string, dbname string) {
	var connString string
	if strings.EqualFold(dbtype, "mysql") { //root:@tcp(localhost:3306)/go?charset=utf8
		connString = fmt.Sprintf("%s:%[email protected](%s:%s)/%s?charset=utf8", dbusername, dbpassowrd, dbhostsip, dbport, dbname)
	} else if strings.EqualFold(dbtype, "mssql") {
		connString = fmt.Sprintf("server=%s;user id=%s;password=%s;port=%s;database=%s;encrypt=disable;", dbhostsip, dbusername, dbpassowrd, dbport, dbname)
	}
	Odb, err := sql.Open(dbtype, connString)
	if err != nil {
		logger.Error(err)
		logger.Error("链接失败 >dbusername:%s dbpassowrd:%s dbhostsip:%s dbname:%s", dbusername, dbpassowrd, dbhostsip, dbname)
		f.db = nil
	}
	f.db = Odb
}
开发者ID:dcmsy,项目名称:datapost,代码行数:16,代码来源:datapost_util.go

示例10: Decode_pack

func (protocol *TransProtocolComm) Decode_pack(data []byte) (*Packet, int) {
	log.Info("Enter Decode_pack")
	decodeLen := 0
	pack := &Packet{}
	dataLen := len(data)
	offset := 0
	headLen := binary.Size(pack._header)
	//1.get packhader
	//= not cause out of memory so >= is needed
	for offset = 0; dataLen-offset >= headLen; offset++ {
		pack._header._ver = int16(binary.BigEndian.Uint16(data[offset : offset+2]))
		pack._header._seq = int32(binary.BigEndian.Uint32(data[offset+2 : offset+6]))
		pack._header._type = int16(binary.BigEndian.Uint16(data[offset+6 : offset+8]))
		pack._header._bodyLen = int32(binary.BigEndian.Uint32(data[offset+8 : offset+12]))
		//get pack header successful
		if int16(VER) == pack._header._ver && pack._header._bodyLen < int32(MAX_PACK_SIZE) {
			break
		}
	}
	//2.check is a complete Packet
	if dataLen-offset < headLen || dataLen-offset < int(pack._header._bodyLen) {
		//can't find VER in data Slice or is not a complete pack.
		log.Error("[PACK_NOT_COMPLETE],pack bodyLen is", pack._header._bodyLen)
		return nil, 0
	}

	//3.get a complete pack
	pack._data = make([]byte, pack._header._bodyLen)
	copy(pack._data, data[offset:])
	decodeLen = offset + headLen + int(pack._header._bodyLen)
	return pack, decodeLen
}
开发者ID:markman101,项目名称:Ginger,代码行数:32,代码来源:transprotocol.go

示例11: copyIniFiles

/**复制所有ini文件*/
func copyIniFiles() error {
	var rootName string = "xml_ini"
	var desRootName string = "xml"
	var suffix string = ".ini"
	var rootPath string = "xml_ini//xml_ini.ini"
	var fileFilter string = "/"
	s := []string{rootName, fileFilter}
	var path = strings.Join(s, "")
	results := make(map[string]string)
	err := filepath.Walk(path, func(path string, f os.FileInfo, err error) error {
		if f == nil {
			return err
		}
		if f.IsDir() {
			iniFile := path + fileFilter + f.Name() + suffix
			desIniFile := strings.Replace(path, rootName, desRootName, -1) + fileFilter + f.Name() + suffix
			if !strings.EqualFold(iniFile, rootPath) && strings.HasSuffix(iniFile, suffix) {
				results[desIniFile] = iniFile
				copyFile(iniFile, desIniFile)
			}
		}
		return nil
	})
	if err != nil {
		logger.Error("filepath.Walk() returned %v\n", err)
	}
	return err
}
开发者ID:dcmsy,项目名称:receive,代码行数:29,代码来源:receive_file.go

示例12: log

func log(i int) {
	logger.Debug("Debug>>>>>>>>>>>>>>>>>>>>>>" + strconv.Itoa(i))
	logger.Info("Info>>>>>>>>>>>>>>>>>>>>>>>>>" + strconv.Itoa(i))
	logger.Warn("Warn>>>>>>>>>>>>>>>>>>>>>>>>>" + strconv.Itoa(i))
	logger.Error("Error>>>>>>>>>>>>>>>>>>>>>>>>>" + strconv.Itoa(i))
	logger.Fatal("Fatal>>>>>>>>>>>>>>>>>>>>>>>>>" + strconv.Itoa(i))
}
开发者ID:EastQ,项目名称:go-logger,代码行数:7,代码来源:logger_test.go

示例13: Writer

/*将数据写入数据库*/
func Writer(dbIni *DBini, xmlInfo *XmlInfo) {
	logger.Info("***************************")
	logger.Info("Writer begin >>>>>>>>>>>>>>>>")
	if len(xmlInfo.Datas) == 0 {
		logger.Info("Writer end >>>>>>>>>>>>>>>>")
		return
	}
	stmt, err := dbIni.T_Db.db.Prepare(xmlInfo.InsertSQL)
	defer stmt.Close()
	if err != nil {
		logger.Error(err)
		return
	}
	colsLength := len(xmlInfo.Columns)
	c := 0
	arrIds := make([]string, len(xmlInfo.Datas))
	for _, v := range xmlInfo.Datas {
		scans := make([]interface{}, colsLength+2)
		for i := range xmlInfo.Columns {
			scans[i] = v[xmlInfo.Columns[i]]
		}
		scans[colsLength] = dbIni.SysId
		scans[colsLength+1] = dbIni.SysName
		arrIds[c] = v[xmlInfo.Columns[0]]
		stmt.Exec(scans...)
		c++
	}
	xmlInfo.Datas = nil
	xmlInfo.Ids = arrIds
	logger.Info("Writer end >>>>>>>>>>>>>>>>")
}
开发者ID:dcmsy,项目名称:datapost,代码行数:32,代码来源:datapost_pipe.go

示例14: DataLog

/**
 *记录数据日志
 *------ flag 1 成功 0 失败
 *------jobname dataname syscode sysname platform producer beginTime flag endTime errmsg
 */
func DataLog(dbIni *DBini, xmlInfo *XmlInfo, begtime string, err error) {
	stmt, err := dbIni.T_Db.db.Prepare(LogInsertSQL)
	defer stmt.Close()
	if err != nil {
		logger.Error(err)
		return
	}
	scans := make([]interface{}, 10)
	var flag string = "1"
	var msg string
	if err != nil {
		flag = "0"
		msg = string(err.Error())
	}
	scans[0] = xmlInfo.Remark
	scans[1] = xmlInfo.Remark
	scans[2] = dbIni.SysId
	scans[3] = dbIni.SysName
	scans[4] = dbIni.Platform
	scans[5] = dbIni.Company
	scans[6] = begtime
	scans[7] = flag
	scans[8] = NowTime()
	scans[9] = msg
	stmt.Exec(scans...)
}
开发者ID:dcmsy,项目名称:receive,代码行数:31,代码来源:receive_log.go

示例15: StdOrgSync

/*已匹配组织机构信息*/
func (sys *SysIni) StdOrgSync() {
	logger.Info("StdOrgSync start >>>>>>>>>>>>>>>>")
	defer func() {
		if err := recover(); err != nil {
			logger.Error("查询数据库失败", err)
		}
	}()
	for {
		dbIni := &sys.dbini
		t_pwd, _ := Base64Dec(dbIni.T_Password)
		dbIni.T_Db.Db_open(dbIni.T_DbType, dbIni.T_User, t_pwd, dbIni.T_Ip, dbIni.T_Port, dbIni.T_Dbname)
		defer dbIni.T_Db.db.Close()
		query, err := dbIni.T_Db.db.Query(MapQuerySQL) //查询数据库
		if err != nil {
			logger.Error("查询数据库失败", err.Error())
			panic(err)
			return
		}
		defer query.Close()
		for k, _ := range StdOrgMap {
			delete(StdOrgMap, k)
		}

		cols, _ := query.Columns()
		colsLength := len(cols)
		values := make([][]byte, colsLength)
		scans := make([]interface{}, colsLength)
		for i := range values {
			scans[i] = &values[i]
		}
		for query.Next() { //循环
			if err := query.Scan(scans...); err != nil {
				logger.Error(err)
				return
			}
			row := make(map[string]string) //每行数据
			for k, v := range values {
				key := cols[k]
				row[key] = string(v)
			}
			StdOrgMap[row["map_deptname"]] = row["std_deptid"]
		}
		time.Sleep(Time_interval * time.Second)
	}
}
开发者ID:dcmsy,项目名称:receive,代码行数:46,代码来源:receive_orgmatch.go


注:本文中的github.com/donnie4w/go-logger/logger.Error函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。