omnivore/packages/api/src/data_source.ts

22 lines
722 B
TypeScript
Raw Normal View History

2023-08-23 04:15:50 +00:00
import { DataSource } from 'typeorm'
import { SnakeNamingStrategy } from 'typeorm-naming-strategies'
import { env } from './env'
import { CustomTypeOrmLogger } from './utils/logger'
2023-08-30 09:29:47 +00:00
export const appDataSource = new DataSource({
2023-08-23 04:15:50 +00:00
type: 'postgres',
host: env.pg.host,
port: env.pg.port,
schema: 'omnivore',
username: env.pg.userName,
password: env.pg.password,
database: env.pg.dbName,
logging: ['query', 'info'],
entities: [__dirname + '/entity/**/*{.js,.ts}'],
subscribers: [__dirname + '/events/**/*{.js,.ts}'],
namingStrategy: new SnakeNamingStrategy(),
logger: new CustomTypeOrmLogger(['query', 'info']),
2023-08-23 04:41:02 +00:00
connectTimeoutMS: 40000, // 40 seconds
maxQueryExecutionTime: 10000, // 10 seconds
2023-08-23 04:15:50 +00:00
})