次の方法で共有


TagProviderAttribute(Type, String) コンストラクター

定義

カスタム タグ プロバイダーを使用して、 TagProviderAttribute クラスの新しいインスタンスを初期化します。

public:
 TagProviderAttribute(Type ^ providerType, System::String ^ providerMethod);
public TagProviderAttribute(Type providerType, string providerMethod);
new Microsoft.Extensions.Logging.TagProviderAttribute : Type * string -> Microsoft.Extensions.Logging.TagProviderAttribute
Public Sub New (providerType As Type, providerMethod As String)

パラメーター

providerType
Type

ログに記録するタグのカスタム セットを提供するメソッドを含む型。

providerMethod
String

ログに記録するタグのカスタム セットを生成するプロバイダー型のメソッドの名前。

例外

providerMethod または providerTypenull

providerMethod は空の文字列か、空白のみを含みます。

[LoggerMessage(1, LogLevel.Warning, "Custom tags for {Param}.")]
static partial void LogMethod(ILogger logger,
    [TagProvider(typeof(CustomProvider), nameof(CustomProvider.GetTagsToLog))] ClassToLog o);

public static class CustomProvider
{
    public static void GetTagsToLog(ITagCollector collector, ClassToLog? param)
    {
        collector.Add("Custom_tag_name", param?.MyProperty);
        collector.Add(nameof(ClassToLog.AnotherProperty), param?.AnotherProperty);
        // ...
    }
}

注釈

特定の入力オブジェクトに対してログに記録するタグの正確なセットを生成する独自のメソッドを作成できます。

このコンストラクターによって参照されるメソッドは、非ジェネリック、 static、および publicである必要があり、次の 2 つのパラメーターが必要です。

  • ITagCollector型の最初のパラメーター。
  • T?型の 2 番目のパラメーター。ここで、Tはログ記録するログメソッド パラメーターの型です。

適用対象

こちらもご覧ください