良好的远程应用程序日志/监控软件

时间:2011-11-28 10:15:00

标签: c# java c++ python logging

我确信这已经完成了,但谷歌没有帮助我 - 我已经淹没了类似但不同问题的答案:

我的老板让我找到或建立一个记录我们自助服务终端设备使用情况的系统。我们使用java,native c ++,c#,python和使用Unity之类的东西构建信息亭。我们看到了另一家公司,我们使用一个简单的系统,在远程站点上记录了带数据的邮件调用,以便稍后进行检查。系统允许应用程序员决定消息的内容,并能够根据程序员的意愿将其分配给调试或发布。

日志输出的示例可能是:

[Debug] 28-11-2011 10:10:20 Kiosk1: Pulse
[Debug] 28-11-2011 10:10:25 Kiosk1: Button pressed
[Debug] 28-11-2011 10:10:45 Kiosk1: Widget used
[Debug] 28-11-2011 10:11:20 Kiosk1: Pulse

我查看了log4net / log4j,但这似乎与本机c ++或python不兼容。我可能错在那里:)。

是否有人知道这样的系统,或者是否适合从这些不同的语言中记录?如果没有,我可以轻松地写自己的。我只是不想支持它:)

此致 史蒂夫

6 个答案:

答案 0 :(得分:2)

我不确定,但我认为你所寻找的是SPLUNK。这可以解析几乎每个日志并以统一的方式显示它。它可以监听端口,通过轮询读取日志文件,并在任何时间点解析和索引任何内容。

您可以使用它来设置您自己的多语言日志记录服务器/系统。我们一直在使用它,它在我们的分布式环境中无缝地工作。

答案 1 :(得分:1)

虽然编写一个专门的日志记录后端来处理本地和网络的日志记录是非常可能的,但我建议不要这样做。原因是网络延迟可能会很长,因此它会停止您的应用程序,或者如果使用其他进程/线程来执行实际网络推送,则可以将日志消息排队等待。

一个更简单的解决方案是使用计划每天运行一次或几次的小脚本,并将日志文件复制到远程位置。

答案 2 :(得分:1)

对于C ++,我强烈推荐Poco logging。它允许您使用例如指定格式和日志级别/输出。属性文件。

答案 3 :(得分:0)

python中包含的python logging library与log4net非常相似,所以如果你习惯了那些,那么另一个很容易理解,但它们不共享代码(据我所知)

答案 4 :(得分:0)

将log4j / log4net与套接字appender一起使用,或通过rsyslog远程登录。

答案 5 :(得分:0)

您可能对web beacons之类的内容感兴趣。我知道这不是你所要求的,但是你应该考虑它与Web开发人员做的一样:知道用户在做什么是很好的。