IRONSOFTWAREHOME
開発者向けアップデート

Microsoft Logging C# (開発者向けの仕組み)

Jacob Mellor、Ironチームの最高技術責任者(CTO)
Jacob Mellor
Updated: 2026年7月5日

ロギングは、アプリケーションが実行されている間に情報、警告、エラー、その他の関連データをキャプチャするC#の基本的な技術です。 これにより、開発者はプログラムの挙動を監視し、問題をトラブルシューティングし、さまざまなコンテキストでアプリケーションがどのように機能するかを理解できます。 C#は、ロギングを簡単にするためのいくつかのロギングフレームワークとパッケージを提供しています。 Microsoft.Extensions.Loggingは、.NET Coreアプリケーションで最も広く使用されているロギングフレームワークの1つです。 Microsoft.Extensions.Logging NuGetパッケージは.NET Core用で、さまざまな拡張メソッドへのアクセスを提供し、異なるログレベルを書くのに役立ちます。 この記事では、MSロギングについて詳しく見ていきます。

MSロギングのセットアップ方法

  1. 新しいVisual Studioプロジェクトを作成します。
  2. NuGetのMicrosoft.Extensions.LoggingパッケージページからMicrosoft.Extensions.Loggingライブラリをインストールします。
  3. コンソールにLoggerインターフェースを注入します。
  4. ロギングの出力を設定します。
  5. 異なるレベルでログを書きます。
  6. コードを実行します。

ステップ1: 新しいVisual Studioプロジェクトを作成する

始めるには、Visual Studioで新しいプロジェクトを作成します。

ステップ2: Microsoft.Extensions.Loggingライブラリをインストールする

NuGetのMicrosoft.Extensions.Loggingパッケージページを使用してMicrosoft.Extensions.Loggingライブラリをインストールします。 このライブラリは、.NET Coreアプリケーションでのロギングに必要なクラスとメソッドを提供します。

ステップ3: Loggerインターフェイスをコンソールに注入する

ログ機能を利用するには、ILoggerインターフェースのインスタンスをコンソールアプリケーションに注入する必要があります。 これはロギングファクトリを使用することで実行できます。

using Microsoft.Extensions.Logging;

// Create a logger for the application
ILogger<Program> logger = LoggerFactory.Create(builder =>
{
    builder.AddConsole(); // Adding console logging
}).CreateLogger<Program>();

ステップ4: ロギングの出力を設定する

ログをどのように出力するかを設定します。 これは、ロガービルダーに1つ以上のロギングプロバイダを追加することで行うことができます。 最も一般的なプロバイダはコンソールロガーで、ログをコンソールに出力します。

builder.AddConsole(options =>
{
    options.TimestampFormat = "[HH:mm:ss] "; // Setting the timestamp format for logs
});

ステップ5: 異なるレベルでログを書く

現在、ロガーオブジェクトを使用して異なるレベルでログを書くことができます。 利用可能なログメソッドは、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");

ステップ6: コードを実行する

最後に、コードを実行して設定に応じて出力されるログを観察します。

それだけです! あなたはC#アプリケーションでMSロギングを成功裡に設定し使用しました。

MSロギングのインストール

MSロギングをインストールするために、以下の手順に従います:

  1. Visual Studioを起動します。

  2. ツール > NuGetパッケージマネージャー > パッケージマネージャーコンソールに移動します。

  3. パッケージマネージャーコンソールで次のコマンドを実行します:

    Install-Package Microsoft.Extensions.Logging
    PowerShell
  4. Enterを押してコマンドを実行します。 これはプロジェクトにMicrosoft.Extensions.Loggingパッケージをダウンロードしてインストールします。

ログレベル

C#のMicrosoft.Extensions.Loggingフレームワークでは、開発者がログメッセージをその重要性と重大性に応じて分類し、ランク付けすることができるさまざまなログレベルを利用できます。 これらのレベルは、さまざまなメッセージタイプを区別し、ログの冗長性を制御するのによく使用されます。

Microsoft.Extensions.Loggingが提供するデフォルトのログレベルは次のとおりです。

