Troubleshooting AWS Log Files in IronPDF

This article was translated from English: Does it need improvement?
Translated
View the article in English

S3バケットを使用したIronPDFログの分離

AWS環境でIronPDFの問題をトラブルシューティングする際に、IronPDFライブラリ自体からクリーンで専用のログを取得することは非常に有益です。 このアプローチは、Amazon CloudWatch LogsやAWS Application Insightsなどのサービスからのマージされたログストリームをふるいにかける複雑さを回避するのに役立ちます。

CloudWatch LogsやApplication Insightsのようなサービスは、通常、アプリケーションコード、その他のライブラリ、そしてAWSサービスを含むさまざまなソースからのログを集約します。 この絡み合いにより、IronPDF固有のメッセージを特定し、PDF生成や操作に関連する問題を直接診断することが困難になることがあります。

これらの課題を克服するために、IronPDFを設定して、そのログをAWSコンピュート環境の一時ストレージ内の専用ファイルに書き込むことをお勧めします。 この分離されたログファイルは、Amazon S3バケットに簡単にアップロードされ、必要に応じてダウンロード、レビュー、およびサポートとの共有が便利になります。

IronPDF ログの有効化と設定

var awsTmpPath = @"/tmp/";

IronSoftware.Logger.LoggingMode = IronSoftware.Logger.LoggingModes.All;
IronSoftware.Logger.LogFilePath = awsTmpPath + "default.txt";
var awsTmpPath = @"/tmp/";

IronSoftware.Logger.LoggingMode = IronSoftware.Logger.LoggingModes.All;
IronSoftware.Logger.LogFilePath = awsTmpPath + "default.txt";
Dim awsTmpPath = "/tmp/"

IronSoftware.Logger.LoggingMode = IronSoftware.Logger.LoggingModes.All
IronSoftware.Logger.LogFilePath = awsTmpPath & "default.txt"
$vbLabelText   $csharpLabel

ログファイルをAmazon S3バケットにアップロード

// File path in the Lambda /tmp directory
var filePath = $"/tmp/default.txt";

// Read the file as byte array
var fileBytes = await File.ReadAllBytesAsync(filePath);

// Upload the text file to S3
using (var memoryStream = new MemoryStream(fileBytes))
{
    var request = new PutObjectRequest
    {
        BucketName = bucketName,
        Key = "default.txt",
        InputStream = memoryStream,
        ContentType = "text/plain",
    };

    await _s3Client.PutObjectAsync(request);
}
// File path in the Lambda /tmp directory
var filePath = $"/tmp/default.txt";

// Read the file as byte array
var fileBytes = await File.ReadAllBytesAsync(filePath);

// Upload the text file to S3
using (var memoryStream = new MemoryStream(fileBytes))
{
    var request = new PutObjectRequest
    {
        BucketName = bucketName,
        Key = "default.txt",
        InputStream = memoryStream,
        ContentType = "text/plain",
    };

    await _s3Client.PutObjectAsync(request);
}
' File path in the Lambda /tmp directory
Dim filePath = $"/tmp/default.txt"

' Read the file as byte array
Dim fileBytes = Await File.ReadAllBytesAsync(filePath)

' Upload the text file to S3
Using memoryStream As New MemoryStream(fileBytes)
	Dim request = New PutObjectRequest With {
		.BucketName = bucketName,
		.Key = "default.txt",
		.InputStream = memoryStream,
		.ContentType = "text/plain"
	}

	Await _s3Client.PutObjectAsync(request)
End Using
$vbLabelText   $csharpLabel

AWS特有のログ記録サービスについては、次のドキュメントを参照してください:

Amazon CloudWatch

Amazon CloudWatch Logsサービスを使用すると、リソース、アプリケーション、サービスからリアルタイムでログを収集および保存できます。

追加のログ

Amazon CloudWatch Logs、Amazon S3 Logs、Kinesis Data Firehoseに送信されたログに関する詳細については、以下を参照してください:

https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html

共通サービス

AWS Lambda

https://docs.aws.amazon.com/lambda/latest/dg/monitoring-cloudwatchlogs.html

Amazon EC2

https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Install-CloudWatch-Agent.html

Curtis Chau
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。

準備はいいですか?
Nuget ダウンロード 16,154,058 | バージョン: 2025.11 ただ今リリースされました