DiagnosticListener.Subscribe DiagnosticListener.Subscribe DiagnosticListener.Subscribe DiagnosticListener.Subscribe Method

定義

オーバーロード

Subscribe(IObserver<KeyValuePair<String,Object>>) Subscribe(IObserver<KeyValuePair<String,Object>>) Subscribe(IObserver<KeyValuePair<String,Object>>) Subscribe(IObserver<KeyValuePair<String,Object>>)
Subscribe(IObserver<KeyValuePair<String,Object>>, Func<String,Object,Object,Boolean>) Subscribe(IObserver<KeyValuePair<String,Object>>, Func<String,Object,Object,Boolean>) Subscribe(IObserver<KeyValuePair<String,Object>>, Func<String,Object,Object,Boolean>) Subscribe(IObserver<KeyValuePair<String,Object>>, Func<String,Object,Object,Boolean>)

サブスクライバーを追加します。Adds a subscriber. isEnabled パラメーターが null でない場合、これは一部のイベントは重要でなく、効率化のためにスキップできることを示します。If the isEnabled parameter is not null, it indicates that some events are uninteresting can be skipped for efficiency.

Subscribe(IObserver<KeyValuePair<String,Object>>, Predicate<String>) Subscribe(IObserver<KeyValuePair<String,Object>>, Predicate<String>) Subscribe(IObserver<KeyValuePair<String,Object>>, Predicate<String>) Subscribe(IObserver<KeyValuePair<String,Object>>, Predicate<String>)

サブスクライバーを追加します (オブザーバー)。Add a subscriber (Observer). isEnabled パラメーターが null でない場合、これは一部のイベントは重要でなく、効率化のためにスキップできることを示します。If the isEnabled parameter is not null, it indicates that some events are uninteresting and can be skipped for efficiency.

Subscribe(IObserver<KeyValuePair<String,Object>>, Func<String,Object,Object,Boolean>, Action<Activity,Object>, Action<Activity,Object>) Subscribe(IObserver<KeyValuePair<String,Object>>, Func<String,Object,Object,Boolean>, Action<Activity,Object>, Action<Activity,Object>) Subscribe(IObserver<KeyValuePair<String,Object>>, Func<String,Object,Object,Boolean>, Action<Activity,Object>, Action<Activity,Object>)

Subscribe(IObserver<KeyValuePair<String,Object>>) Subscribe(IObserver<KeyValuePair<String,Object>>) Subscribe(IObserver<KeyValuePair<String,Object>>) Subscribe(IObserver<KeyValuePair<String,Object>>)

public:
 virtual IDisposable ^ Subscribe(IObserver<System::Collections::Generic::KeyValuePair<System::String ^, System::Object ^>> ^ observer);
public virtual IDisposable Subscribe (IObserver<System.Collections.Generic.KeyValuePair<string,object>> observer);
abstract member Subscribe : IObserver<System.Collections.Generic.KeyValuePair<string, obj>> -> IDisposable
override this.Subscribe : IObserver<System.Collections.Generic.KeyValuePair<string, obj>> -> IDisposable
Public Overridable Function Subscribe (observer As IObserver(Of KeyValuePair(Of String, Object))) As IDisposable

パラメーター

戻り値

実装

Subscribe(IObserver<KeyValuePair<String,Object>>, Func<String,Object,Object,Boolean>) Subscribe(IObserver<KeyValuePair<String,Object>>, Func<String,Object,Object,Boolean>) Subscribe(IObserver<KeyValuePair<String,Object>>, Func<String,Object,Object,Boolean>) Subscribe(IObserver<KeyValuePair<String,Object>>, Func<String,Object,Object,Boolean>)

サブスクライバーを追加します。Adds a subscriber. isEnabled パラメーターが null でない場合、これは一部のイベントは重要でなく、効率化のためにスキップできることを示します。If the isEnabled parameter is not null, it indicates that some events are uninteresting can be skipped for efficiency.

public:
 virtual IDisposable ^ Subscribe(IObserver<System::Collections::Generic::KeyValuePair<System::String ^, System::Object ^>> ^ observer, Func<System::String ^, System::Object ^, System::Object ^, bool> ^ isEnabled);
