starting data-sync service

This commit is contained in:
Boki 2025-06-18 19:08:51 -04:00
parent 96f515a76b
commit bd8a5bfe9e
13 changed files with 43 additions and 210 deletions

View file

@ -3,7 +3,7 @@
*/
import { Hono } from 'hono';
import { cors } from 'hono/cors';
import { initializeConfig, getServiceConfig, getLoggingConfig } from '@stock-bot/config-new';
import { initializeConfig, getServiceConfig, getLoggingConfig, getDatabaseConfig } from '@stock-bot/config-new';
import { getLogger, shutdownLoggers, setLoggerConfig } from '@stock-bot/logger';
import { createAndConnectMongoDBClient, MongoDBClient } from '@stock-bot/mongodb-client';
import { createAndConnectPostgreSQLClient, PostgreSQLClient } from '@stock-bot/postgres-client';
@ -13,8 +13,9 @@ import { syncManager } from './services/sync-manager';
import { setPostgreSQLClient, setMongoDBClient } from './clients';
// Initialize configuration
await initializeConfig();
await initializeConfig('./config');
const serviceConfig = getServiceConfig();
const databaseConfig = getDatabaseConfig();
// Initialize logger with config
const loggingConfig = getLoggingConfig();
@ -191,16 +192,16 @@ async function initializeServices() {
try {
// Initialize MongoDB client
logger.info('Connecting to MongoDB...');
const mongoConfig = serviceConfig.database.mongodb;
const mongoConfig = databaseConfig.mongodb;
mongoClient = await createAndConnectMongoDBClient({
uri: mongoConfig.uri,
database: mongoConfig.database,
host: 'localhost',
port: 27017,
host: mongoConfig.host || 'localhost',
port: mongoConfig.port || 27017,
timeouts: {
connectTimeout: mongoConfig.connectionTimeout || 30000,
connectTimeout: 30000,
socketTimeout: 30000,
serverSelectionTimeout: mongoConfig.serverSelectionTimeout || 5000,
serverSelectionTimeout: 5000,
},
});
setMongoDBClient(mongoClient);
@ -208,17 +209,17 @@ async function initializeServices() {
// Initialize PostgreSQL client
logger.info('Connecting to PostgreSQL...');
const pgConfig = serviceConfig.database.postgres;
const pgConfig = databaseConfig.postgres;
postgresClient = await createAndConnectPostgreSQLClient({
host: pgConfig.host,
port: pgConfig.port,
database: pgConfig.database,
username: pgConfig.username,
username: pgConfig.user,
password: pgConfig.password,
poolSettings: {
min: 2,
max: pgConfig.maxConnections || 10,
idleTimeoutMillis: 30000,
max: pgConfig.poolSize || 10,
idleTimeoutMillis: pgConfig.idleTimeout || 30000,
},
});
setPostgreSQLClient(postgresClient);