logger updates

This commit is contained in:
Storme-bit
2026-04-26 22:28:54 -07:00
parent c86b565eed
commit 86e78cc4c6
23 changed files with 87 additions and 67 deletions

View File

@@ -2,7 +2,7 @@ const memory = require("../services/memory");
const inference = require("../services/inference");
const embedding = require("../services/embedding");
const qdrant = require("../services/qdrant");
const { ORCHESTRATION } = require("@nexusai/shared");
const { ORCHESTRATION, logger } = require("@nexusai/shared");
const appSettings = require("../config/settings");
const {triggerSummary} = require('../services/summarization')
@@ -64,12 +64,12 @@ async function autoNameSession(externalId, userMessage, aiResponse) {
const name = result.text?.trim().replace(/^["']|["']$/g, ""); // strip any quotes the model adds
if (name) {
await memory.updateSession(externalId, { name });
console.log(
logger.info(
`[orchestration] Auto-named session "${externalId}": "${name}"`,
);
}
} catch (err) {
console.warn(
logger.warn(
"[orchestration] Auto-naming failed (non-critical):",
err.message,
);
@@ -99,7 +99,7 @@ async function getSemanticEpisodes(
);
return fetched.filter(Boolean);
} catch (err) {
console.warn(
logger.warn(
`[orchestration] Semantic search failed, continuing without: `,
err.message,
);
@@ -111,13 +111,13 @@ async function getRelevantEntities(userMessage, projectId=null) {
try {
const vector = await embedding.embed(userMessage);
const results = await qdrant.searchEntities(vector, { projectId });
console.log(
logger.info(
"[orchestration] Entity search results:",
results.map((r) => ({ name: r.payload?.name, score: r.score })),
);
return results.map((r) => r.payload).filter(Boolean);
} catch (err) {
console.warn(
logger.warn(
"[orchestration] Entity search failed, continuing without:",
err.message,
);
@@ -143,7 +143,7 @@ async function chat(externalId, userMessage, options = {}) {
projectSessionIds = projectSessions.map((s) => s.id);
}
} catch (err) {
console.warn(
logger.warn(
"[orchestration] Failed to resolve project context:",
err.message,
);
@@ -189,7 +189,7 @@ async function chat(externalId, userMessage, options = {}) {
session.project_id ?? null,
);
} catch (err) {
console.error('[orchestration] Failed to save episode:', err.message);
logger.error('[orchestration] Failed to save episode:', err.message);
}
const allEpisodes = await memory.getRecentEpisodes(session.id, 9999);
triggerSummary(session, allEpisodes);
@@ -231,7 +231,7 @@ async function chatStream(externalId, userMessage, onChunk, options = {}) {
}
} catch (err) {
console.warn(
logger.warn(
"[orchestration] Failed to resolve project context:",
err.message,
);
@@ -302,7 +302,7 @@ async function chatStream(externalId, userMessage, onChunk, options = {}) {
throw new Error(data.error);
}
} catch (err) {
console.error(
logger.error(
"[orchestration] Failed to parse inference SSE event:",
raw,
err.message,
@@ -316,7 +316,7 @@ async function chatStream(externalId, userMessage, onChunk, options = {}) {
const allEpisodes = await memory.getRecentEpisodes(session.id, 9999);
triggerSummary(session, allEpisodes);
} else {
console.warn(
logger.warn(
"[orchestration] Stream finished with no assistant text; episode not saved",
);
}
@@ -327,7 +327,7 @@ async function chatStream(externalId, userMessage, onChunk, options = {}) {
return { model, tokenCount };
} catch (err) {
console.error(
logger.error(
"[orchestration] chatStream fatal error:",
err.message,
err.stack,

View File

@@ -1,6 +1,8 @@
const { Router } = require('express')
const { chat, chatStream } = require('../chat/index');
const memory = require('../services/memory')
const logger = require('@nexusai/shared');
const router = Router();
@@ -17,7 +19,7 @@ router.post('/', async (req, res) => {
});
res.json(result)
} catch (err) {
console.error(`[orchestration] chat error: `, err.message)
logger.error(`[orchestration] chat error: `, err.message)
res.status(500).json ({ error: err.message})
}
});

View File

@@ -4,7 +4,7 @@ const fs = require('fs');
const path = require('path');
const appSettings = require('../config/settings');
const { getEnv, LLAMACPP } = require('@nexusai/shared');
const { getEnv, LLAMACPP, logger } = require('@nexusai/shared');
const LLAMA_URL = getEnv('LLAMA_SERVER_URL', LLAMACPP.DEFAULT_URL);
router.get('/', (req, res) => {
@@ -38,7 +38,7 @@ router.get('/', (req, res) => {
res.json(models);
} catch (err) {
console.error('[models] Failed to scan folder:', err.message);
logger.error('[models] Failed to scan folder:', err.message);
res.status(500).json({ error: `Could not read models folder: ${modelsFolderPath}` });
}
});
@@ -53,7 +53,7 @@ router.get('/props', async (req, res) => {
modelAlias: data.model_alias,
});
} catch (err) {
console.error('[models/props]', err.message);
logger.error('[models/props]', err.message);
res.status(503).json({ error: 'Could not reach llama-server' });
}
});

View File

@@ -1,4 +1,4 @@
const { getEnv, SERVICES, SUMMARIES } = require('@nexusai/shared');
const { getEnv, SERVICES, SUMMARIES, logger } = require('@nexusai/shared');
const EXTRACTION_URL = getEnv('EXTRACTION_URL', 'http://localhost:11434');
const EXTRACTION_MODEL = getEnv('EXTRACTION_MODEL', 'qwen2.5:3b');
@@ -104,7 +104,7 @@ async function maybeSummarize(session, allEpisodes) {
const totalEpisodeTokens = allEpisodes.reduce((sum, ep) => sum + (ep.token_count || 0), 0);
// add temporarily before the generateSummary call
console.log('[summarization] episodes to summarize:', episodesToSummarize.length);
logger.debug('[summarization] episodes to summarize:', episodesToSummarize.length);
const content = await generateSummary(
episodesToSummarize,
@@ -126,7 +126,7 @@ async function maybeSummarize(session, allEpisodes) {
episodeRange,
}),
});
console.log(`[summarization] Created new summary for session ${session.id}`);
logger.debug(`[summarization] Created new summary for session ${session.id}`);
} else {
await fetch(`${MEMORY_URL}/summaries/${latest.id}`, {
method: 'PATCH',
@@ -137,14 +137,14 @@ async function maybeSummarize(session, allEpisodes) {
episodeRange,
}),
});
console.log(`[summarization] Updated summary ${latest.id} for session ${session.id}`);
logger.debug(`[summarization] Updated summary ${latest.id} for session ${session.id}`);
}
}
async function triggerSummary(session, allEpisodes) {
// Intentionally fire-and-forget — caller doesn't await this
maybeSummarize(session, allEpisodes).catch(err =>
console.warn('[summarization] Summary failed (non-critical):', err.message)
logger.warn('[summarization] Summary failed (non-critical):', err.message)
);
}