fix(#338): Add structured logging for embedding failures

- Replace console.error with NestJS Logger
- Include entry ID and workspace ID in error context
- Easier to track and debug embedding issues

Refs #338

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Jason Woltje
2026-02-05 16:26:30 -06:00
parent 6c88e2b96d
commit 7f3cd17488
2 changed files with 296 additions and 2 deletions

View File

@@ -244,7 +244,11 @@ export class KnowledgeService {
// Generate and store embedding asynchronously (don't block the response)
this.generateEntryEmbedding(result.id, result.title, result.content).catch((error: unknown) => {
console.error(`Failed to generate embedding for entry ${result.id}:`, error);
this.logger.warn(`Failed to generate embedding for entry - embedding will be missing`, {
entryId: result.id,
workspaceId,
error: error instanceof Error ? error.message : String(error),
});
});
// Invalidate search and graph caches (new entry affects search results)
@@ -407,7 +411,11 @@ export class KnowledgeService {
if (updateDto.content !== undefined || updateDto.title !== undefined) {
this.generateEntryEmbedding(result.id, result.title, result.content).catch(
(error: unknown) => {
console.error(`Failed to generate embedding for entry ${result.id}:`, error);
this.logger.warn(`Failed to generate embedding for entry - embedding will be missing`, {
entryId: result.id,
workspaceId,
error: error instanceof Error ? error.message : String(error),
});
}
);
}