Aracılığıyla paylaş


Trace-Command

Belirtilen ifadenin veya komutun bir izlemesini yapılandırıp başlatır.

Syntax

expressionSet (Varsayılan)

Trace-Command
    [-Name] <String[]>
    [[-Option] <PSTraceSourceOptions>]
    [-Expression] <ScriptBlock>
    [-InputObject <PSObject>]
    [-ListenerOption <TraceOptions>]
    [-FilePath <String>]
    [-Force]
    [-Debugger]
    [-PSHost]
    [<CommonParameters>]

commandSet

Trace-Command
    [-Name] <String[]>
    [[-Option] <PSTraceSourceOptions>]
    [-Command] <String>
    [-InputObject <PSObject>]
    [-ArgumentList <Object[]>]
    [-ListenerOption <TraceOptions>]
    [-FilePath <String>]
    [-Force]
    [-Debugger]
    [-PSHost]
    [<CommonParameters>]

Description

Trace-Command cmdlet'i, belirtilen ifadenin veya komutun bir izlemesini yapılandırıp başlatır. Yalnızca belirtilen komut için geçerli olması dışında Set-TraceSource gibi çalışır.

Örnekler

Örnek 1: Meta veri işlemeyi, parametre bağlamayı ve ifadeyi izleme

Bu örnek meta veri işleme, parametre bağlama ve cmdlet oluşturma ve Get-Process Notepad ifadesinin yok edilmesine ilişkin bir izleme başlatır.

Trace-Command -Name Metadata, ParameterBinding, Cmdlet -Expression {Get-Process Notepad} -PSHost

İzleme kaynaklarını belirtmek için Name parametresini, komutu belirtmek için İfade parametresini ve çıkışı konsola göndermek için PSHost parametresini kullanır. herhangi bir izleme seçeneği veya dinleyici seçeneği belirtmediğinden, komut varsayılan değerleri kullanır:

  • İzleme seçenekleri için tümü
  • Dinleyici seçenekleri için yok

Örnek 2: ParameterBinding işlemlerinin eylemlerini izleme

Bu örnek, işlem hattından giriş alan bir ifade işlerken PowerShell'in Get-Alias işlemlerinin eylemlerini izler.

$A = "i*"
Trace-Command ParameterBinding {Get-Alias $input} -PSHost -InputObject $A

Trace-Command InputObject parametresi, izleme sırasında işlenen ifadeye bir nesne geçirir.

İlk komut, i* dizesini $A değişkeninde depolar. İkinci komut, ParameterBinding izleme kaynağıyla Trace-Command cmdlet'ini kullanır. PSHost parametresi çıkışı konsola gönderir.

İşlenen ifade, Get-Alias $input değişkeninin $input parametresiyle ilişkilendirildiği . InputObject parametresi $A değişkenini ifadeye geçirir. Sonuç olarak, izleme sırasında işlenen komut Get-Alias -InputObject $A" or "$A | Get-Alias.

Parametreler

-ArgumentList

İzlenen komut için parametreleri ve parametre değerlerini belirtir. ArgumentList diğer adı Args. Bu özellik, dinamik parametrelerin hatalarını ayıklamak için kullanışlıdır.

ArgumentList'in davranışı hakkında daha fazla bilgi için about_Splattingbölümüne bakın.

Parametre özellikleri

Tür:

Object[]

Default value:None
Joker karakterleri destekler:False
DontShow:False
Diğer adlar:Argümanlar

Parametre kümeleri

commandSet
Position:Named
Zorunlu:False
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

-Command

İzleme sırasında işlenen bir komutu belirtir.

Bu parametreyi kullandığınızda, PowerShell komutu bir işlem hattında işlendiği gibi işler. Örneğin, gelen her nesne için komut bulma işlemi yinelenemez.

Parametre özellikleri

Tür:String
Default value:None
Joker karakterleri destekler:False
DontShow:False

Parametre kümeleri

commandSet
Position:1
Zorunlu:True
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

