首页 > 解决方案 > 动态识别日志中的错误频率

问题描述

我将从留下来开始,我不是开发人员。我的编码技能是初级的,所以如果这个问题已经在另一个地方得到回答而我错过了,我深表歉意。

我们的软件直接在客户机器上运行,生成并上传“错误”日志。目前,这些日志只是上传到我们服务器上的一个文件夹,每 30 分钟左右一次,服务会读取它们以获取客户 ID,并将它们移动到客户的帐户中。他们坐在那里,直到有人手动查看他们并决定他们是否意味着什么以及要做什么,如果有的话。

这对于追溯查看客户是否与其他客户有相同的问题非常有效。

我想做的是让读取客户 ID 日志的服务也使用某种模式分析来识别每个独特的错误,然后随着时间的推移记录频率。如每月1天、3天、5天、1周、2周等。

部分问题是客户机器上动态生成的错误日志。一些错误是我们在代码中预先编写的,但我们得到的许多错误来自第三方来源和集成。我们得到的许多错误并不是我们提前知道的。

一个很好的例子,戴尔改变了他们的一个系统工具,开始删除我们的几个文件;它产生了一个特定的错误。不是我们写的,但仍然足够具体,一旦我们确定它,我们就可以追踪它。

所以,在冗长的解释之后。有没有做这种分析的好方法?我们通常更喜欢尽可能多地使用 .net 框架。我看到的大多数结果都取决于寻找现有的模式,这并不是我想要的。

标签: .netdesign-patterns

解决方案


我也是这个编码方面的新手。我刚刚遇到了一个处理文本中单词频率的代码。我不确定这是否是问题所在,但这仍然是一个想法,对吗?:)

def count_errors(logs):
    result = {}
    for errors in logs:
        if errors not in result:
            result[errors] = 0
        result[errors] += 1
    return result

它给出了一个错误字典作为键和它们的出现次数作为值。

不过我也很好奇解决方案:)


推荐阅读