Node.js アプリケーションロガーの設定
開始する前に、「サポートされているログフレームワーク」を確認してください。
次のメタデータがログに追加されます。
- appd_node_id
- appd_request_guid
- appd_bt_id
メタデータキーが defaultMeta に追加されると、エージェントはランタイムに正しい値でキーを更新します。ただし、キーが存在しない場合、キー値は appdynamics_log_metadata_fields 環境変数によって決まります。この場合、メタデータはログのメッセージフィールドに埋め込まれます。
構造化ログの場合は、ロガーでメタデータフィールドを定義する必要があります。ロガーで定義されたメタデータフィールドの例を次に示します。
構造化ログのユーザー定義のメタデータフィールド
const logger = winston.createLogger({
level: 'debug',
format: winston.format.json(),
/* user adds the keys they want to see in the log output to the metadata */
defaultMeta: {appd_node_id: '', appd_request_guid: '', appd_bt_id: ''},
transports: [
new winston.transports.File({ filename: 'message.log'}),
],
});非構造化ログの場合、メタデータフィールドは定義しません。ログ出力フィールドは、appdynamics_log_metadata_fields によって決まります。
非構造化ログの未定義のメタデータフィールド
const logger = winston.createLogger({
level: 'debug',
format: winston.format.simple(),
defaultMeta: {appd_node_id: '', appd_request_guid: '', appd_bt_id: ''},
transports: [
new winston.transports.File({ filename: 'message.log'}),
],
});