We have a SQL 2000 server, which has a variety of jobs that work at different times of the day or even on different days of the month. Usually we use the SQL profiler to run traces for very short periods of time to troubleshoot performance issues, but in this case it really will not give me a good overall picture of the types of queries that are performed against the database by the course of the day, week or month.
How can I minimize the overhead of long-term SQL trace performance? I already know:
- Perform server-side tracing (sp_ create_trace) instead of using the SQL Profiler user interface.
- Tracking the file, not the database table (which will add additional service data to the database server).
My question is really about filters. If I add a filter only to journal requests that run longer than a certain duration or read, you still need to check all activity on the server to decide whether to register it, right? Thus, even with this filter, does tracing create an unacceptable level of overhead for a server that is already on the verge of unacceptable performance?
sql-server sql-server-2000 sqlprofiler
Bradc
source share