Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app/assets/javascripts/observability/client.js')
-rw-r--r--app/assets/javascripts/observability/client.js12
1 files changed, 12 insertions, 0 deletions
diff --git a/app/assets/javascripts/observability/client.js b/app/assets/javascripts/observability/client.js
index 251c165e7dd..667bbc107dc 100644
--- a/app/assets/javascripts/observability/client.js
+++ b/app/assets/javascripts/observability/client.js
@@ -1,4 +1,5 @@
import axios from '~/lib/utils/axios_utils';
+import mockData from './mock_traces.json';
function enableTraces() {
// TODO remove mocks https://gitlab.com/gitlab-org/opstrace/opstrace/-/issues/2271
@@ -19,6 +20,16 @@ function isTracingEnabled() {
});
}
+async function fetchTrace(tracingUrl, traceId) {
+ const data = mockData;
+ const trace = data.traces.find((t) => t.trace_id === traceId);
+ const duration = trace.spans.reduce((acc, cur) => acc + cur.duration_nano, 0);
+ return {
+ ...trace,
+ duration: duration / 1000,
+ };
+}
+
async function fetchTraces(tracingUrl) {
const { data } = await axios.get(tracingUrl, { withCredentials: true });
if (!Array.isArray(data.traces)) {
@@ -39,5 +50,6 @@ export function buildClient({ provisioningUrl, tracingUrl }) {
enableTraces: () => enableTraces(provisioningUrl),
isTracingEnabled: () => isTracingEnabled(provisioningUrl),
fetchTraces: () => fetchTraces(tracingUrl),
+ fetchTrace: (traceId) => fetchTrace(tracingUrl, traceId),
};
}