本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用適用於 Node.js 的 X-Ray 開發套件追蹤 SQL 查詢
通過將您的 SQL 用户端包裝在適用於 Node.js 的 X-Ray 開發套件方法中,來檢測 SQL 資料庫查詢。
-
PostgreSQL –
AWSXRay.capturePostgres()
var AWSXRay = require('aws-xray-sdk');
var pg = AWSXRay.capturePostgres(
require('pg'))
; var client = new pg.Client(); -
MySQL –
AWSXRay.captureMySQL()
var AWSXRay = require('aws-xray-sdk');
var mysql = AWSXRay.captureMySQL(
require('mysql'))
; ... var connection = mysql.createConnection(config);
當您使用受檢測用戶端進行 SQL 查詢時,適用於 Node.js 的 X-Ray 開發套件會在子區段中記錄連線及查詢的相關資訊。
在 SQL 子區段中包含其他資料
您可以將其他資訊新增至針對 SQL 查詢產生的子區段,只要它對應至允許列出的 SQL 欄位即可。例如,若要在子區段中記錄已淨化的 SQL 查詢字串,您可以將其直接新增至子區段的 SQL 物件。
範例 將 SQL 指派給子區段
const queryString = 'SELECT * FROM
MyTable
'; connection.query(queryString, ...); // Retrieve the most recently created subsegment const subs = AWSXRay.getSegment().subsegments; if (subs & & subs.length > 0) { var sqlSub = subs[subs.length - 1]; sqlSub.sql.sanitized_query = queryString; }
如需允許列出的 SQL 欄位的完整清單,請參SQL 查詢中的AWS X-Ray開發人員指南。