***トレース:**最も徹底したレベルで、プログラムの内部動作を深く理解できる非常に詳細なデータによく使用されます。 ***デバッグ:**開発およびデバッグ段階では役立ちますが、運用環境では必要ありません。 ***情報:**アプリケーションの正常な動作に関する詳細を提供します。 通常、プログラムの通常の操作はこれらのログを使用して監視されます。 ***警告:**将来的に発生する可能性のある問題や注意が必要となる事項を示します。 異常または予期しない状況に使用され、問題が発生する可能性はあるが、プログラムがクラッシュするわけではない。 ***エラー:**すぐに修正する必要がある重大な問題または間違いを示します。 通常、アプリケーションの動作に影響を与える問題を記録するために使用されます。 ***重大:**最も重大な状態。深刻な問題やプログラムのクラッシュを引き起こす可能性があるため、すぐに対処する必要がある重大な問題を記録するために使用されます。

各ログレベルは特定の目的を果たし、ロギングフレームワークが出力するデータの量を管理する能力を開発者に提供します。 開発者は、ログに記録されたデータの重大度と重要度に基づいて、メッセージを記録するための適切なレベルを選択できます。

C# ロギングの設定

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(); // Wait for a key press before closing the application
    }
}

この例では、ログをコンソールに出力するコンソールロガーをロギング設定に追加しています。 しかし、Microsoft.Extensions.Loggingはファイル、データベースへのログ、または他のログフレームワークとの接続など、さまざまなログプロバイダーを提供します。 また、特定の要件に従ってログのフォーマットを行うカスタムロギングプロバイダを作成することも可能です。

ログに追加のプロバイダを含める

Create()関数内で関連するメソッドをチェーンすることで、追加のログソースを追加できます。 例えば:

  • デバッガー出力ログプロバイダーを追加するには、builder.AddDebug()を使用します。
  • ファイルログプロバイダーを追加するには、builder.AddFile("log.txt")を使用します。

IronPDFでのMSロギング

IronPDFは、元のレイアウトとスタイルを正確に保持するためにHTMLからPDFへの変換が得意です。 これは、レポート、請求書、ドキュメントなどの Web ベースのコンテンツから PDF を作成するのに最適です。 HTML ファイル、URL、または生の HTML 文字列のサポートにより、IronPDF は高品質な PDF ドキュメントを簡単に生成します。

using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        var renderer = new ChromePdfRenderer();

        // 1. Convert HTML String to PDF
        var htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>";
        var pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent);
        pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf");

        // 2. Convert HTML File to PDF
        var htmlFilePath = "path_to_your_html_file.html"; // Specify the path to your HTML file
        var pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath);
        pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf");

        // 3. Convert URL to PDF
        var url = "http://ironpdf.com"; // Specify the URL
        var pdfFromUrl = renderer.RenderUrlAsPdf(url);
        pdfFromUrl.SaveAs("URLToPDF.pdf");
    }
}

IronPDFでログを有効にするには、IronPDFの組み込みログ機能と共にMicrosoft.Extensions.Loggingフレームワークを使用できます。 次に、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();
    }
}

この例では、Microsoft.Extensions.Loggingフレームワークから作成します。 次に、Programクラスのためにファクトリーからロガーを作成します。

IronPDFでログを有効にするために、loggerFactoryのロガーを受け取ります。 この設定により、IronPDF内でメッセージをログするためにLogger.Logメソッドを使用できます。

IronPDFで必要な操作を実行した後、リソースを閉じて廃棄し、loggerFactoryを廃棄することによりログメッセージをフラッシュできます。

注:Microsoft.Extensions.LoggingとIronPDFに必要な依存関係とパッケージがインストールされていることを確認してください。

IronPDFをインストールする

IronPDFライブラリをインストールするには、以下の手順に従います:

  1. Visual Studio内でパッケージマネージャーコンソールを開きます。
  2. NuGetを使用してIronPDFライブラリをインストールするための次のコマンドを入力します:

PM > Install-Package IronPdf

また、以下のコマンドをターミナルで実行することにより、.NET CLIを使用することもできます:

PM > Install-Package IronPdf

3.コマンドの実行にはEnterを押してください。 これにより、IronPDFパッケージがプロジェクトにダウンロードされてインストールされます。

NuGetパッケージマネージャーGUIを使用してIronPDFライブラリをインストールすることも可能です。 ブラウズタブで"IronPDF"というパッケージを検索し、リストから希望するパッケージを選択し、IronPDFの最新バージョンをインストールします。

