最近のブログ記事は、.NETロギングにおける一般的だが有害な慣行、つまりLog(quot;...")のような文字列補間を構造化メッセージテンプレートの代わりに使用することを強調しています。便利に見えますが、このアプローチはログを検索可能で分析可能にする構造化データを破壊します。補間を使用すると、ログメッセージはプレーンな文字列になり、パラメータによるクエリ、値によるフィルタリング、イベントの効果的な相関ができなくなります。この記事は、構造化ロギングがデバッグ、パフォーマンス監視、インシデント対応に重要であることを強調しています。名前付きプレースホルダーを持つメッセージテンプレートを使用することで、開発者は構造を保持し、強力なログ分析ツールを有効にできます。これは、ログが大規模に集約およびクエリされる分散システムで特に重要です。最初から構造化ロギングを採用することで、本番環境でのトラブルシューティングの時間と労力を大幅に節約できます。
ロギング呼び出しでの文字列補間は構造化ロギングを損ない、ログの検索や分析を困難にします。代わりにメッセージテンプレートを使用しましょう。