just promises?
dev dependency type reuse from sdk package
This commit is contained in:
parent
f935803354
commit
3315e9dab1
4 changed files with 46 additions and 48 deletions
|
|
@ -40,9 +40,6 @@
|
|||
"author": "Grafana Labs",
|
||||
"license": "Apache-2.0",
|
||||
"devDependencies": {
|
||||
"@babel/preset-env": "^7.18.10",
|
||||
"@babel/preset-react": "^7.18.6",
|
||||
"@babel/preset-typescript": "^7.18.6",
|
||||
"@babel/plugin-proposal-class-properties": "^7.18.6",
|
||||
"@babel/plugin-proposal-decorators": "^7.20.0",
|
||||
"@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6",
|
||||
|
|
@ -54,6 +51,10 @@
|
|||
"@babel/plugin-transform-react-constant-elements": "^7.18.12",
|
||||
"@babel/plugin-transform-runtime": "^7.19.6",
|
||||
"@babel/plugin-transform-typescript": "^7.18.12",
|
||||
"@babel/preset-env": "^7.18.10",
|
||||
"@babel/preset-react": "^7.18.6",
|
||||
"@babel/preset-typescript": "^7.18.6",
|
||||
"@grafana/eslint-config": "^5.0.0",
|
||||
"@grafana/toolkit": "^9.2.4",
|
||||
"@jest/globals": "^27.5.1",
|
||||
"@testing-library/jest-dom": "^5.16.5",
|
||||
|
|
@ -102,8 +103,6 @@
|
|||
},
|
||||
"dependencies": {
|
||||
"@grafana/data": "^9.2.4",
|
||||
"@grafana/eslint-config": "^5.0.0",
|
||||
"@grafana/faro-core": " ^1.0.0-beta4",
|
||||
"@grafana/faro-web-sdk": "^1.0.0-beta4",
|
||||
"@grafana/faro-web-tracing": "^1.0.0-beta4",
|
||||
"@grafana/runtime": "9.3.0-beta1",
|
||||
|
|
|
|||
|
|
@ -51,47 +51,47 @@ export const makeRequest = async <RT = any>(path: string, config: RequestConfig)
|
|||
span.setAttribute(SemanticAttributes.HTTP_METHOD, method);
|
||||
}
|
||||
|
||||
try {
|
||||
// OTEL requests
|
||||
return new Promise<RT>((resolve, reject) => {
|
||||
otel.context.with(otel.trace.setSpan(otel.context.active(), span), async () => {
|
||||
FaroHelper.faro.api.pushEvent('Sending request', { url });
|
||||
|
||||
const response = await instance({
|
||||
instance({
|
||||
method,
|
||||
url,
|
||||
params,
|
||||
data,
|
||||
validateStatus,
|
||||
});
|
||||
|
||||
FaroHelper.faro.api.pushEvent('Request completed', { url });
|
||||
return response.data as RT;
|
||||
})
|
||||
.then((response) => {
|
||||
FaroHelper.faro.api.pushEvent('Request completed', { url });
|
||||
span.end();
|
||||
resolve(response.data as RT);
|
||||
})
|
||||
.catch((ex) => {
|
||||
FaroHelper.faro.api.pushEvent('Request failed', { url });
|
||||
FaroHelper.faro.api.pushError(ex);
|
||||
span.setStatus({ code: SpanStatusCode.ERROR });
|
||||
span.end();
|
||||
reject(ex);
|
||||
});
|
||||
});
|
||||
} catch (ex) {
|
||||
FaroHelper.faro.api.pushEvent('Request failed', { url });
|
||||
FaroHelper.faro.api.pushError(ex);
|
||||
span.setStatus({ code: SpanStatusCode.ERROR });
|
||||
return Promise.reject(ex);
|
||||
} finally {
|
||||
span.end();
|
||||
}
|
||||
}
|
||||
|
||||
try {
|
||||
// non-OTEL requests
|
||||
const response = await instance({
|
||||
method,
|
||||
url,
|
||||
params,
|
||||
data,
|
||||
validateStatus,
|
||||
});
|
||||
|
||||
FaroHelper.faro?.api.pushEvent('Request completed', { url });
|
||||
return response.data as RT;
|
||||
} catch (ex) {
|
||||
FaroHelper.faro?.api.pushEvent('Request failed', { url });
|
||||
FaroHelper.faro?.api.pushError(ex);
|
||||
return Promise.reject(ex);
|
||||
}
|
||||
|
||||
return instance({
|
||||
method,
|
||||
url,
|
||||
params,
|
||||
data,
|
||||
validateStatus,
|
||||
})
|
||||
.then((response) => {
|
||||
FaroHelper.faro?.api.pushEvent('Request completed', { url });
|
||||
return response.data as RT;
|
||||
})
|
||||
.catch((ex) => {
|
||||
FaroHelper.faro?.api.pushEvent('Request failed', { url });
|
||||
FaroHelper.faro?.api.pushError(ex);
|
||||
return Promise.reject(ex);
|
||||
});
|
||||
};
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
import { Faro } from '@grafana/faro-core';
|
||||
import { initializeFaro, getWebInstrumentations } from '@grafana/faro-web-sdk';
|
||||
import { Faro, initializeFaro, getWebInstrumentations } from '@grafana/faro-web-sdk';
|
||||
import { TracingInstrumentation } from '@grafana/faro-web-tracing';
|
||||
import { DocumentLoadInstrumentation } from '@opentelemetry/instrumentation-document-load';
|
||||
import { FetchInstrumentation } from '@opentelemetry/instrumentation-fetch';
|
||||
|
|
|
|||
|
|
@ -1594,15 +1594,6 @@
|
|||
eslint-plugin-react-hooks "4.3.0"
|
||||
typescript "4.6.4"
|
||||
|
||||
"@grafana/faro-core@ ^1.0.0-beta4", "@grafana/faro-core@^1.0.0-beta4":
|
||||
version "1.0.0-beta4"
|
||||
resolved "https://registry.yarnpkg.com/@grafana/faro-core/-/faro-core-1.0.0-beta4.tgz#2f38e18764c0a3c3f1af889d510a2896bcb742ab"
|
||||
integrity sha512-tB7705aYCByw4CNWt3WNoV39+sZCudBMiStmiEKHzM17VRRLBjPcrMQTkVYu4zMkEAdWMuAdYhT3xjzHlQpXIA==
|
||||
dependencies:
|
||||
"@opentelemetry/api" "^1.3.0"
|
||||
"@opentelemetry/api-metrics" "^0.33.0"
|
||||
"@opentelemetry/otlp-transformer" "^0.34.0"
|
||||
|
||||
"@grafana/faro-core@^1.0.0-beta2":
|
||||
version "1.0.0-beta2"
|
||||
resolved "https://registry.yarnpkg.com/@grafana/faro-core/-/faro-core-1.0.0-beta2.tgz#97636677c1d687b0b238642a3978334652f263a5"
|
||||
|
|
@ -1613,6 +1604,15 @@
|
|||
"@opentelemetry/otlp-transformer" "^0.33.0"
|
||||
fast-deep-equal "^3.1.3"
|
||||
|
||||
"@grafana/faro-core@^1.0.0-beta4":
|
||||
version "1.0.0-beta4"
|
||||
resolved "https://registry.yarnpkg.com/@grafana/faro-core/-/faro-core-1.0.0-beta4.tgz#2f38e18764c0a3c3f1af889d510a2896bcb742ab"
|
||||
integrity sha512-tB7705aYCByw4CNWt3WNoV39+sZCudBMiStmiEKHzM17VRRLBjPcrMQTkVYu4zMkEAdWMuAdYhT3xjzHlQpXIA==
|
||||
dependencies:
|
||||
"@opentelemetry/api" "^1.3.0"
|
||||
"@opentelemetry/api-metrics" "^0.33.0"
|
||||
"@opentelemetry/otlp-transformer" "^0.34.0"
|
||||
|
||||
"@grafana/faro-web-sdk@1.0.0-beta2":
|
||||
version "1.0.0-beta2"
|
||||
resolved "https://registry.yarnpkg.com/@grafana/faro-web-sdk/-/faro-web-sdk-1.0.0-beta2.tgz#d096a350d6366a108428a205753c797802eb480d"
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue