Отслеживание исходящих писем из любого приложения .NET

У меня есть сервер Windows 2003 с примерно 15 службами Windows С#, отправляющими электронные письма случайным образом на основе некоторой сложной бизнес-логики. Очень сложно выяснить, какое приложение кому и в какое время отправляет электронные письма.

Для получения дополнительной информации на сервере установлен клиент McAfee и настроен администратором, какое приложение может отправлять электронные письма.

Есть ли способ узнать, какое приложение кому отправляет электронную почту?


person Atul K    schedule 30.05.2014    source источник
comment
У меня есть несколько приложений, которые отправляют оповещения по электронной почте и сохраняют электронные письма от каждого приложения в отдельной таблице базы данных. Это правдоподобно для вас?   -  person eddie_cat    schedule 30.05.2014
comment
Извините, я не понял вашего вопроса.   -  person Atul K    schedule 30.05.2014
comment
Если вы сохраните информацию об электронной почте каждого приложения (идентификаторы и т. д.) в отдельной таблице базы данных, вы будете знать, кто что отправил.   -  person eddie_cat    schedule 30.05.2014
comment
Нет, проблема в том, что в базе данных тысячи идентификаторов электронной почты, и невозможно отследить, кто получает электронные письма.   -  person Atul K    schedule 30.05.2014
comment
Почему вы храните идентификаторы электронной почты? Что вы храните вместе с ними? Когда они сохраняются?   -  person eddie_cat    schedule 30.05.2014
comment
Мы не храним никаких идентификаторов электронной почты, они хранятся в базе данных сотрудников и выходят за рамки любого приложения.   -  person Atul K    schedule 30.05.2014
comment
Большинство идентификаторов электронной почты хранятся в базе данных. пожалуйста, отредактируйте свой вопрос, чтобы быть более ясным. Возможно, вам следует начать хранить записи об отправленных вами электронных письмах в базе данных, если вам нужно их отслеживать.   -  person eddie_cat    schedule 30.05.2014


Ответы (1)


Если вы не можете хранить необходимую информацию в базе данных, создайте файлы журналов, соответствующие вашим потребностям. Я уверен, что вам не нужен код, чтобы рассказать вам, как ваши службы C# генерируют файлы журналов, которые содержат всю соответствующую информацию (дата/время, имя службы, адрес электронной почты, тип/идентификатор или какой-либо идентификатор содержимого). Затем вы можете использовать журналы для создания любых отчетов, которые вам нужны, а при сборке с конфигурацией вы можете отключить ведение журнала, как только у вас будет достаточно информации для ответа на вопрос.

person Lemiarty    schedule 30.05.2014
comment
Проблема в том, что я не могу вносить изменения во все приложения, так как это большая задача и выходит за рамки. Я ожидаю, что это сделает профилировщик... Я полагаю, что McAfee также делает это, но не знаю, как отслеживать все исходящие электронные письма из приложения/машины с помощью сервера McAfee. - person Atul K; 02.06.2014