放在解决schemelogin到数据库

我正在考虑设置我们的服务器login到Mongo数据库而不是日志文件。 日志将全部在一台服务器上,可查询,并且总体上更容易pipe理。

我很想find一个解决scheme,允许我运行的所有不同的进程写入数据库而不是文件(或者可能是读取文件,传递日志和截断文件)。 如果我可以避免,我不想为每个过程find不同的解决scheme。

那么,有没有人知道这个问题的现有解决scheme?

你不清楚你想发送到MongoDB的日志(系统,networking,其他?),但是因为大多数东西都可以以某种方式被转储到系统日志中,所以这可能是最简单的方法。

syslog-ng支持直接logging到MongoDB,所以任何你进入系统日志的东西都可以很容易地使用这个解决scheme进入MongoDB。

对于其他潜在的解决scheme,看看fluentd ,当然还有其他的选项可以用sysloglogging数据库。

我用Kibana使用Logstash 。 从文件和系统日志获取日志以进入Logstash有多种方法。 它使用Elasticsearch作为主后端,但也可以注入到Mongodb中 。

如果你在这里通过集中式或独立式的教程进行工作,那么你将会有一个很好的开始。

如果你正在寻找的是一个插入式解决scheme,MongoDB不会有太大的帮助。 你需要提前计划你所需要的,以获得优势。 事实上,如果转储日志数据是您所需要的,那么查看RDBMS可能是有意义的,因为这将允许您启用压缩,而在某些情况下,如果使用不当,MongoDB在某些情况下会占用更多的磁盘空间并且需要比MySQL更多的RAM。 在这里查看MySQL和MongoDB之间的磁盘空间使用情况比较: http : //blog.trackerbird.com/content/mysql-vs-mongodb-disk-space-usage/