インストールが完了すると、プロジェクトでIronPDFライブラリを使用し始めることができます。

IronPDFを使用したMSロギング

2022年1月現在、IronPDFはMicrosoft.Extensions.Loggingと直接連携せず、ネイティブサポートはありません。 IronPDFは主にC#プログラムでのPDFの作成と修正のためのツールとして使用されます。

ただし、Microsoft.Extensionsを使用してロギングを組み込むことが依然として可能です。 IronPDFとともにC#プログラムにロギングを統合することで、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(); // Wait for a key press before closing the application
    }
}

このサンプルは、IronPDFを使用するC#アプリケーション内でMicrosoft.Extensions.Loggingを設定する簡単な方法を示しています。 ログメッセージは、PDFの正常な作成を記録し、発生する可能性のある例外を記録するために生成されます。

アプリケーションの特定のニーズと、IronPDFがPDFの作成や修正に使用されるシナリオに応じて、ログレベル、エラーハンドリング、メッセージをカスタマイズするようにしてください。 ログレベルを使用して異なるタイプのログメッセージを適切に区別することは、効果的なデバッグと監視に役立ちます。

IronPDFについてもっと知りたい場合は、IronPDFのホームページをご覧ください。

結論

結論として、Microsoft.Extensions.Loggingの統合は、C#開発者がロギングタスクを効果的に処理するのを可能にします。 IronPDFは包括的なロギング機能を提供し、アプリケーションのイベント、失敗、および重要なデータの徹底的な記録、分析、およびレポートを可能にします。 これにより、アプリケーションの信頼性、保守性、デバッグが向上します。

IronPDFはさまざまなソフトウェア製品を提供しており、$999で価格設定されたLiteバンドルも含まれています。 このバンドルには、永久ライセンス、アップグレードオプション、1年間のソフトウェアメンテナンス、30日間の返金保証が含まれています。 透かし付き試用期間中、IronPDFの機能を試せます。 Iron Softwareが提供するソフトウェア製品についてもっと知るには、Iron Softwareの公式ウェブサイトをご覧ください。

Jacob Mellor、Ironチームの最高技術責任者(CTO)
最高技術責任者(CTO)

ジェイコブ・メラーはIron Softwareの最高技術責任者(CTO)であり、C# PDFテクノロジーを開拓する先見的なエンジニアです。Iron Softwareのコアコードベースを支えるオリジナル開発者として、彼は創業以来、会社の製品アーキテクチャを形成し、CEOのCameron Rimingtonとともに、会社をNASA、Tesla、および世界的な政府機関にサービスを提供する50人以上の会社に変えました。1999年にロンドンで最初のソフトウェアビジネスを開業し、2005年に最初 for .NETコンポーネントを作成した後、Microsoftのエコシステム全体で複雑な問題を解決することを専門としました。

関連する記事

Key in blue circle

無料の30日間トライアルキーをすぐに入手してください。

Your trial license will be sent to your email address

制限なし。100% ロック解除済み。クレジットカード不要。

OR
bullet_checkedクレジットカードやアカウントの作成は不要です。制限なし。100% ロック解除済み。クレジットカード不要。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried Iron Suite
無料のライブデモを予約する
Booking Badge

世界中の数百万人のエンジニアから信頼されています。

ライセンスはより安く
義務のない相談を受ける
下記のフォームを記入するか、sales@ironsoftware.comにメールしてください。
あなたの詳細は常に守秘されます。
世界中の数百万人のエンジニアから信頼されています。
ライセンスはより安く
あなたの無料30日間の試用キーをすぐに入手。
クレジットカードやアカウントの作成は不要です。
PDF用C# NuGetライブラリ
NuGetでインストール

バージョン: 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. ソリューションエクスプローラーで参照を右クリックし、NuGetパッケージを管理を選択
  2. ブラウズを選択し、"IronPDF"を検索
  3. パッケージを選択してインストール
C# PDF DLL
DLLをダウンロード

バージョン: 2026.9

またはここからWindowsインストーラーをダウンロードする。

  1. IronPDFを~/Libsなどの場所に解凍し、ソリューションディレクトリ内に配置する
  2. Visual Studioソリューションエクスプローラーで参照を右クリックし、"IronPDF.dll"をブラウズして選択

ライセンスは$999から