-Debugger

Cmdlet'in izleme çıkışını hata ayıklayıcıya gönderdiğini gösterir. Çıkışı herhangi bir kullanıcı modunda veya çekirdek modu hata ayıklayıcısında veya Visual Studio'da görüntüleyebilirsiniz. Bu parametre ayrıca varsayılan izleme dinleyicisini seçer.

Parametre özellikleri

Tür:SwitchParameter
Default value:None
Joker karakterleri destekler:False
DontShow:False

Parametre kümeleri

(All)
Position:Named
Zorunlu:False
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

-Expression

İzleme sırasında işlenen ifadeyi belirtir. İfadeyi ayraç içine alın ({}).

Parametre özellikleri

Tür:ScriptBlock
Default value:None
Joker karakterleri destekler:False
DontShow:False

Parametre kümeleri

expressionSet
Position:1
Zorunlu:True
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

-FilePath

cmdlet'in izleme çıkışını gönderdiği bir dosyayı belirtir. Bu parametre ayrıca dosya izleme dinleyicisini seçer.

Parametre özellikleri

Tür:String
Default value:None
Joker karakterleri destekler:False
DontShow:False
Diğer adlar:PSPath

Parametre kümeleri

(All)
Position:Named
Zorunlu:False
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

-Force

Komutu, kullanıcı onayı istemeden çalışmaya zorlar. FilePath parametresiyle kullanılır. cmdletForce parametresini kullanarak bile güvenlik kısıtlamalarını geçersiz kılamaz.

Parametre özellikleri

Tür:SwitchParameter
Default value:None
Joker karakterleri destekler:False
DontShow:False

Parametre kümeleri

(All)
Position:Named
Zorunlu:False
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

-InputObject

İzleme sırasında işlenen ifadenin girişini belirtir. İfadenin kabul ettiği girişi temsil eden bir değişken girebilir veya bir nesneyi işlem hattından geçirebilirsiniz.

Parametre özellikleri

Tür:PSObject
Default value:None
Joker karakterleri destekler:False
DontShow:False

Parametre kümeleri

(All)
Position:Named
Zorunlu:False
İşlem hattından gelen değer:True
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

-ListenerOption

Çıktıdaki her izleme iletisinin ön ekine isteğe bağlı verileri belirtir. Bu parametre için kabul edilebilir değerler şunlardır:

  • None
  • LogicalOperationStack
  • DateTime
  • Timestamp
  • ProcessId
  • ThreadId
  • Callstack

None varsayılan değerdir.

Bu değerler, bayrak tabanlı bir numaralandırma olarak tanımlanır. Bu parametreyi kullanarak birden çok bayrak ayarlamak için birden çok değeri birlikte birleştirebilirsiniz. Değerler, ListenerOption parametresine bir değer dizisi veya bu değerlerin virgülle ayrılmış dizesi olarak geçirilebilir. cmdlet'i bir ikili OR işlemi kullanarak değerleri birleştirir. Değerleri dizi olarak geçirmek en basit seçenektir ve değerler üzerinde sekme tamamlama özelliğini kullanmanıza da olanak tanır.

Parametre özellikleri

Tür:TraceOptions
Default value:None
Kabul edilen değerler:None, LogicalOperationStack, DateTime, Timestamp, ProcessId, ThreadId, Callstack
Joker karakterleri destekler:False
DontShow:False

Parametre kümeleri

(All)
Position:Named
Zorunlu:False
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

-Name

İzlenen bir PowerShell bileşenleri dizisini belirtir. Her bileşenin izleme kaynağının adını girin. Joker karakterlere izin verilir. Bilgisayarınızda izleme kaynaklarını bulmak için Get-TraceSourceyazın.

Parametre özellikleri

Tür:

String[]

Default value:None
Joker karakterleri destekler:False
DontShow:False

Parametre kümeleri

(All)
Position:0
Zorunlu:True
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

-Option

