logger config depends on port and api config properties

This commit is contained in:
Claus-Peter Hübner 2022-12-28 01:24:06 +01:00
parent d361def816
commit 64a0ac36ee
11 changed files with 42 additions and 31 deletions

View File

@ -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"
],

View File

@ -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,
}

View File

@ -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'

View File

@ -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 {

View File

@ -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 {

View File

@ -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 {

View File

@ -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 {

View File

@ -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}`)

View File

@ -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}`)
}
})

View File

@ -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

View File

@ -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 }