parent
82e21d1fed
commit
eb69b23d73
|
|
@ -81,39 +81,49 @@ export class App {
|
||||||
// Initialize database
|
// Initialize database
|
||||||
try {
|
try {
|
||||||
await this.AppDataSource.initialize()
|
await this.AppDataSource.initialize()
|
||||||
logger.info('📦 [server]: Data Source is initializing...')
|
logger.info('📦 [server]: Data Source initialized successfully')
|
||||||
|
|
||||||
// Run Migrations Scripts
|
// Run Migrations Scripts
|
||||||
await this.AppDataSource.runMigrations({ transaction: 'each' })
|
await this.AppDataSource.runMigrations({ transaction: 'each' })
|
||||||
|
logger.info('🔄 [server]: Database migrations completed successfully')
|
||||||
|
|
||||||
// Initialize Identity Manager
|
// Initialize Identity Manager
|
||||||
this.identityManager = await IdentityManager.getInstance()
|
this.identityManager = await IdentityManager.getInstance()
|
||||||
|
logger.info('🔐 [server]: Identity Manager initialized successfully')
|
||||||
|
|
||||||
// Initialize nodes pool
|
// Initialize nodes pool
|
||||||
this.nodesPool = new NodesPool()
|
this.nodesPool = new NodesPool()
|
||||||
await this.nodesPool.initialize()
|
await this.nodesPool.initialize()
|
||||||
|
logger.info('🔧 [server]: Nodes pool initialized successfully')
|
||||||
|
|
||||||
// Initialize abort controllers pool
|
// Initialize abort controllers pool
|
||||||
this.abortControllerPool = new AbortControllerPool()
|
this.abortControllerPool = new AbortControllerPool()
|
||||||
|
logger.info('⏹️ [server]: Abort controllers pool initialized successfully')
|
||||||
|
|
||||||
// Initialize encryption key
|
// Initialize encryption key
|
||||||
await getEncryptionKey()
|
await getEncryptionKey()
|
||||||
|
logger.info('🔑 [server]: Encryption key initialized successfully')
|
||||||
|
|
||||||
// Initialize Rate Limit
|
// Initialize Rate Limit
|
||||||
this.rateLimiterManager = RateLimiterManager.getInstance()
|
this.rateLimiterManager = RateLimiterManager.getInstance()
|
||||||
await this.rateLimiterManager.initializeRateLimiters(await getDataSource().getRepository(ChatFlow).find())
|
await this.rateLimiterManager.initializeRateLimiters(await getDataSource().getRepository(ChatFlow).find())
|
||||||
|
logger.info('🚦 [server]: Rate limiters initialized successfully')
|
||||||
|
|
||||||
// Initialize cache pool
|
// Initialize cache pool
|
||||||
this.cachePool = new CachePool()
|
this.cachePool = new CachePool()
|
||||||
|
logger.info('💾 [server]: Cache pool initialized successfully')
|
||||||
|
|
||||||
// Initialize usage cache manager
|
// Initialize usage cache manager
|
||||||
this.usageCacheManager = await UsageCacheManager.getInstance()
|
this.usageCacheManager = await UsageCacheManager.getInstance()
|
||||||
|
logger.info('📊 [server]: Usage cache manager initialized successfully')
|
||||||
|
|
||||||
// Initialize telemetry
|
// Initialize telemetry
|
||||||
this.telemetry = new Telemetry()
|
this.telemetry = new Telemetry()
|
||||||
|
logger.info('📈 [server]: Telemetry initialized successfully')
|
||||||
|
|
||||||
// Initialize SSE Streamer
|
// Initialize SSE Streamer
|
||||||
this.sseStreamer = new SSEStreamer()
|
this.sseStreamer = new SSEStreamer()
|
||||||
|
logger.info('🌊 [server]: SSE Streamer initialized successfully')
|
||||||
|
|
||||||
// Init Queues
|
// Init Queues
|
||||||
if (process.env.MODE === MODE.QUEUE) {
|
if (process.env.MODE === MODE.QUEUE) {
|
||||||
|
|
@ -127,14 +137,16 @@ export class App {
|
||||||
usageCacheManager: this.usageCacheManager
|
usageCacheManager: this.usageCacheManager
|
||||||
})
|
})
|
||||||
logger.info('✅ [Queue]: All queues setup successfully')
|
logger.info('✅ [Queue]: All queues setup successfully')
|
||||||
|
|
||||||
this.redisSubscriber = new RedisEventSubscriber(this.sseStreamer)
|
this.redisSubscriber = new RedisEventSubscriber(this.sseStreamer)
|
||||||
await this.redisSubscriber.connect()
|
await this.redisSubscriber.connect()
|
||||||
|
logger.info('🔗 [server]: Redis event subscriber connected successfully')
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: Remove this by end of 2025
|
// TODO: Remove this by end of 2025
|
||||||
await migrateApiKeysFromJsonToDb(this.AppDataSource, this.identityManager.getPlatformType())
|
await migrateApiKeysFromJsonToDb(this.AppDataSource, this.identityManager.getPlatformType())
|
||||||
|
|
||||||
logger.info('📦 [server]: Data Source has been initialized!')
|
logger.info('🎉 [server]: All initialization steps completed successfully!')
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
logger.error('❌ [server]: Error during Data Source initialization:', error)
|
logger.error('❌ [server]: Error during Data Source initialization:', error)
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue