Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
sp_trace_setstatus (Transact-SQL)

sp_trace_setstatus (Transact-SQL)

Modifies the current state of the specified trace.

Topic link iconTransact-SQL Syntax Conventions

sp_trace_setstatus [ @traceid = ] trace_id, [ @status= ] status

[ @traceid= ] trace_id

Is the ID of the trace to be modified. trace_id is int, with no default. The user employs this trace_id value to identify, modify, and control the trace. For information about retrieving the trace_id, see fn_trace_getinfo (Transact-SQL).

[ @status= ] status

Specifies the action to implement on the trace. status is int, with no default.

The following table lists the status that may be specified.




Stops the specified trace.


Starts the specified trace.


Closes the specified trace and deletes its definition from the server.


A trace must be stopped first before it can be closed. A trace must be stopped and closed first before it can be viewed.

The following table describes the code values that users may get following completion of the stored procedure.

Return code



No error.


Unknown error.


The specified Status is not valid.


The specified Trace Handle is not valid.


Out of memory. Returned when there is not enough memory to perform the specified action.

If the trace is already in the state specified, SQL Server will return 0.

Parameters of all SQL Trace stored procedures (sp_trace_xx) are strictly typed. If these parameters are not called with the correct input parameter data types, as specified in the argument description, the stored procedure will return an error.

For an example of using trace stored procedures, see How to: Create a Trace (Transact-SQL).

User must have ALTER TRACE permission.

Community Additions

© 2015 Microsoft