node.jsベースのawsラムダ関数でaxioshttpリクエストをトレースするの方法を探しています。 awsの公式ドキュメントでHTTPリクエストをトレースする方法を見つけました https://docs.aws.Amazon.com/xray/latest/devguide/xray-sdk-nodejs-httpclients.html
var AWSXRay = require('aws-xray-sdk');
var http = AWSXRay.captureHTTPs(require('http'));
しかし、axiosリクエストのトレースに関するドキュメントやブログは見つかりませんでした。このコードも試しましたが、機能しません。
import AWSXRay from 'aws-xray-sdk';
AWSXRay.captureHTTPsGlobal("../../common/http/HttpClient");
import { HttpClient } from "../../common/http/HttpClient";
この点で助けが必要です。ありがとう!
Axiosは内部でノードのhttp/httpsモジュールを使用するため、axiosをインポート/要求する前にhttpとhttpsをグローバルにキャプチャすると、期待どおりに機能するはずです。
import AWSXRay from 'aws-xray-sdk';
import http from 'http';
import https from 'https';
AWSXRay.captureHTTPsGlobal(http);
AWSXRay.captureHTTPsGlobal(https);
const axios = require('axios');