0
我想写一个帮助函数,将允许我的仪表板检查是否MongoDB运行不。根据结果,它可能会在可视化仪表板上警告管理员。我通读了反应式mongo文档here,到目前为止我有以下功能,但不幸的是它不工作。如何检查MongoDB是否启动并运行使用reactivemongo
import reactivemongo.api.MongoDriver
def isMongoUp(host: String): Boolean = {
var connected = false
val driver = new MongoDriver()
val connection = driver.connection(List(host))
val db = connection("myDB")
db.map {
case Failure(e) => connected = false
case Success(result) => connected = true
}
}
更新1:
def isMongoUp(host: String): Boolean = {
var connected = false
val driver = new MongoDriver()
val connection = driver.connection(List(host))
val db = connection.database("myDB")
db.map {
case sth:DefaultDB => connected = true
case _ => connected = false
}
connected
}
val result = isMongoUp("localhost")
result
使用'connection.database(..)',而不是'连接(..)',这将等到DB解决(根据故障切换策略)。 – cchantep
@cchantep:我做了这些改变,但是我的结果总是返回false。请参阅我的更新1 – summerNight
您无法在'.database'结果上匹配,这是未来。 – cchantep