Как получить местоположение / имя файла журнала из Spring.Net Common Logging - PullRequest
1 голос
/ 10 января 2012

Я пытаюсь получить последнюю строку сообщения, вставленную в мой файл журнала (с помощью Spring.NET Common Logging). Мой первый шаг - извлечь имя файла, который немного сложнее, чем ожидалось, так как я не могу найти соответствующие свойства / приведение для этого.

Я нашел несколько статей о том, как извлечь имя файла с помощью программы чтения файлов log4net, но ничего, начиная с класса Spring.NET Common Logging.

После того, как я получил имя файла, я воспользуюсь средством чтения обратного файла, чтобы получить фамилию. Хотите знать, что думают люди о чтении файла, в то время как он потенциально записывается в Common Logging / log4net?

enter image description here

1 Ответ

1 голос
/ 10 января 2012

Вы должны быть в состоянии открыть файл для чтения, пока он еще открыт для записи инфраструктурой журналирования, но я немного беспокоюсь о ваших планах прочитать «последнюю» строку. Между моментом, когда вы обнаружите, что вам нужно открыть файл, и моментом, когда вам удастся открыть файл, чтобы прочитать его, кто-то еще может записать запись в файл журнала, что может затруднить вам получение нужной строки просто предполагая, что это «последняя» строка в журнале.

Правильно ли я полагаю, что это своего рода способ ответить на какое-либо условие ошибки, а затем получить коррелированные записи журнала, связанные с этой ошибкой? Если это так, я бы рекомендовал не собирать эту информацию из файла журнала, прочитав «последнюю» строку, и вместо этого рекомендую проанализировать файл в поисках правильной записи в журнале (например, по дате / времени или другой информации, а не последний ').

В противном случае, вы, вероятно, вернете нужную запись в журнал в упрощенных сценариях тестирования, но не в рабочей системе при какой-либо реальной параллельной нагрузке. Просто мои 2 цента здесь ...

...