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

Good remote application logging/monitoring software

本文关键字:日志 监控 软件 应用程序      更新时间:2023-10-16

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

我的老板让我找到或建立一个系统,将记录使用我们的kiosk装置。我们使用java、原生c++、c#、python以及Unity等工具来构建kiosk。我们看到与我们合作的另一家公司使用了一个简单的系统,在这个系统中,带有数据的post call被记录在一个远程站点上,以便稍后进行检查。系统允许应用程序程序员决定消息的内容,并能够根据程序员的意愿将其分配到调试或释放。

日志输出的一个示例可能是:

[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不兼容。我可能弄错了:)。

有谁知道这样的系统工作,或者将适合从这样不同的语言记录?如果没有,我可以很容易地写自己的。我只是不想支持它:)

问候,史蒂夫。

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

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

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

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

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

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

使用log4j/log4net与套接字附加程序或通过rsyslog远程日志。

您可能对web信标之类的东西感兴趣。我知道这并不是你想要的,但是你应该像网页开发者那样考虑它:知道用户在做什么是很好的。