mirror of
				https://github.com/TeaOSLab/EdgeAPI.git
				synced 2025-11-04 16:00:24 +08:00 
			
		
		
		
	DNS访问日志创建表已经存在时不提示错误
This commit is contained in:
		@@ -164,8 +164,8 @@ func findNSAccessLogTable(db *dbs.DB, day string, force bool) (string, error) {
 | 
			
		||||
		return "", err
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	tableName := "edgeNSAccessLogs_" + day
 | 
			
		||||
	cacheKey := tableName + "_" + fmt.Sprintf("%d", crc32.ChecksumIEEE([]byte(config.Dsn)))
 | 
			
		||||
	var tableName = "edgeNSAccessLogs_" + day
 | 
			
		||||
	var cacheKey = tableName + "_" + fmt.Sprintf("%d", crc32.ChecksumIEEE([]byte(config.Dsn)))
 | 
			
		||||
 | 
			
		||||
	if !force {
 | 
			
		||||
		accessLogLocker.RLock()
 | 
			
		||||
@@ -191,6 +191,14 @@ func findNSAccessLogTable(db *dbs.DB, day string, force bool) (string, error) {
 | 
			
		||||
	// 创建表格
 | 
			
		||||
	_, err = db.Exec("CREATE TABLE `" + tableName + "` (\n  `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT 'ID',\n  `nodeId` int(11) unsigned DEFAULT '0' COMMENT '节点ID',\n  `domainId` int(11) unsigned DEFAULT '0' COMMENT '域名ID',\n  `recordId` int(11) unsigned DEFAULT '0' COMMENT '记录ID',\n  `content` json DEFAULT NULL COMMENT '访问数据',\n  `requestId` varchar(128) DEFAULT NULL COMMENT '请求ID',\n  `createdAt` bigint(11) unsigned DEFAULT '0' COMMENT '创建时间',\n  `remoteAddr` varchar(128) DEFAULT NULL COMMENT 'IP',\n  PRIMARY KEY (`id`),\n  KEY `nodeId` (`nodeId`),\n  KEY `domainId` (`domainId`),\n  KEY `recordId` (`recordId`),\n  KEY `requestId` (`requestId`),\n  KEY `remoteAddr` (`remoteAddr`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='域名服务访问日志';")
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		if CheckSQLErrCode(err, 1050) { // Error 1050: Table 'xxx' already exists
 | 
			
		||||
			accessLogLocker.Lock()
 | 
			
		||||
			nsAccessLogTableMapping[cacheKey] = true
 | 
			
		||||
			accessLogLocker.Unlock()
 | 
			
		||||
 | 
			
		||||
			return tableName, nil
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		return tableName, err
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user