我想创建一个监控脚本,向我发送有关慢查询的警报。
所以我想以编程方式获取配置文件数据。我想我可以通过连接到MongoDB来实现它(不确定)。
但如果我可以直接从bash脚本访问探查器,那会更好。这可能吗?
答案 0 :(得分:1)
Mongo控制台提供了一种可以嵌入bash脚本的脚本模式。有关详细信息和用法,请参阅以下页面: Scripting the MongoDB Shell
如果您想使用PHP并直接连接,PHP就在MongoDB支持的驱动程序列表中,并为您提供更好的界面,然后编写脚本mongo。有关详细信息,请参阅以下内容 MongoDB Drivers
答案 1 :(得分:1)
除了直接运行js文件或连接驱动程序外,您还可以使用curl / wget直接从bash查询mongodb。您只需要使用--rest
启动服务器mongod --rest
如果您的服务器侦听27017,则添加1000以获取http端口(在本例中为28017)。您获得的页面是管理页面。您可以在此处执行基本查询,例如:
$ curl -i http://localhost:28017/<dbName>/<collectionName>/
即
$ curl http://localhost:28001/test/foo/?filter_str=Hello
{
"offset" : 0,
"rows": [
{ "_id" : { "$oid" : "50ab8a10df015a6dd00a44a7" }, "str" : "Hello" } ,
{ "_id" : { "$oid" : "50ab8a14df015a6dd00a44a8" }, "str" : "Hello", "x" : 1 }
],
"total_rows" : 2 ,
"query" : { "str" : "Hello" } ,
"millis" : 0
}