Get Tracesource - PowerShell
Overview
The Get-TraceSource cmdlet retrieves trace sources registered in the current PowerShell session. Trace sources are used for tracing and debugging, and provide a way to track the execution of PowerShell scripts and commands.
Syntax
Get-TraceSource [-Name] <string[]> [-CommandType <string[]>] [-Module <string[]>] [-IncludeInactive] [[-PSJob] <JobObject>] [-UseServerSwitches] [-Format <string>] [-OutFile <string>] [-OutVariable <string>]
Options/Flags
- -Name 
<string[]>: Specifies the names of trace sources to retrieve. Supports wildcards. - -CommandType 
<string[]>: Filters trace sources by the command types they trace. - -Module 
<string[]>: Filters trace sources by the modules they belong to. Supports wildcards. - -IncludeInactive: Includes inactive trace sources in the results.
 - [-PSJob] 
<JobObject>: Runs the command in the specified background job. - -UseServerSwitches: Sends the switches to the remote server when connecting remotely.
 - **-Format 
**: Specifies the output format. Valid values include:Table,List, andDetailed`. - -OutFile 
` : Sends the command output to the specified file. - -OutVariable 
` : Stores the command output in the specified variable. 
Examples
Simple Example
Get-TraceSource
This command retrieves all registered trace sources in the current session.
Filter by Name
Get-TraceSource -Name Microsoft.PowerShell
This command retrieves trace sources whose names contain “Microsoft.PowerShell”.
Filter by CommandType
Get-TraceSource -CommandType Cmdlet
This command retrieves trace sources that trace cmdlet executions.
Common Issues
- Trace sources are not found: Ensure that the trace sources have been registered in the current session.
 - Inactive trace sources are not retrieved: Use the 
-IncludeInactiveswitch to include inactive trace sources in the results. 
Integration
Get-TraceSource can be used in conjunction with other PowerShell commands or tools for advanced debugging and analysis. For example, it can be combined with the Trace-Command cmdlet to enable tracing for specific commands or scripts.