GoCQL cluster.CreateSession()将错误输出到stdout

时间:2018-12-11 02:51:54

标签: gocql

在此代码中

func InitDB(keyspace string) (*gocql.Session, error) {
//**********************************************************************************
// connect to the Cassandra cluster
//**********************************************************************************
cluster := gocql.NewCluster("127.0.0.1")
cluster.Keyspace = keyspace
cluster.Consistency = gocql.Quorum
cqlSession, err := cluster.CreateSession()
if err != nil {
    log.Println("CreateSession failed:", err)
    return nil, errors.New("Can't connect to DB")
}
// fmt.Println("Cassandra opened")

return cqlSession, nil

}

如果键空间不存在,gocql将两个日志消息打印到stdout:

2018/12/10 18:24:42 error: failed to connect to 127.0.0.1:9042 due to error: Keyspace 'qwerty' does not exist
2018/12/10 18:24:42 error: failed to connect to 127.0.0.1:9042 due to error: Keyspace 'qwerty' does not exist

这些行是由

生成的
Logger.Printf("error: failed to connect to %s due to error: %v", pool.addr, err)
connectionpool.go中的

有没有一种方法可以消除这些消息,而无需从gocql代码中进行编辑?他们混淆了我们的CI测试服务器。

我们在单元测试中编码了一个明确的CreateSession故障,因此请确保上游代码可以正确处理连接故障。

0 个答案:

没有答案