gpt4 book ai didi

NestJS/弹性 apm : agent does not record database query spans

转载 作者:行者123 更新时间:2023-12-04 10:15:09 25 4
gpt4 key购买 nike

我正在使用 elastic apm分析我的 NestJS应用程序和我的 apm 代理是 elastic-apm-node .
我的 ORM 是 typeOrm我的数据库是 Oracle .

我的问题是 apm 代理不记录数据库查询范围,我看不到 数据库查询跨度 在 kibana ui 中。
谁能帮我?

最佳答案

不幸的是,弹性 apm 代理不支持 oracle。你应该包裹你的 oracleQueryRunner为了手动启动和结束代理跨度。将此代码放入您的 main.ts文件:

import { OracleQueryRunner } from 'typeorm/driver/oracle/OracleQueryRunner';

const query = OracleQueryRunner.prototype.query;

OracleQueryRunner.prototype.query = async function (...args) {
const span = apm.startSpan('query');
if (span) {
span.type = 'db';
span.action = args[0];
}
const result = await query.bind(this)(...args);
if (span) { span.end(); }
return result;
};

关于NestJS/弹性 apm : agent does not record database query spans,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61098374/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com