ライブ環境でテストする
ウォーターマークなしで本番環境でテストしてください。
必要な場所でいつでも動作します。
ロギングは、アプリケーションの実行中に情報、警告、エラー、およびその他の関連データを記録するためのC#における重要な技術です。 それは、プログラムの動作を監視し、問題をトラブルシューティングし、アプリケーションがさまざまな状況でどのように機能するかを理解するのに役立ちます。 C#には、ログ処理を容易にするためのいくつかのロギングフレームワークとパッケージが提供されています。 Microsoft.Extensions.Loggingは、.NET Coreアプリケーションで最も広く使用されているロギングフレームワークの一つです。 Microsoft.Extensions.Logging
NuGetパッケージは、.NET Coreでさまざまなログレベルを記録するためのいくつかの拡張メソッドにアクセスできるようにします。 この記事では、MS ロギングについて詳しく見ていきます。
新しいビジュアルスタジオプロジェクト
Microsoft.Extensions.Logging
ライブラリをインストールします:
NuGetのMicrosoft.Extensions.Loggingパッケージページ.Logger
インターフェースをコンソールに注入します。
ログ出力を設定する。
異なるレベルでログを書き込みます。
始めるには、Visual Studioで新しいプロジェクトを作成します。
Microsoft.Extensions.Logging
ライブラリをインストールするにはNuGetのMicrosoft.Extensions.Loggingパッケージページ. このライブラリは、.NET Coreアプリケーションでロギングに必要なクラスとメソッドを提供します。
ログ機能を使用するには、Logger
インターフェースのインスタンスをコンソールアプリケーションに注入する必要があります。 これは依存性注入フレームワークを使用するか、手動で Logger
クラスのインスタンスを作成することで実行できます。
using Microsoft.Extensions.Logging;
// Inject the logger into the console
ILogger logger = LoggerFactory.Create(builder =>
{
builder.AddConsole();
}).CreateLogger<Program>();
using Microsoft.Extensions.Logging;
// Inject the logger into the console
ILogger logger = LoggerFactory.Create(builder =>
{
builder.AddConsole();
}).CreateLogger<Program>();
Imports Microsoft.Extensions.Logging
' Inject the logger into the console
Private logger As ILogger = LoggerFactory.Create(Sub(builder)
builder.AddConsole()
End Sub).CreateLogger<Program>()
ログの出力方法を設定します。 これは、ロガービルダーに1つ以上のロギングプロバイダーを追加することで行うことができます。 最も一般的なプロバイダーはコンソールロガーであり、ログをコンソールに出力します。
builder.AddConsole(options =>
{
options.TimestampFormat = "[HH:mm:ss] ";
});
builder.AddConsole(options =>
{
options.TimestampFormat = "[HH:mm:ss] ";
});
builder.AddConsole(Sub(options)
options.TimestampFormat = "[HH:mm:ss] "
End Sub)
ログオブジェクトを使用して、異なるレベルのログを書き込むことができます。 利用可能なログ記録方法は LogDebug()``,
LogInformation(),
警告を記録(),
LogError()「,」および「LogCritical」()`.
logger.LogDebug("This is a debug message");
logger.LogInformation("This is an information message");
logger.LogWarning("This is a warning message");
logger.LogError("This is an error message");
logger.LogCritical("This is a critical message");
logger.LogDebug("This is a debug message");
logger.LogInformation("This is an information message");
logger.LogWarning("This is a warning message");
logger.LogError("This is an error message");
logger.LogCritical("This is a critical message");
logger.LogDebug("This is a debug message")
logger.LogInformation("This is an information message")
logger.LogWarning("This is a warning message")
logger.LogError("This is an error message")
logger.LogCritical("This is a critical message")
最後に、コードを実行し、設定された内容に従って出力されるログを確認してください。
以上です! C#アプリケーションにMSログを正常にセットアップして使用しました。
MS Logging をインストールするには、次の手順に従ってください。
Visual Studioを起動してください。
ツール > NuGet パッケージ マネージャー > パッケージ マネージャー コンソールに移動します。
Install-Package Microsoft.Extensions.Logging
Microsoft.Extensions.Logging
パッケージをプロジェクトにダウンロードしてインストールします。C# の Microsoft.Extensions.Logging
フレームワークでは、開発者がログメッセージをその重要性と深刻度に応じて分類およびランク付けするために、いくつかのログレベルが利用可能です。 これらのレベルは、さまざまなメッセージタイプを区別し、ログの冗長性を調整するのに頻繁に使用されます。
Microsoft.Extensions.Logging
が提供するデフォルトのロギングレベルは以下の通りです:
クリティカル: 最も深刻な状態で、すぐに対処しなければ重大な問題やプログラムのクラッシュを引き起こす可能性がある致命的な問題を記録するために使用されます。
各ログレベルは特定の目的に役立ち、開発者がロギングフレームワークが出力するデータ量を管理できるようにします。 開発者は、記録されるデータの重要性と重大性に基づいて、適切なメッセージ記録レベルを選択することができます。
Microsoft.Extensions.Logging
を使用してログ記録を設定する基本的な例を以下に示します:
using Microsoft.Extensions.Logging;
using System;
class Program
{
// Create a LoggerFactory instance
private static readonly ILoggerFactory LoggerFactory = LoggerFactory.Create(builder =>
{
// Add console logger
builder.AddConsole();
// You can add other logging providers here (e.g., AddDebug, AddFile, etc.)
});
// Create a logger
private static readonly ILogger Logger = LoggerFactory.CreateLogger<Program>();
static void Main(string [] args)
{
// Example log messages
Logger.LogInformation("Information log");
Logger.LogWarning("Warning log");
Logger.LogError("Error log");
try
{
// Simulate an exception
throw new Exception("Exception occurred");
}
catch (Exception ex)
{
// Log exception details
Logger.LogError(ex, "Exception log");
}
Console.ReadKey();
}
}
using Microsoft.Extensions.Logging;
using System;
class Program
{
// Create a LoggerFactory instance
private static readonly ILoggerFactory LoggerFactory = LoggerFactory.Create(builder =>
{
// Add console logger
builder.AddConsole();
// You can add other logging providers here (e.g., AddDebug, AddFile, etc.)
});
// Create a logger
private static readonly ILogger Logger = LoggerFactory.CreateLogger<Program>();
static void Main(string [] args)
{
// Example log messages
Logger.LogInformation("Information log");
Logger.LogWarning("Warning log");
Logger.LogError("Error log");
try
{
// Simulate an exception
throw new Exception("Exception occurred");
}
catch (Exception ex)
{
// Log exception details
Logger.LogError(ex, "Exception log");
}
Console.ReadKey();
}
}
Imports Microsoft.Extensions.Logging
Imports System
Friend Class Program
' Create a LoggerFactory instance
Private Shared ReadOnly LoggerFactory As ILoggerFactory = LoggerFactory.Create(Sub(builder)
' Add console logger
builder.AddConsole()
' You can add other logging providers here (e.g., AddDebug, AddFile, etc.)
End Sub)
' Create a logger
Private Shared ReadOnly Logger As ILogger = LoggerFactory.CreateLogger(Of Program)()
Shared Sub Main(ByVal args() As String)
' Example log messages
Logger.LogInformation("Information log")
Logger.LogWarning("Warning log")
Logger.LogError("Error log")
Try
' Simulate an exception
Throw New Exception("Exception occurred")
Catch ex As Exception
' Log exception details
Logger.LogError(ex, "Exception log")
End Try
Console.ReadKey()
End Sub
End Class
この例では、コンソール ロガーがロギング設定に追加され、ログをコンソールに書き込みます。 ただし、Microsoft.Extensions.Logging
は、ファイル、データベースへのログ記録や他のロギングフレームワークとの接続を含む、さまざまなロギングプロバイダを提供します。 さらに、特定の要件に従ってログをフォーマットできるカスタムロギングプロバイダーを作成することが可能です。
Create
メソッド内に関連するメソッドをチェーンすることで、追加のロギングソースを追加することができます。()` 関数。 例えば:
builder.AddDebug
を使用します。()`.builder.AddFile
を使用します。(「log.txt」)`.IronPDFでロギングを有効にするには、Microsoft.Extensions.Logging
フレームワークと IronPDF の組み込みロギング機能を併用できます。 以下はIronPDFでログ設定を行う方法の例です:
using Microsoft.Extensions.Logging;
using IronPdf;
class Program
{
static void Main(string [] args)
{
ILoggerFactory loggerFactory = LoggerFactory.Create(builder =>
{
builder
.AddConsole()
.AddDebug();
});
ILogger<Program> logger = loggerFactory.CreateLogger<Program>();
// Enable logging in IronPDF
Logger.Log = new LoggerImplementation(logger);
// Use IronPDF and perform operations
// ...
// Example of logging an error in IronPDF
Logger.Log.Error("An error occurred while processing the PDF");
// Example of logging a warning in IronPDF
Logger.Log.Warning("This is a warning message");
// Example of logging an information message in IronPDF
Logger.Log.Information("This is an information message");
// ...
// Close and dispose resources
// ...
// Flush the log messages
loggerFactory.Dispose();
}
}
using Microsoft.Extensions.Logging;
using IronPdf;
class Program
{
static void Main(string [] args)
{
ILoggerFactory loggerFactory = LoggerFactory.Create(builder =>
{
builder
.AddConsole()
.AddDebug();
});
ILogger<Program> logger = loggerFactory.CreateLogger<Program>();
// Enable logging in IronPDF
Logger.Log = new LoggerImplementation(logger);
// Use IronPDF and perform operations
// ...
// Example of logging an error in IronPDF
Logger.Log.Error("An error occurred while processing the PDF");
// Example of logging a warning in IronPDF
Logger.Log.Warning("This is a warning message");
// Example of logging an information message in IronPDF
Logger.Log.Information("This is an information message");
// ...
// Close and dispose resources
// ...
// Flush the log messages
loggerFactory.Dispose();
}
}
Imports Microsoft.Extensions.Logging
Imports IronPdf
Friend Class Program
Shared Sub Main(ByVal args() As String)
Dim loggerFactory As ILoggerFactory = LoggerFactory.Create(Sub(builder)
builder.AddConsole().AddDebug()
End Sub)
Dim logger As ILogger(Of Program) = loggerFactory.CreateLogger(Of Program)()
' Enable logging in IronPDF
Logger.Log = New LoggerImplementation(logger)
' Use IronPDF and perform operations
' ...
' Example of logging an error in IronPDF
Logger.Log.Error("An error occurred while processing the PDF")
' Example of logging a warning in IronPDF
Logger.Log.Warning("This is a warning message")
' Example of logging an information message in IronPDF
Logger.Log.Information("This is an information message")
' ...
' Close and dispose resources
' ...
' Flush the log messages
loggerFactory.Dispose()
End Sub
End Class
この例では、Microsoft.Extensions.Logging
フレームワークからLoggerFactory
のインスタンスを作成します。 次に、Program
クラス用のロガーをファクトリーから作成します。
IronPDFでログを有効にするには、静的な Logger.Log
プロパティを loggerFactory
から取得したロガーを LoggerImplementation
インスタンスとして設定します。 この構成により、IronPDF内でメッセージを記録するためにLogger.Log
メソッドを使用できます。
IronPDFで必要な操作を行った後、リソースをクローズして破棄し、loggerFactory
を破棄することでログメッセージをフラッシュすることができる。
注意: Microsoft.Extensions.Logging
およびIronPDFの必要な依存関係とパッケージがインストールされていることを確認してください。
IronPDFライブラリをインストールするには、以下の手順に従ってください:
Visual Studioでパッケージ マネージャー コンソールを開きます。
Install-Package IronPdf
または、次のコマンドをターミナルで実行することで .NET CLI を使用することもできます:
dotnet add package IronPdf
コマンドを実行するには Enter を押してください。 これは、IronPDFパッケージをプロジェクトにダウンロードしてインストールします。
IronPDFライブラリをNuGetパッケージマネージャGUIを使用してインストールすることも可能です。 「Browse」タブで「IronPDF」パッケージを検索し、リストから希望するパッケージを選択し、最新バージョンのIronPDFをインストールしてください。
インストールが完了したら、プロジェクトでIronPDFライブラリの使用を開始できます。
2022年1月現在、IronPDFはMicrosoft.Extensions.Logging
と直接相互作用せず、ネイティブサポートされていません。 IronPDFは、主にC#プログラムでPDFを作成および修正するためのツールとして使用されます。
しかし、Microsoft.Extensionsを使用してロギングを組み込むことは依然として可能です。 C#プログラムにIronPDFを組み込んでログ記録を行うことで、PDF生成、アプリケーションのワークフロー、IronPDFを使用する際に発生する問題に関するイベントを管理およびログ記録できます。
以下は、Microsoft.Extensionsを使用してIronPDFとロギングを統合する方法の例です:
using Microsoft.Extensions.Logging;
using IronPdf;
using System;
class Program
{
private static readonly ILoggerFactory LoggerFactory = LoggerFactory.Create(builder =>
{
builder.AddConsole(); // Add other logging providers as needed
});
private static readonly ILogger Logger = LoggerFactory.CreateLogger<Program>();
static void Main(string [] args)
{
try
{
// Your IronPDF code for PDF generation or manipulation
var Renderer = new IronPdf.HtmlToPdf();
var PDF = Renderer.RenderHtmlAsPdf("<h1>Hello World!</h1>");
PDF.SaveAs("Output.pdf");
Logger.LogInformation("PDF created successfully.");
}
catch (Exception ex)
{
Logger.LogError(ex, "An error occurred while generating the PDF.");
}
Console.ReadKey();
}
}
using Microsoft.Extensions.Logging;
using IronPdf;
using System;
class Program
{
private static readonly ILoggerFactory LoggerFactory = LoggerFactory.Create(builder =>
{
builder.AddConsole(); // Add other logging providers as needed
});
private static readonly ILogger Logger = LoggerFactory.CreateLogger<Program>();
static void Main(string [] args)
{
try
{
// Your IronPDF code for PDF generation or manipulation
var Renderer = new IronPdf.HtmlToPdf();
var PDF = Renderer.RenderHtmlAsPdf("<h1>Hello World!</h1>");
PDF.SaveAs("Output.pdf");
Logger.LogInformation("PDF created successfully.");
}
catch (Exception ex)
{
Logger.LogError(ex, "An error occurred while generating the PDF.");
}
Console.ReadKey();
}
}
Imports Microsoft.Extensions.Logging
Imports IronPdf
Imports System
Friend Class Program
Private Shared ReadOnly LoggerFactory As ILoggerFactory = LoggerFactory.Create(Sub(builder)
builder.AddConsole() ' Add other logging providers as needed
End Sub)
Private Shared ReadOnly Logger As ILogger = LoggerFactory.CreateLogger(Of Program)()
Shared Sub Main(ByVal args() As String)
Try
' Your IronPDF code for PDF generation or manipulation
Dim Renderer = New IronPdf.HtmlToPdf()
Dim PDF = Renderer.RenderHtmlAsPdf("<h1>Hello World!</h1>")
PDF.SaveAs("Output.pdf")
Logger.LogInformation("PDF created successfully.")
Catch ex As Exception
Logger.LogError(ex, "An error occurred while generating the PDF.")
End Try
Console.ReadKey()
End Sub
End Class
このサンプルは、IronPDFを使用するC#アプリケーション内でMicrosoft.Extensions.Loggingを設定する簡単な方法を示しています。 ログメッセージは、PDFの作成が成功したことを記録し、発生する可能性のある例外を記録するために生成されます。
ログレベル、エラーハンドリング、およびメッセージを、アプリケーションの特定のニーズおよびIronPDFがPDFの作成または変更に使用されるシナリオに応じてカスタマイズしてください。 次の内容を日本語に翻訳してください:
ログレベルを使って異なる種類のログメッセージを適切に区別することは、効果的なデバッグと監視に役立ちます。
IronPDFについてもっと知りたい方はIronPDF ホームページ、.
結論として、Microsoft.Extensions.Loggingを統合することで、C#開発者は効果的にロギングタスクを処理できます。 IronPDFは包括的なログ機能を提供し、アプリケーションのイベント、エラー、および重要なデータの詳細な記録、分析、および報告を可能にします。 これはアプリケーションの信頼性、保守性、およびデバッグを向上させます。
IronPDFは、$749で提供されるLiteバンドルを含む、さまざまなソフトウェア製品を提供しています。 このバンドルには、永久ライセンス、アップグレードオプション、1年間のソフトウェアメンテナンス、および30日間の返金保証が含まれています。 ウォーターマーク付きのトライアル期間中に、IronPDF の機能を調べることができます。 Iron Softwareが提供するソフトウェア製品の詳細については、以下をご覧ください。Iron Softwareの公式ウェブサイト.
9つの .NET API製品 オフィス文書用