public virtual IDisposable Subscribe (IObserver<System.Collections.Generic.KeyValuePair<string,object>> observer, Func<string,object,object,bool> isEnabled);
abstract member Subscribe : IObserver<System.Collections.Generic.KeyValuePair<string, obj>> * Func<string, obj, obj, bool> -> IDisposable
override this.Subscribe : IObserver<System.Collections.Generic.KeyValuePair<string, obj>> * Func<string, obj, obj, bool> -> IDisposable
Public Overridable Function Subscribe (observer As IObserver(Of KeyValuePair(Of String, Object)), isEnabled As Func(Of String, Object, Object, Boolean)) As IDisposable

パラメーター

observer
IObserver<KeyValuePair<String,Object>>

サブスクライバーです。A subscriber.

isEnabled
Func<String,Object,Object,Boolean>

その名前と最大 2 つのコンテキスト オブジェクト (null が可能) に基づいてイベントをフィルタリングするデリゲートです。A delegate that filters events based on their name and up to two context object (which can be null).

戻り値

注釈

インストルメンテーションを特定のサイトが 1 つまたは複数を呼び出すことIsEnabled引数として他の 2 つの (特定のサイト instrumentation) オブジェクトまでイベントの名前を渡しますがオーバー ロードします。A particular instrumentation site has the option of calling one or more IsEnabled overloads in which it passes the name of the event and up to two other (instrumentation site specific) objects as arguments. これらのいずれかIsEnabled呼び出しが行われる、このisEnabled述語が渡された値で呼び出されます (短いオーバー ロードを使用している場合nullのコンテキスト オブジェクトの不足が渡されます)。If any of these IsEnabled calls are made then this isEnabled predicate is invoked with passed values (if shorter overloads are used, null is passed for missing context objects).

これにより、任意のインストルメンテーションを特定のサイトは、効率的な高度なフィルター処理を実行するサブスクライバーに最大 2 つの情報を渡す機能。This gives any particular instrumentation site the ability to pass up to two pieces of information to the subscriber to do sophisticated, efficient filtering. これには、インストルメンテーション サイトとサブスクライバーのコード間の複数の結合が必要です。This requires more coupling between the instrumentation site and the subscriber code.

インストルメンテーションを特定のサイトでのさまざまなオーバー ロードを呼び出すことことが必要ですIsEnabled、同じイベントの最初に呼び出すIsEnabled(String)、2 つのフィルターを呼び出しnullコンテキスト オブジェクト。It is expected that a particular instrumentation site may call different overloads of IsEnabled for the same event, first calling IsEnabled(String), which calls the filter with two null context objects. 場合isEnabled返しますtrue、コンテキスト オブジェクトをもう一度呼び出します。If isEnabled returns true, it calls again with context objects. isEnabledを考慮してこれをフィルターを設計する必要があります。The isEnabled filter should be designed with this in mind.

なお、isEnabled述語は、ペイロードを設定して、呼び出しを回避するために、インストルメンテーションのサイトを許可する、省略可能な最適化Write(String, Object)ときにサブスクライバー気にしないことです。Note that the isEnabled predicate is an optional optimization to allow the instrumentation site to avoid setting up the payload and calling Write(String, Object) when no subscriber cares about it. 特に、インストルメンテーション サイトにを無視すること、IsEnabled述語 (呼ばなかった) と、単に呼び出しWrite(String, Object)In particular, the instrumentation site has the option of ignoring the IsEnabled predicate (not calling it) and simply calling Write(String, Object). そのため、サブスクライバーは、フィルター処理を必要とする場合に必要なこと自体。Thus, if the subscriber requires the filtering, it needs to do it itself.

このパラメーターが場合null、フィルター処理は行われません (のすべてのオーバー ロードIsEnabled返すtrue)。If this parameter is null, no filtering is done (all overloads of IsEnabled return true).

Subscribe(IObserver<KeyValuePair<String,Object>>, Predicate<String>) Subscribe(IObserver<KeyValuePair<String,Object>>, Predicate<String>) Subscribe(IObserver<KeyValuePair<String,Object>>, Predicate<String>) Subscribe(IObserver<KeyValuePair<String,Object>>, Predicate<String>)

