Przy użyciu System.Diagnostics
prześledzenie, czy istnieje znacząca (mierzalny) Wpływ na wydajność nie usuwając „domyślny” ślad słuchacza aplikacji ASP.NET produkcyjnej uwalnianiu trybie ze stałą TRACE
zdefiniowane w czasie kompilacji, ale bez załączonego debuggera w czasie wykonywania?Wydajność DefaultTraceListener
Aby wyjaśnić, pytanie dotyczy dodatkowego wpływu "domyślnego" odbiornika śledzenia na aplikację korzystającą z innych detektorów śledzenia, a nie na temat alternatyw dla śledzenia System.Diagnostics.
Czy są jakieś miary wpływu domyślnego detektora śledzenia, gdy nie ma dołączonego debuggera? Czy są jakieś benchmarki już zrobione wpływu na produkcję pomijając element „usunąć” z kodem takich jak to:
<configuration>
<system.diagnostics>
<trace autoflush="false" indentsize="4">
<listeners>
<remove name="Default" />
<add name="myListener" type="System.Diagnostics.TextWriterTraceListener" initializeData="c:\myListener.log" />
</listeners>
</trace>
</system.diagnostics>
</configuration>
To pytanie jest różna od .NET Tracing: What is the “Default” listener? w tym sensie, że to drugie pytanie koncentrowała się na wpływ domyślnego detektora podczas działania w Visual Studio i aktualizowanie interfejsu debugowania, a to pytanie koncentruje się na kodzie wydania w środowisku produkcyjnym.
Więc zmierzyłeś to na swojej konkretnej maszynie i systemie operacyjnym? Czego się dowiedziałeś? Nie próbowałaś tego spróbować? –
Ponieważ powszechną praktyką jest zalecanie usunięcia tej linii, szukam osób, które pomogą mi znaleźć opublikowane pomiary, na których oparte jest zalecenie. Zakładam, że istnieje już opublikowany test porównawczy i moje własne myślenie niewiele wniósłoby do dyskusji. –
Z tym pytaniem jest wiele problemów. Nie tylko poprosiłeś o to tak źle, że otrzymałeś kompletnie złą odpowiedź, nie podałeś też żadnego uzasadnienia, dlaczego nie chcesz przestrzegać zalecanej praktyki. A ty czekałeś 4 godziny na coś, co mógłbyś przetestować w ciągu 10 minut, uzyskując * niezawodny * wynik. Nikt nie powie ci, jak długo OutputDebugString przejmuje twój komputer. –