0

EF7 を使用して最初のデモを作成しようとしています。

Microsoft.Extensions.Logging.Console 1.0.0-rc2-finalをインストール しました

記録する。

しかし、次のコードを使用しようとすると:

public static void LogToConsole(this DbContext context)
        {
            var contextServices = ((IInfrastructure<IServiceProvider>) context).Instance;
            var loggerFactory = contextServices.GetRequiredService<ILoggerFactory>();
            loggerFactory.AddConsole(LogLevel.Verbose);
        }

Verbose列挙型が見つかりませんでした!


代わりに、次のようになります:

ここに画像の説明を入力

何が起こったのか、ログに記録するためにどれを使用すればよいのかを説明するのを手伝ってもらえますか?

4

2 に答える 2

2

を使用しLogLevel.Debugます。レベルの名前が変更され、RC2 でシャッフルされました。詳しくはお知らせをご覧ください。

于 2016-06-20T21:42:57.943 に答える
1

12 月に、他のログ システムとの一貫性を高めるために、元のログ レベルが少し変更されました。この変更の一環として、Verboseは に名前が変更され、重大度が以下Traceに移動されました。 Debug

どのログ レベルを使用する必要があるかについては、何をログに記録するか、何を表示するかによって大きく異なります。ドキュメントの推奨事項を参照してください。最初の 3 つの箇条書きを引用します。

  1. 正しい を使用してログに記録しますLogLevel。これにより、メッセージの重要性に基づいてログ出力を適切に消費およびルーティングできます。
  2. エラーを迅速に特定できるログ情報。無関係または冗長な情報をログに記録しないようにします。
  3. 重要な情報を犠牲にすることなく、ログ メッセージを簡潔に保ちます。

正しいログ レベルを選択するには、まずその意味を理解する必要があります。重大度が最も低いものから順に次のとおりです。

  • トレース – 機密情報が含まれている可能性がある、最も詳細なメッセージ用。本番環境では決して有効にしないでください。
  • デバッグ – 開発中のインタラクティブな調査用。デバッグには役立ちますが、実際の長期的な価値はありません。
  • 情報 – アプリケーションの流れを追跡するため。
  • 警告 – エラーや例外など、アプリケーション内の異常な (しかし予想される) イベントで、適切に処理され、アプリケーションの実行に影響を与えません (ただし、潜在的な問題の兆候である可能性があります)。
  • エラー – 現在のアクティビティが失敗する原因となる実際の障害の場合、アプリケーションは回復可能な状態のままになるため、他のアクティビティには影響しません。
  • Critical – アプリケーションを回復不能な状態にし、その後の実行に影響を与えるアプリケーション レベルの障害の場合。

同様の説明は、公式ドキュメントとプロジェクトのロギング ガイドラインにあります。

于 2016-06-20T22:05:13.493 に答える