Я работаю над проектом, в котором мне нужно программно определить, находится ли устройство (например, банкомат или подобное устройство) в рабочем состоянии или не в рабочем состоянии. Устройство генерирует журналы, включающие записи об ошибках, и моя задача — проанализировать эти журналы для оценки состояния службы.
Вот контекст:
Входные данные:
Журналы содержат записи об ошибках с различными типами проблем (например, " Затор при транспортировке валюты», «Ошибка устройства чтения карт»).
Некоторые неисправности являются критическими (влияние на сервис), другие некритическими. Strong> (не влияет на обслуживание).
Текущий подход:< /p>
Я анализирую записи журнала и выявляю неисправности.
Если обнаруживается какая-либо неисправность, я в настоящее время классифицирую устройство как " Выведен из строя». Однако это неверно, поскольку некоторые неисправности не нарушают работу службы.
Желаемая логика< /strong>:
Различить критические неисправности (например, «Затор при транспортировке валюты») и некритические неисправности (например, «В принтере мало бумаги»).
Отмечайте устройство как Не обслуживается только при наличии критических неисправностей.
В противном случае отметьте его как В эксплуатации.
Язык программирования:
Я использую powershell для тестирования, но основной сервис находится на C#.
Что я пробовал:
Создал список критических ошибок.
Просмотрел записи журнала, чтобы сопоставить ошибки с критическим списком.
Проблемы:
Некоторые неисправности неоднозначны и могут потребовать пороговых значений. (например, повторяющиеся некритические неисправности в течение определенного периода времени также могут привести к нарушению обслуживания).
Я не уверен, как эффективно структурировать логику для этой оценки.
Вопрос: Как реализовать надежный метод программной оценки состояния службы? Существуют ли передовые методы классификации неисправностей и оценки состояния на основе журналов? Примеры записей журнала:
19/11/2024,15:24:59.097,TTUSP,FW,Currency transport jam
19/11/2024,15:22:59.061,TTUSP,CU,Printer low on paper
Ожидаемый результат:
[*]Если существует только «Затор при транспортировке валюты» → Не обслуживается.
[*]Если существует только сообщение «В принтере мало бумаги» → В эксплуатации.
Буду признателен за любые рекомендации и примеры кода!
Я работаю над проектом, в котором мне нужно программно определить, находится ли устройство (например, банкомат или подобное устройство) в рабочем состоянии или не в рабочем состоянии. Устройство генерирует журналы, включающие записи об ошибках, и моя задача — проанализировать эти журналы для оценки состояния службы. Вот контекст: [list][*][b]Входные данные[/b]: [list] Журналы содержат записи об ошибках с различными типами проблем (например, " Затор при транспортировке валюты», «Ошибка устройства чтения карт»). [*]Некоторые неисправности являются [b]критическими[/b] (влияние на сервис), другие [b]некритическими[/b]. Strong> (не влияет на обслуживание). [/list]
[*][b]Текущий подход[/b]:< /p> [list] Я анализирую записи журнала и выявляю неисправности. [*]Если обнаруживается какая-либо неисправность, я в настоящее время классифицирую устройство как " Выведен из строя». Однако это неверно, поскольку некоторые неисправности не нарушают работу службы. [/list]
[*][b]Желаемая логика< /strong>: [list] Различить критические неисправности[/b] (например, «Затор при транспортировке валюты») и [b]некритические неисправности [/b] (например, «В принтере мало бумаги»). [*]Отмечайте устройство как [b]Не обслуживается[/b] только при наличии критических неисправностей. [*]В противном случае отметьте его как [b]В эксплуатации[/b]. [/list]
[*][b]Язык программирования[/b]: [list] Я использую powershell для тестирования, но основной сервис находится на C#. [/list]
[*][b]Что я пробовал[/b]: [list] Создал список критических ошибок. [*]Просмотрел записи журнала, чтобы сопоставить ошибки с критическим списком. [/list]
[*][b]Проблемы[/b]: [list] Некоторые неисправности неоднозначны и могут потребовать пороговых значений. (например, повторяющиеся некритические неисправности в течение определенного периода времени также могут привести к нарушению обслуживания). [*]Я не уверен, как эффективно структурировать логику для этой оценки. [/list]
[/list] [b]Вопрос[/b]: Как реализовать надежный метод программной оценки состояния службы? Существуют ли передовые методы классификации неисправностей и оценки состояния на основе журналов? [b]Примеры записей журнала[/b]: [code]19/11/2024,15:24:59.097,TTUSP,FW,Currency transport jam 19/11/2024,15:22:59.061,TTUSP,CU,Printer low on paper [/code] [b]Ожидаемый результат[/b]:
[*]Если существует только «Затор при транспортировке валюты» → [b]Не обслуживается[/b]. [*]Если существует только сообщение «В принтере мало бумаги» → [b]В эксплуатации[/b].
Буду признателен за любые рекомендации и примеры кода!