nestjs - 在 Nx NestJS 项目中使用 npm 链接包注册 prom-client 指标
问题描述
我有一个 Nx NestJS 项目,其中一些库作为 npm 链接包。一种是注册指标并公开端点/指标。在 Nx NestJS 主项目中,我创建了一个新指标,该指标已成功注册,但如果我在链接包中注册,则注册表成功(我可以使用 registry.getSingleMetric() 方法获得)但未在 /metrics 中公开端点。我怎样才能使整个注册过程正常工作?注册过程是通过使用 GraphQL 解析器中的自定义装饰器完成的,如下所示:</p>
import { GraphQLMetric, GraphQLOperationType } from "../models"
import { createPrometheusMetric, extractMetricHelp, extractMetricName } from "../utils"
export function GraphQLMetrics(params: { type: GraphQLOperationType; metrics: GraphQLMetric[] }) {
return function (target: any, propertyKey: string, descriptor: PropertyDescriptor) {
if (params.metrics?.length) {
params.metrics.forEach((m) => {
createPrometheusMetric(extractMetricName(params.type, propertyKey, m), extractMetricHelp(params.type, propertyKey, m), m)
})
}
}
}
我使用的 Prometheus Metrics 控件库的特定是 prom-client
解决方案
推荐阅读
- r - 仅检查 R 中的连续 NA 值
- powershell - Powershell 可执行文件未输出到 STDOUT
- python - 有没有办法只使用 python 套接字使用密码登录到 ssh 服务器?
- python - 在类方法中将实例变量作为参数传递?
- apache-spark - 在 Spark DataFrame 中计算大于 0 的值的更快方法?
- javascript - onclick 函数中的访问按钮对象
- apache - 将空值写入 Parquet 文件
- mysql - Google Apps 脚本中 PHP 的 mysqli_real_escape_string 等效项
- ruby-on-rails - Rails 查找具有特定 product_id 的最新记录
- python - 在python中切割字符串