İzlenen olayların türünü belirler. Bu parametre için kabul edilebilir değerler şunlardır:

  • None
  • Constructor
  • Dispose
  • Finalizer
  • Method
  • Property
  • Delegates
  • Events
  • Exception
  • Lock
  • Error
  • Errors
  • Warning
  • Verbose
  • WriteLine
  • Data
  • Scope
  • ExecutionFlow
  • Assert
  • All

All varsayılan değerdir.

Aşağıdaki değerler diğer değerlerin birleşimleridir:

  • ExecutionFlow: Constructor, Dispose, Finalizer, Method, Delegates, Events, Scope
  • Data: Constructor, Dispose, Finalizer, Property, Verbose, WriteLine
  • Errors: Error, Exception

Bu değerler, bayrak tabanlı bir numaralandırma olarak tanımlanır. Bu parametreyi kullanarak birden çok bayrak ayarlamak için birden çok değeri birlikte birleştirebilirsiniz. Değerler Option parametresine bir değer dizisi veya bu değerlerin virgülle ayrılmış dizesi olarak geçirilebilir. cmdlet'i bir ikili OR işlemi kullanarak değerleri birleştirir. Değerleri dizi olarak geçirmek en basit seçenektir ve değerler üzerinde sekme tamamlama özelliğini kullanmanıza da olanak tanır.

Parametre özellikleri

Tür:PSTraceSourceOptions
Default value:None
Kabul edilen değerler:None, Constructor, Dispose, Finalizer, Method, Property, Delegates, Events, Exception, Lock, Error, Errors, Warning, Verbose, WriteLine, Data, Scope, ExecutionFlow, Assert, All
Joker karakterleri destekler:False
DontShow:False

Parametre kümeleri

(All)
Position:2
Zorunlu:False
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

-PSHost

Cmdlet'in izleme çıkışını PowerShell konağına gönderdiğini gösterir. Bu parametre ayrıca PSHost izleme dinleyicisini seçer.

Parametre özellikleri

Tür:SwitchParameter
Default value:None
Joker karakterleri destekler:False
DontShow:False

Parametre kümeleri

(All)
Position:Named
Zorunlu:False
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

CommonParameters

Bu cmdlet yaygın parametreleri destekler: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction ve -WarningVariable. Daha fazla bilgi için bkz. about_CommonParameters.

Girişler

PSObject

İfadenin girişini temsil eden nesneleri bu cmdlet'e aktarabilirsiniz.

Çıkışlar

PSObject

Bu cmdlet kendi çıkışını döndürmez. İzlenen komut çıkış döndürebilir. Bu cmdlet, komut izlemesini hata ayıklama akışına yazar.

Notlar

Windows PowerShell, Trace-Commandiçin aşağıdaki diğer adları içerir:

  • trcm

İzleme, geliştiricilerin programlarda hata ayıklamak ve bunları iyileştirmek için kullandığı bir yöntemdir. İzleme sırasında program, iç işlemedeki her adım hakkında ayrıntılı iletiler oluşturur. PowerShell izleme cmdlet'leri PowerShell geliştiricilerine yardımcı olmak için tasarlanmıştır, ancak tüm kullanıcılar tarafından kullanılabilir. Kabuğun işlevselliğinin neredeyse her yönünü izlemenize olanak sağlar.

İzleme kaynağı, her PowerShell bileşeninin izlemeyi yöneten ve bileşen için izleme iletileri oluşturan bölümüdür. Bir bileşeni izlemek için izleme kaynağını tanımlarsınız.

İzleme için etkinleştirilmiş PowerShell bileşenlerinin listesini görmek için Get-TraceSource kullanın.

İzleme dinleyicisi izlemenin çıkışını alır ve kullanıcıya görüntüler. İzleme verilerini bir kullanıcı modu veya çekirdek modu hata ayıklayıcısına, konak veya konsola, bir dosyaya veya System.Diagnostics.TraceListener sınıfından türetilen özel bir dinleyiciye göndermeyi seçebilirsiniz.