add braintrust logger for server

This commit is contained in:
dal 2025-09-10 12:09:44 -06:00
parent 301a671d6b
commit 31fb2e54ae
No known key found for this signature in database
GPG Key ID: 16F4B0E1E9F61122
4 changed files with 38 additions and 1 deletions

View File

@ -5,6 +5,12 @@ import { z } from 'zod';
import { loadRootEnv } from '@buster/env-utils'; import { loadRootEnv } from '@buster/env-utils';
loadRootEnv(); loadRootEnv();
// Initialize Braintrust logger
import { initBraintrustLogger } from '@buster/ai';
// Initialize Braintrust logger
initBraintrustLogger();
// Import custom middleware // Import custom middleware
import { corsMiddleware } from './middleware/cors'; import { corsMiddleware } from './middleware/cors';
import { loggerMiddleware } from './middleware/logger'; import { loggerMiddleware } from './middleware/logger';

View File

@ -3,3 +3,6 @@ export * from './tool-call-repair';
// Message conversion utilities // Message conversion utilities
export * from './message-conversion'; export * from './message-conversion';
// Logger utilities
export * from './logger';

View File

@ -0,0 +1,28 @@
import { initLogger } from 'braintrust';
/**
* Initialize Braintrust logger with environment configuration
* @param options Optional configuration to override defaults
* @returns Initialized Braintrust logger
*/
export function initBraintrustLogger(options?: {
apiKey?: string;
projectName?: string;
}) {
const apiKey = options?.apiKey || process.env.BRAINTRUST_KEY;
const projectName = options?.projectName || process.env.ENVIRONMENT || 'development';
if (!apiKey) {
throw new Error('BRAINTRUST_KEY is not set');
}
return initLogger({
apiKey,
projectName,
});
}
/**
* Re-export initLogger from braintrust for direct access if needed
*/
export { initLogger } from 'braintrust';