Настраивает, запускает и останавливает трассировку компонентов Windows PowerShell.

Синтаксис

Set-TraceSource [[-Option] {<None> | <Constructor> | <Dispose> | <Finalizer> | <Method> | <Property> | <Delegates> | <Events> | <Exception> | <Lock> | <Error> | <Errors> | <Warning> | <Verbose> | <WriteLine> | <Data> | <Scope> | <ExecutionFlow> | <Assert> | <All>}] [-Debugger] [-FilePath <string>] [-Force] [-ListenerOption {<None> | <LogicalOperationStack> | <DateTime> | <Timestamp> | <ProcessId> | <ThreadId> | <Callstack>}] [-PassThru] [-PSHost] [-Name] <string[]> [<CommonParameters>]

Set-TraceSource [-RemoveListener <string[]>] [-Name] <string[]> [<CommonParameters>]

Set-TraceSource [-RemoveFileListener <string[]>] [-Name] <string[]> [<CommonParameters>]

Описание

Командлет Set-TraceSource позволяет настраивать, запускать и останавливать трассировку компонента Windows PowerShell. Его можно использовать для указания того, какие компоненты следует трассировать, а также куда нужно отправить результат трассировки.

Параметры

-Debugger

Отправляет выходные данные трассировки в отладчик. Выходные данные можно просмотреть в любом отладчике, работающем в пользовательском режиме или режиме ядра, или в Microsoft Visual Studio. Данный параметр также задает прослушиватель трассировки по умолчанию.

Обязательно?

false

Позиция?

named

Значение по умолчанию

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-FilePath <string>

Записывает выходные данные трассировки в указанный файл. Данный параметр также выбирает прослушиватель трассировки файла. Если для запуска трассировки используется этот параметр, воспользуйтесь параметром RemoveFileListener, чтобы прекратить трассировку.

Обязательно?

false

Позиция?

named

Значение по умолчанию

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-Force

Позволяет командлету перезаписывать доступный только для чтения файл. Используется с параметром FilePath.

Обязательно?

false

Позиция?

named

Значение по умолчанию

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-ListenerOption <TraceOptions>

Добавляет необязательные данные в префикс каждого сообщения трассировки. Допустимые значения: "None", "LogicalOperationStack", "DateTime", "Timestamp", "ProcessId", "ThreadId" и "Callstack". По умолчанию используется "None".

Чтобы указать несколько параметров, разделите их запятыми без пробелов и заключите их в кавычки, например так: "ProcessID,ThreadID".

Обязательно?

false

Позиция?

named

Значение по умолчанию

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-Name <string[]>

Определяет, какие компоненты трассируются. Введите имя объекта трассировки для каждого компонента. Подстановочные знаки разрешены.

Обязательно?

true

Позиция?

1

Значение по умолчанию

Принимать входные данные из конвейера?

true (ByValue, ByPropertyName)

Принимать подстановочные знаки?

false

-Option <PSTraceSourceOptions>

Определяет тип трассируемых событий.

Список допустимых значений: "None", "Constructor", "Dispose", "Finalizer", "Method", "Property", "Delegates", "Events", "Exception", "Lock", "Error", "Errors", "Warning", "Verbose", "WriteLine", "Data", "Scope", "ExecutionFlow", "Assert" и "All". По умолчанию используется "All".

Следующие значения являются комбинацией других значений:

-- ExecutionFlow: (Constructor, Dispose, Finalizer, Method, Delegates, Events и Scope)

-- Data: (Constructor, Dispose, Finalizer, Property, Verbose и WriteLine)

-- Errors: (Error и Exception).

Чтобы указать несколько параметров, разделите их запятыми без пробелов и заключите их в кавычки, например так: "Constructor,Dispose".

Обязательно?

false

Позиция?

2

Значение по умолчанию

Принимать входные данные из конвейера?

true (ByPropertyName)

Принимать подстановочные знаки?

false

-PassThru

Возвращает объект, представляющий сеанс трассировки. По умолчанию этот командлет не формирует никаких выходных данных.

Обязательно?

false

Позиция?

named

Значение по умолчанию

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-PSHost

Отправляет выходные данные трассировки в основное приложение Windows PowerShell. Данный параметр также задает прослушиватель трассировки PSHost.

Обязательно?

false

Позиция?

named

Значение по умолчанию

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-RemoveFileListener <string[]>

