Я ищу лучшие практики для реализации TraceListener, которые будут записывать журналы внутри SQL-сервера из приложения ASP.NET.Реализация пользовательского TraceListener в .NET
Каковы вещи, которые следует учитывать при внедрении такого класса, чтобы избежать снижения производительности?
Будут ли хранимые процедуры выполняться быстрее, чем простые инструкции ADO.NET INSERT?
Мне очень нравится идея записи журналов во временный буфер памяти и сброс его в базу данных в какой-то более поздней точке из фонового потока, но какая структура данных наиболее подходит для такого сценария? Queue<T> кажется хорошим кандидатом, но я не могу добавить в него элементы без какого-либо механизма синхронизации.
Я нашел через Интернет article, который показывает пример пользовательского TraceListener, который пишет на SQL-сервер, но перед тем, как поместить его в производственный код, я хотел бы получить еще несколько отзывов.
Хотелось бы знать это также! – Cerebrus
Мне не удалось попасть в связанную статью, я думаю, что [эта статья] (http://www.codeguru.com/csharp/.net/article.php/c19405/Tracing-in-NET-and-Implementing- Your-Own-Trace-Listeners.htm) - это тот, о котором вы говорили. –