mirror of
https://github.com/IT4Change/gradido.git
synced 2025-12-13 07:45:54 +00:00
configure logger only once. Log Context User ID if present on response
This commit is contained in:
parent
0449dc59e8
commit
befa965a44
@ -1,8 +1,6 @@
|
||||
import axios from 'axios'
|
||||
import log4js from 'log4js'
|
||||
import CONFIG from '@/config'
|
||||
import log4js from '@/server/logger'
|
||||
|
||||
log4js.configure(CONFIG.LOG4JS_CONFIG)
|
||||
const logger = log4js.getLogger('http')
|
||||
|
||||
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
||||
|
||||
@ -1,6 +1,5 @@
|
||||
import fs from 'fs'
|
||||
// import log4js from 'log4js'
|
||||
|
||||
import log4js from '@/server/logger'
|
||||
|
||||
import { Context, getUser } from '@/server/context'
|
||||
import { Resolver, Query, Args, Arg, Authorized, Ctx, UseMiddleware, Mutation } from 'type-graphql'
|
||||
@ -24,14 +23,11 @@ import { klicktippSignIn } from '@/apis/KlicktippController'
|
||||
import { RIGHTS } from '@/auth/RIGHTS'
|
||||
import { hasElopageBuys } from '@/util/hasElopageBuys'
|
||||
|
||||
|
||||
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
||||
const sodium = require('sodium-native')
|
||||
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
||||
const random = require('random-bigint')
|
||||
|
||||
const log4js = require("log4js");
|
||||
log4js.configure(CONFIG.LOG4JS_CONFIG)
|
||||
const logger = log4js.getLogger('graphql.UserResolver')
|
||||
|
||||
// We will reuse this for changePassword
|
||||
@ -269,7 +265,7 @@ export class UserResolver {
|
||||
|
||||
const user = new User(dbUser)
|
||||
logger.debug('user=' + user)
|
||||
|
||||
|
||||
// Elopage Status & Stored PublisherId
|
||||
user.hasElopage = await this.hasElopage({ ...context, user: dbUser })
|
||||
logger.info('user.hasElopage=' + user.hasElopage)
|
||||
@ -315,12 +311,20 @@ export class UserResolver {
|
||||
{ email, firstName, lastName, language, publisherId, redeemCode = null }: CreateUserArgs,
|
||||
): Promise<User> {
|
||||
const logger = log4js.getLogger('graphql.resolver.UserResolver')
|
||||
logger.trace('createUser(email=' + email +
|
||||
', firstName=' + firstName +
|
||||
', lastName=' + lastName +
|
||||
', language=' + language +
|
||||
', publisherId=' + publisherId +
|
||||
', redeemCode =' + redeemCode)
|
||||
logger.trace(
|
||||
'createUser(email=' +
|
||||
email +
|
||||
', firstName=' +
|
||||
firstName +
|
||||
', lastName=' +
|
||||
lastName +
|
||||
', language=' +
|
||||
language +
|
||||
', publisherId=' +
|
||||
publisherId +
|
||||
', redeemCode =' +
|
||||
redeemCode,
|
||||
)
|
||||
// TODO: wrong default value (should be null), how does graphql work here? Is it an required field?
|
||||
// default int publisher_id = 0;
|
||||
|
||||
@ -357,7 +361,7 @@ export class UserResolver {
|
||||
logger.info('new dbUser=' + dbUser)
|
||||
if (redeemCode) {
|
||||
const transactionLink = await dbTransactionLink.findOne({ code: redeemCode })
|
||||
logger.info('redeemCode found transactionLink='+ transactionLink)
|
||||
logger.info('redeemCode found transactionLink=' + transactionLink)
|
||||
if (transactionLink) {
|
||||
dbUser.referrerId = transactionLink.userId
|
||||
}
|
||||
|
||||
@ -1,7 +1,5 @@
|
||||
import 'reflect-metadata'
|
||||
|
||||
import log4js from 'log4js'
|
||||
|
||||
import { ApolloServer } from 'apollo-server-express'
|
||||
import express, { Express } from 'express'
|
||||
|
||||
@ -24,16 +22,14 @@ import schema from '@/graphql/schema'
|
||||
import { elopageWebhook } from '@/webhook/elopage'
|
||||
import { Connection } from '@dbTools/typeorm'
|
||||
|
||||
import log4js from './logger'
|
||||
// TODO implement
|
||||
// import queryComplexity, { simpleEstimator, fieldConfigEstimator } from "graphql-query-complexity";
|
||||
|
||||
type ServerDef = { apollo: ApolloServer; app: Express; con: Connection }
|
||||
|
||||
log4js.configure(CONFIG.LOG4JS_CONFIG)
|
||||
|
||||
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
||||
const createServer = async (context: any = serverContext): Promise<ServerDef> => {
|
||||
|
||||
const logger = log4js.getLogger('server.createServer')
|
||||
logger.debug('This little thing went to market')
|
||||
logger.info('This little thing stayed at home')
|
||||
|
||||
6
backend/src/server/logger.ts
Normal file
6
backend/src/server/logger.ts
Normal file
@ -0,0 +1,6 @@
|
||||
import log4js from 'log4js'
|
||||
import CONFIG from '@/config'
|
||||
|
||||
log4js.configure(CONFIG.LOG4JS_CONFIG)
|
||||
|
||||
export default log4js
|
||||
@ -36,6 +36,7 @@ const logPlugin = {
|
||||
${mutation || query}variables: ${JSON.stringify(filterVariables(variables), null, 2)}`)
|
||||
return {
|
||||
willSendResponse(requestContext: any) {
|
||||
if (requestContext.context.user) logger.trace(`User ID: ${requestContext.context.user.id}`)
|
||||
if (requestContext.response.data)
|
||||
logger.trace(`Response-Data:
|
||||
${JSON.stringify(requestContext.response.data, null, 2)}`)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user