Прекращает трассировку, удаляя прослушиватель трассировки файла, связанный с указанным файлом. Введите путь и имя выходного файла трассировки.

Обязательно?

false

Позиция?

named

Значение по умолчанию

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-RemoveListener <string[]>

Прекращает трассировку, удаляя прослушиватель трассировки.

Используйте следующие значения с параметром RemoveListener.

--Чтобы удалить PSHost (консоль), введите "Host".

--Чтобы удалить отладчик, введите "Debug".

--Чтобы удалить все прослушиватели трассировки, введите "*".

Чтобы удалить прослушиватель трассировки файла, воспользуйтесь параметром RemoveFileListener.

Обязательно?

false

Позиция?

named

Значение по умолчанию

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

<CommonParameters>

Данный командлет поддерживает общие параметры -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer и -OutVariable. Дополнительные сведения см. в разделе about_Commonparameters.

Ввод и вывод

Входным типом является тип объектов, которые можно передавать командлету по конвейеру. Возвращаемым типом является тип объектов, возвращаемых командлетом.

Входные данные

System.String

Строку, содержащую имя, можно передать командлету Set-TraceSource по конвейеру.

Выходные данные

Нет или System.Management.Automation.PSTraceSource

Если задан параметр PassThru, командлет Set-TraceSource создает объект System.Management.Automation.PSTraceSource, представляющий сеанс трассировки. В противном случае этот командлет не формирует никаких выходных данных.

Примечания

Трассировка — это метод, используемый разработчиками для отладки и изменения программы. Во время трассировки программа формирует подробные сообщения о каждом шаге внутренней обработки.

Командлеты трассировки Windows PowerShell созданы для разработчиков Windows PowerShell, но доступны всем пользователям. Они позволяют отслеживать практически все аспекты функциональности Windows PowerShell.

"Источник трассировки" является частью каждого компонента Windows PowerShell, который управляет трассировкой и формирует сообщения трассировки для компонента. Чтобы выполнить трассировку компонента, нужно определить его источник трассировки.

"Прослушиватель трассировки" получает выходные данные трассировки и показывает их пользователю. Трассировочные данные можно отправить отладчику, работающему в пользовательском режиме или режиме ядра, на консоль, в файл или пользовательскому прослушивателю, производному от класса System.Diagnostics.TraceListener.

Чтобы начать трассировку, укажите с помощью параметра Name источник трассировки (трассируемый компонент), а с помощью параметров FilePath, Debugger или PSHost — прослушиватель (объект, которому будет передаваться вывод). Для определения типов трассируемых событий используйте параметр Options, а для конфигурирования вывода трассировки — параметр ListenerOptions.

Чтобы изменить конфигурацию трассировки, введите команду Set-TraceSource, запускающую трассировку. Оболочка Windows PowerShell обнаруживает, что источник трассировки уже трассируется. Она остановит трассировку, добавит новую конфигурацию и запустит или перезапустит трассировку.

Чтобы остановить трассировку, используйте параметр RemoveListener. Чтобы остановить трассировку, выполняемую с файлом-прослушивателем (трассировку, запущенную с помощью параметра -FilePath), используйте параметр RemoveFileListener. При удалении прослушивателя трассировка останавливается.

Чтобы узнать, какие компоненты можно трассировать, используйте командлет Get-TraceSource. Источники трассировки каждого модуля загружаются автоматически при использовании компонента и включаются в вывод командлета Get-TraceSource.

Пример 1

C:\PS>Set-TraceSource -Name Parameterbinding -Option ExecutionFlow -PSHost '
-ListenerOption "ProcessID,TimeStamp"

Описание
-----------
Эта команда запускает трассировку для компонента ParameterBinding оболочки Windows PowerShell. Параметр Name используется для указания источника трассировки, параметр Option — для выбора событий трассировки ExecutionFlow, а параметр PSHost — для выбора прослушивателя основного приложения Windows PowerShell, который отправляет вывод на консоль. Параметр ListenerOption добавляет в префикс сообщения трассировки значения "ProcessID" и "TimeStamp".






Пример 2

C:\PS>set-tracesource -name ParameterBinding -RemoveListener Host

Описание
-----------
Эта команда останавливает трассировку компонента ParameterBinding оболочки Windows PowerShell. Параметр Name в этой команде идентифицирует трассируемый компонент, а параметр RemoveListener — прослушиватель трассировки.






См. также