Связывание журналирования от двух или более процессов - PullRequest
0 голосов
/ 20 февраля 2009

У меня есть два процесса, которые у меня запущены и я выполняю вход в систему. Один - клиент, другой - веб-сервис. Я хочу настроить центральную систему журналов, где я могу отслеживать журналы и взаимодействия между процессами - например, я хочу иметь возможность связывать вызовы, сделанные от клиента, к веб-службе, когда я просматриваю журналы. Я предполагаю, что это означает, что каким-то образом processid клиентского процесса должен перетекать в веб-сервис, чтобы его можно было отслеживать?

Возможно ли это с текущими средами ведения журналов, такими как Enterprise Library или Log4Net? Есть ли кто-нибудь, кто изучал что-то подобное?

Любая помощь будет оценена.

Если у вас есть более определяющий термин для этого, пожалуйста, не стесняйтесь изменить название вопроса или тегов.

Ответы [ 2 ]

0 голосов
/ 21 февраля 2009

Для сбора и хранения данных регистрации в централизованном месте обычно требуется какой-либо сервер регистрации или приложение-получатель (особенно, если вы хотите одновременно выполнять запись в один файл журнала и при этом поддерживать хорошую производительность). Возможно, вы захотите попробовать наш инструмент ведения журнала SmartInspect , так как он поставляется с сервером регистрации, который может получать данные регистрации от нескольких процессов / машин. SmartInspect также поставляется с приложением Viewer для анализа и фильтрации данных журналов.

0 голосов
/ 20 февраля 2009

Вы можете легко это сделать с помощью блока приложения ведения журнала .Net Enterprise Library. Это позволит вам войти в одну и ту же базу данных / таблицу из обоих процессов.

Что касается соединения одного процесса с другим, да - вам нужно будет создать какой-то уникальный идентификатор в вызывающем процессе и передать его вызываемому процессу. Затем вы можете записать это значение от вызывающего абонента непосредственно перед выполнением вызова и зарегистрировать его от вызывающего абонента в самом начале вызова.

Я бы рекомендовал использовать отдельный уровень ведения журнала для межпроцессного взаимодействия. Я часто регистрировал такие сообщения как Уведомления. Это позволяет легко отфильтровывать их от остальных сообщений в журнале.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...