diff --git a/federation/log4js-config.json b/federation/log4js-config.json index e595e7c52..f9fbc8bf5 100644 --- a/federation/log4js-config.json +++ b/federation/log4js-config.json @@ -4,7 +4,7 @@ "access": { "type": "dateFile", - "filename": "../logs/backend/access.log", + "filename": "../logs/federation/access-%p.log", "pattern": "yyyy-MM-dd", "layout": { @@ -17,7 +17,7 @@ "apollo": { "type": "dateFile", - "filename": "../logs/backend/apollo.log", + "filename": "../logs/federation/apollo-%p.log", "pattern": "yyyy-MM-dd", "layout": { @@ -30,7 +30,7 @@ "backend": { "type": "dateFile", - "filename": "../logs/backend/backend.log", + "filename": "../logs/federation/backend-%p.log", "pattern": "yyyy-MM-dd", "layout": { @@ -40,10 +40,10 @@ "fileNameSep" : "_", "numBackups" : 30 }, - "klicktipp": + "federation": { "type": "dateFile", - "filename": "../logs/backend/klicktipp.log", + "filename": "../logs/federation/apiversion-%v-%p.log", "pattern": "yyyy-MM-dd", "layout": { @@ -56,7 +56,7 @@ "errorFile": { "type": "dateFile", - "filename": "../logs/backend/errors.log", + "filename": "../logs/federation/errors-%p.log", "pattern": "yyyy-MM-dd", "layout": { @@ -123,11 +123,11 @@ "level": "debug", "enableCallStack": true }, - "klicktipp": + "federation": { "appenders": [ - "klicktipp", + "federation", "out", "errors" ], diff --git a/federation/src/config/index.ts b/federation/src/config/index.ts index 05136beef..571ca3bd7 100644 --- a/federation/src/config/index.ts +++ b/federation/src/config/index.ts @@ -75,7 +75,7 @@ if ( const federation = { FEDERATION_DHT_TOPIC: process.env.FEDERATION_DHT_TOPIC || null, FEDERATION_DHT_SEED: process.env.FEDERATION_DHT_SEED || null, - FEDERATION_PORT: process.env.FEDERATION_PORT || 5001, + FEDERATION_PORT: process.env.FEDERATION_PORT || 5000, FEDERATION_API: process.env.FEDERATION_API || '1_0', FEDERATION_COMMUNITY_URL: process.env.FEDERATION_COMMUNITY_URL || null, } diff --git a/federation/src/dht_node/index.ts b/federation/src/dht_node/index.ts index ebaaed5e2..7b8095b54 100644 --- a/federation/src/dht_node/index.ts +++ b/federation/src/dht_node/index.ts @@ -1,7 +1,7 @@ /* eslint-disable @typescript-eslint/no-explicit-any */ /* eslint-disable @typescript-eslint/explicit-module-boundary-types */ import DHT from '@hyperswarm/dht' -import { backendLogger as logger } from '@/server/logger' +import { federationLogger as logger } from '@/server/logger' import CONFIG from '@/config' import { Community as DbCommunity } from '@entity/Community' diff --git a/federation/src/graphql/api/0_1/resolver/TestResolver.ts b/federation/src/graphql/api/0_1/resolver/TestResolver.ts index bbb765765..75a8a192e 100644 --- a/federation/src/graphql/api/0_1/resolver/TestResolver.ts +++ b/federation/src/graphql/api/0_1/resolver/TestResolver.ts @@ -1,5 +1,5 @@ import { Field, ObjectType, Query, Resolver } from 'type-graphql' -import { backendLogger as logger } from '@/server/logger' +import { federationLogger as logger } from '@/server/logger' @ObjectType() class GetTestApiResult { diff --git a/federation/src/graphql/api/1_0/resolver/TestResolver.ts b/federation/src/graphql/api/1_0/resolver/TestResolver.ts index 8eb643569..ed60d39c9 100644 --- a/federation/src/graphql/api/1_0/resolver/TestResolver.ts +++ b/federation/src/graphql/api/1_0/resolver/TestResolver.ts @@ -1,5 +1,5 @@ import { Field, ObjectType, Query, Resolver } from 'type-graphql' -import { backendLogger as logger } from '@/server/logger' +import { federationLogger as logger } from '@/server/logger' @ObjectType() class GetTestApiResult { diff --git a/federation/src/graphql/api/1_1/resolver/TestResolver.ts b/federation/src/graphql/api/1_1/resolver/TestResolver.ts index 00fe72a9f..6ce9510ee 100644 --- a/federation/src/graphql/api/1_1/resolver/TestResolver.ts +++ b/federation/src/graphql/api/1_1/resolver/TestResolver.ts @@ -1,5 +1,5 @@ import { Field, ObjectType, Query, Resolver } from 'type-graphql' -import { backendLogger as logger } from '@/server/logger' +import { federationLogger as logger } from '@/server/logger' @ObjectType() class GetTestApiResult { diff --git a/federation/src/graphql/api/2_0/resolver/TestResolver.ts b/federation/src/graphql/api/2_0/resolver/TestResolver.ts index fc29baf28..ba73ae61f 100644 --- a/federation/src/graphql/api/2_0/resolver/TestResolver.ts +++ b/federation/src/graphql/api/2_0/resolver/TestResolver.ts @@ -1,5 +1,5 @@ import { Field, ObjectType, Query, Resolver } from 'type-graphql' -import { backendLogger as logger } from '@/server/logger' +import { federationLogger as logger } from '@/server/logger' @ObjectType() class GetTestApiResult { diff --git a/federation/src/graphql/api/schema.ts b/federation/src/graphql/api/schema.ts index 1d7d52849..1aea4de8b 100644 --- a/federation/src/graphql/api/schema.ts +++ b/federation/src/graphql/api/schema.ts @@ -1,7 +1,7 @@ import path from 'path' // config import CONFIG from '../../config' -import { backendLogger as logger } from '@/server/logger' +import { federationLogger as logger } from '@/server/logger' export const getApiResolvers = () => { logger.info(`getApiResolvers...${CONFIG.FEDERATION_API}`) diff --git a/federation/src/index.ts b/federation/src/index.ts index 5513c7746..0f791a5ec 100644 --- a/federation/src/index.ts +++ b/federation/src/index.ts @@ -7,21 +7,18 @@ import { startDHT } from '@/dht_node/index' import CONFIG from './config' async function main() { - // in case of active DHT running on port 5000 else running on (default=5001) CONFIG.FEDERATION_PORT - const port = CONFIG.FEDERATION_DHT_TOPIC ? 5000 : CONFIG.FEDERATION_PORT - // eslint-disable-next-line no-console - console.log(`FEDERATION_PORT=${CONFIG.FEDERATION_PORT}`) - console.log(`FEDERATION_API=${CONFIG.FEDERATION_API}`) - console.log(`configured: FEDERATION_DHT_TOPIC=${CONFIG.FEDERATION_DHT_TOPIC}`) - console.log(`depending on DHT_TOPIC using => port=${port}`) + // eslint-disable-next-line no-console + console.log(`FEDERATION_PORT=${CONFIG.FEDERATION_PORT}`) + console.log(`FEDERATION_API=${CONFIG.FEDERATION_API}`) + console.log(`configured: FEDERATION_DHT_TOPIC=${CONFIG.FEDERATION_DHT_TOPIC}`) const { app } = await createServer() - app.listen(port, () => { + app.listen(CONFIG.FEDERATION_PORT, () => { // eslint-disable-next-line no-console - console.log(`Server is running at http://localhost:${port}`) + console.log(`Server is running at http://localhost:${CONFIG.FEDERATION_PORT}`) if (CONFIG.GRAPHIQL) { // eslint-disable-next-line no-console - console.log(`GraphIQL available at http://localhost:${port}`) + console.log(`GraphIQL available at http://localhost:${CONFIG.FEDERATION_PORT}`) } }) diff --git a/federation/src/server/localization.ts b/federation/src/server/localization.ts index 44fb1b526..ac17c3a6f 100644 --- a/federation/src/server/localization.ts +++ b/federation/src/server/localization.ts @@ -1,5 +1,5 @@ import path from 'path' -import { backendLogger } from './logger' +import { federationLogger as logger } from './logger' import i18n from 'i18n' i18n.configure({ @@ -10,9 +10,9 @@ i18n.configure({ // autoReload: true, // if this is activated the seeding hangs at the very end updateFiles: false, objectNotation: true, - logDebugFn: (msg) => backendLogger.debug(msg), - logWarnFn: (msg) => backendLogger.info(msg), - logErrorFn: (msg) => backendLogger.error(msg), + logDebugFn: (msg) => logger.debug(msg), + logWarnFn: (msg) => logger.info(msg), + logErrorFn: (msg) => logger.error(msg), // this api is needed for email-template pug files api: { __: 't', // now req.__ becomes req.t diff --git a/federation/src/server/logger.ts b/federation/src/server/logger.ts index 0cfa5689b..9bdb36696 100644 --- a/federation/src/server/logger.ts +++ b/federation/src/server/logger.ts @@ -7,13 +7,27 @@ const options = JSON.parse(readFileSync(CONFIG.LOG4JS_CONFIG, 'utf-8')) options.categories.backend.level = CONFIG.LOG_LEVEL options.categories.apollo.level = CONFIG.LOG_LEVEL +let filename: string = options.appenders.federation.filename +if(CONFIG.FEDERATION_DHT_TOPIC) { + options.appenders.federation.filename = filename.replace('apiversion-%v', 'dht_'+CONFIG.FEDERATION_DHT_TOPIC).replace('%p', '5000') +} else { + options.appenders.federation.filename = filename.replace('%v', CONFIG.FEDERATION_API).replace('%p', CONFIG.FEDERATION_PORT.toString()) +} +filename = options.appenders.access.filename +options.appenders.access.filename = filename.replace('%p', CONFIG.FEDERATION_PORT.toString()) +filename = options.appenders.apollo.filename +options.appenders.apollo.filename = filename.replace('%p', CONFIG.FEDERATION_PORT.toString()) +filename = options.appenders.backend.filename +options.appenders.backend.filename = filename.replace('%p', CONFIG.FEDERATION_PORT.toString()) +filename = options.appenders.errorFile.filename +options.appenders.errorFile.filename = filename.replace('%p', CONFIG.FEDERATION_PORT.toString()) log4js.configure(options) const apolloLogger = log4js.getLogger('apollo') const backendLogger = log4js.getLogger('backend') -const klickTippLogger = log4js.getLogger('klicktipp') +const federationLogger = log4js.getLogger('federation') backendLogger.addContext('user', 'unknown') -export { apolloLogger, backendLogger, klickTippLogger } +export { apolloLogger, backendLogger, federationLogger }