代码拉取完成,页面将自动刷新
package clickhouse
import (
"context"
"fmt"
"os"
"github.com/ClickHouse/clickhouse-go/v2"
)
// public API
func NewClickHouseConn() (clickhouse.Conn, error) {
host := os.Getenv("CLICKHOUSE_HOST")
port := os.Getenv("CLICKHOUSE_PORT")
return clickhouse.Open(&clickhouse.Options{
Addr: []string{fmt.Sprintf("%v:%v", host, port)},
Auth: clickhouse.Auth{
Database: os.Getenv("CLICKHOUSE_DATABASE"),
Username: os.Getenv("CLICKHOUSE_USERNAME"),
Password: os.Getenv("CLICKHOUSE_PASSWORD"),
},
})
}
func GetClientDbTbl() string {
return fmt.Sprintf("%v.%v", os.Getenv("CLICKHOUSE_DATABASE"), os.Getenv("CLICKHOUSE_CLIENT_LOG_TABLE"))
}
func GetSystemDbTbl() string {
return fmt.Sprintf("%v.%v", os.Getenv("CLICKHOUSE_DATABASE"), os.Getenv("CLICKHOUSE_SYSTEM_LOG_TABLE"))
}
func GetSwgReportDbTbl() string {
return fmt.Sprintf("%v.%v", os.Getenv("CLICKHOUSE_DATABASE"), os.Getenv("CLICKHOUSE_SWG_URL_COLLECT_TABLE"))
}
func GetSwgCfsCategoryDbTbl() string {
return fmt.Sprintf("%v.%v", os.Getenv("CLICKHOUSE_DATABASE"), os.Getenv("CLICKHOUSE_CFS_CATEGORY_TABLE"))
}
func GetSwgCfsDomainsDbTbl() string {
return fmt.Sprintf("%v.%v", os.Getenv("CLICKHOUSE_DATABASE"), os.Getenv("CLICKHOUSE_CFS_DOMAINS_TABLE"))
}
func GetSwgAppCtrlAppActivityDbTbl() string {
return fmt.Sprintf("%v.%v", os.Getenv("CLICKHOUSE_DATABASE"), os.Getenv("CLICKHOUSE_APP_CTRL_APP_ACTIVITY_TABLE"))
}
func GetSwgAppCtrlAppInfoDbTbl() string {
return fmt.Sprintf("%v.%v", os.Getenv("CLICKHOUSE_DATABASE"), os.Getenv("CLICKHOUSE_APP_CTRL_APP_INFO_TABLE"))
}
func GetSwgAppCtrlAppActivityInfoDbTbl() string {
return fmt.Sprintf("%v.%v", os.Getenv("CLICKHOUSE_DATABASE"), os.Getenv("CLICKHOUSE_APP_CTRL_APP_ACTIVITY_INFO_TABLE"))
}
func ClickHouseCount(dql string, asName string) (ret uint64, err error) {
conn, err := NewClickHouseConn()
if err != nil {
return 0, err
}
var countResult struct {
LogNum uint64 `ch:"logNum"`
}
// countResult := make([]CountResult, 0)
ctx := context.TODO()
if err = conn.QueryRow(ctx, dql).ScanStruct(&countResult); err != nil {
return 0, err
}
ret = countResult.LogNum
return ret, nil
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。