instrument workbench runtime otel spans
This commit is contained in:
@@ -35,7 +35,7 @@ export async function handleWorkbenchReadModelHttp(request, response, url, optio
|
||||
|
||||
if (url.pathname === "/v1/workbench/sessions") {
|
||||
if (request.method !== "GET") return methodNotAllowed(response, "GET");
|
||||
await (perf ? perf.measure("workbench_session_list", () => handleWorkbenchSessionList(response, url, options, auth.actor)) : handleWorkbenchSessionList(response, url, options, auth.actor));
|
||||
await (perf ? perf.measure("workbench_session_list", () => handleWorkbenchSessionList(request, response, url, options, auth.actor)) : handleWorkbenchSessionList(request, response, url, options, auth.actor));
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -404,13 +404,13 @@ async function authenticateWorkbenchRead(request, response, options) {
|
||||
return auth;
|
||||
}
|
||||
|
||||
async function handleWorkbenchSessionList(response, url, options, actor) {
|
||||
async function handleWorkbenchSessionList(request, response, url, options, actor) {
|
||||
if (url.searchParams.has("projectId") || url.searchParams.has("workspaceId")) return sendJson(response, 400, workbenchError("workbench_authority_removed", "Workbench session list is keyed by sessionId only."));
|
||||
const limit = boundedSessionListLimit(url.searchParams.get("limit"));
|
||||
const offset = cursorOffset(url.searchParams.get("cursor") ?? url.searchParams.get("after"));
|
||||
const includeSessionId = safeSessionId(url.searchParams.get("includeSessionId"));
|
||||
const includeRouteId = includeSessionId ?? safeConversationId(url.searchParams.get("includeSessionId"));
|
||||
const runtime = options.workbenchRuntime ?? createWorkbenchRuntimeClient({ env: options.env ?? process.env, fetch: options.fetch, logger: options.logger });
|
||||
const runtime = options.workbenchRuntime ?? createWorkbenchRuntimeClient({ env: options.env ?? process.env, fetch: options.fetch, logger: options.logger, traceparent: request?.hwlabHttpRequestContext?.traceparent });
|
||||
if (typeof runtime?.listWorkbenchSessions !== "function") {
|
||||
throw runtimeDependencyError("workbench_runtime_unconfigured", "Workbench runtime service is required for session list.", false);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user