サブスクライバーを追加します (オブザーバー)。Add a subscriber (Observer). isEnabled パラメーターが null でない場合、これは一部のイベントは重要でなく、効率化のためにスキップできることを示します。If the isEnabled parameter is not null, it indicates that some events are uninteresting and can be skipped for efficiency.

public:
 virtual IDisposable ^ Subscribe(IObserver<System::Collections::Generic::KeyValuePair<System::String ^, System::Object ^>> ^ observer, Predicate<System::String ^> ^ isEnabled);
public virtual IDisposable Subscribe (IObserver<System.Collections.Generic.KeyValuePair<string,object>> observer, Predicate<string> isEnabled);
abstract member Subscribe : IObserver<System.Collections.Generic.KeyValuePair<string, obj>> * Predicate<string> -> IDisposable
override this.Subscribe : IObserver<System.Collections.Generic.KeyValuePair<string, obj>> * Predicate<string> -> IDisposable
Public Overridable Function Subscribe (observer As IObserver(Of KeyValuePair(Of String, Object)), isEnabled As Predicate(Of String)) As IDisposable

パラメーター

observer
IObserver<KeyValuePair<String,Object>>

サブスクライバーです。A subscriber.

isEnabled
Predicate<String>

その名前 (String) に基づいてイベントをフィルタリングするデリゲートです。A delegate that filters events based on their name (String). イベントが有効な場合、このデリゲートは true を返します。The delegate should return true if the event is enabled.

戻り値

注釈

なお、isEnabled述語は、ペイロードを設定して、呼び出しを回避するために、インストルメンテーションのサイトを許可する、省略可能な最適化Write(String, Object)ときにサブスクライバー気にしないことです。Note that the isEnabled predicate is an optional optimization to allow the instrumentation site to avoid setting up the payload and calling Write(String, Object) when no subscriber cares about it. インストルメンテーションのサイトを無視することが特に、IsEnabled()述語 (呼ばなかった) と単純に呼び出してWrite(String, Object)します。In particular the instrumentation site has the option of ignoring the IsEnabled() predicate (not calling it) and simply calling Write(String, Object). そのため、サブスクライバーは、フィルター処理を必要とする場合これを行う必要が自体。Thus if the subscriber requires the filtering, it needs to do it itself.

このパラメーターが場合null、フィルター処理は行われません (のすべてのオーバー ロードIsEnabled返すtrue)。If this parameter is null, no filtering is done (all overloads of IsEnabled return true).

Subscribe(IObserver<KeyValuePair<String,Object>>, Func<String,Object,Object,Boolean>, Action<Activity,Object>, Action<Activity,Object>) Subscribe(IObserver<KeyValuePair<String,Object>>, Func<String,Object,Object,Boolean>, Action<Activity,Object>, Action<Activity,Object>) Subscribe(IObserver<KeyValuePair<String,Object>>, Func<String,Object,Object,Boolean>, Action<Activity,Object>, Action<Activity,Object>)

public virtual IDisposable Subscribe (IObserver<System.Collections.Generic.KeyValuePair<string,object>> observer, Func<string,object,object,bool> isEnabled, Action<System.Diagnostics.Activity,object> onActivityImport = null, Action<System.Diagnostics.Activity,object> onActivityExport = null);
abstract member Subscribe : IObserver<System.Collections.Generic.KeyValuePair<string, obj>> * Func<string, obj, obj, bool> * Action<System.Diagnostics.Activity, obj> * Action<System.Diagnostics.Activity, obj> -> IDisposable
override this.Subscribe : IObserver<System.Collections.Generic.KeyValuePair<string, obj>> * Func<string, obj, obj, bool> * Action<System.Diagnostics.Activity, obj> * Action<System.Diagnostics.Activity, obj> -> IDisposable
Public Overridable Function Subscribe (observer As IObserver(Of KeyValuePair(Of String, Object)), isEnabled As Func(Of String, Object, Object, Boolean), Optional onActivityImport As Action(Of Activity, Object) = null, Optional onActivityExport As Action(Of Activity, Object) = null) As IDisposable

パラメーター

onActivityImport
Action<Activity,Object>
onActivityExport
Action<Activity,Object>

戻り値

適用対象