This wait type is for SQL Server traces (Profiler, default trace, etc.) that someone may be running. You can disable the default trace if it is not needed but I generally do not see any issue with this trace running.
You may have someone else running a trace that is causing a high amount of overhead. You can view what traces are running on your instance by executing:
SELECT *
FROM sys.traces
As well if you find any other than the default trace I use this query to find out what events the trace(s) are capturing:
-- Gets all Events for a given trace id
SELECT a.[EventID], b.[name] AS [Even Name], a.[ColumnID]
,c.[name] AS [Column Name], d.[name] AS [Category]
FROM fn_trace_geteventinfo(1) AS a
INNER JOIN sys.trace_events AS b ON a.EventID = b.Trace_Event_ID
INNER JOIN sys.trace_columns AS c ON a.ColumnID = c.Trace_Column_ID
INNER JOIN sys.trace_categories AS d ON b.Category_ID = d.Category_ID
ORDER BY a.[EventID], a.[ColumnID]
-- This will return any filter conditions
SELECT a.[ColumnID], c.[name], a.[value], c.*
FROM fn_trace_getfilterinfo( 2 ) AS a
INNER JOIN sys.trace_columns AS c ON a.ColumnID = c.Trace_Column_ID
ORDER BY a.[ColumnID]
If you find any running that are capturing high overhead events [e.g. show plan] you can simply stop them with sp_trace_setstatus.
Shawn Melton
Twitter: @wsmelton
Blog: wsmelton.github.com
Github: wsmelton