mirror of
https://github.com/pockethost/pockethost.git
synced 2025-11-24 14:35:49 +00:00
refactor(pockethost): improve breadcrumb handling in logging services for better clarity
This commit is contained in:
parent
01540dad27
commit
049e9e5263
@ -75,7 +75,7 @@ const MultiChannelLimiter = () => {
|
|||||||
const limiter = MultiChannelLimiter()
|
const limiter = MultiChannelLimiter()
|
||||||
|
|
||||||
export function InstanceLogWriter(instanceId: string, volume: string, target: string, logger: Logger) {
|
export function InstanceLogWriter(instanceId: string, volume: string, target: string, logger: Logger) {
|
||||||
const lgr = logger.create(`InstanceLogWriter`).breadcrumb(`${instanceId}-${target}`)
|
const lgr = logger.create(`InstanceLogWriter`).breadcrumb(instanceId).breadcrumb(target)
|
||||||
const { dbg, info, error, warn } = lgr
|
const { dbg, info, error, warn } = lgr
|
||||||
|
|
||||||
ensureInstanceDirectoryStructure(instanceId, volume, lgr)
|
ensureInstanceDirectoryStructure(instanceId, volume, lgr)
|
||||||
@ -125,7 +125,7 @@ export function InstanceLogWriter(instanceId: string, volume: string, target: st
|
|||||||
}
|
}
|
||||||
|
|
||||||
export function InstanceLogReader(instanceId: string, volume: string, target: string, logger: Logger) {
|
export function InstanceLogReader(instanceId: string, volume: string, target: string, logger: Logger) {
|
||||||
const { dbg, info, error, warn } = logger.create(`InstanceLogReader`).breadcrumb(`${instanceId}-${target}`)
|
const { dbg, info, error, warn } = logger.create(`InstanceLogReader`).breadcrumb(instanceId).breadcrumb(target)
|
||||||
|
|
||||||
ensureInstanceDirectoryStructure(instanceId, volume, logger)
|
ensureInstanceDirectoryStructure(instanceId, volume, logger)
|
||||||
|
|
||||||
|
|||||||
@ -60,7 +60,7 @@ export const instanceService = mkSingleton(async (config: InstanceServiceConfig)
|
|||||||
const shutdownManager: (() => void)[] = []
|
const shutdownManager: (() => void)[] = []
|
||||||
|
|
||||||
const { id, subdomain, version } = instance
|
const { id, subdomain, version } = instance
|
||||||
const systemInstanceLogger = instanceServiceLogger.create(`${subdomain}:${id}:${version}`)
|
const systemInstanceLogger = instanceServiceLogger.create(subdomain).breadcrumb(id).breadcrumb(version)
|
||||||
const { dbg, warn, error, info, trace } = systemInstanceLogger
|
const { dbg, warn, error, info, trace } = systemInstanceLogger
|
||||||
const userInstanceLogger = InstanceLogWriter(instance.id, instance.volume, `exec`, systemInstanceLogger)
|
const userInstanceLogger = InstanceLogWriter(instance.id, instance.volume, `exec`, systemInstanceLogger)
|
||||||
|
|
||||||
@ -238,7 +238,7 @@ export const instanceService = mkSingleton(async (config: InstanceServiceConfig)
|
|||||||
;(await proxyService()).use(async (req, res, next) => {
|
;(await proxyService()).use(async (req, res, next) => {
|
||||||
const logger = (config.logger ?? LoggerService()).create(`InstanceRequest`)
|
const logger = (config.logger ?? LoggerService()).create(`InstanceRequest`)
|
||||||
|
|
||||||
const { dbg } = logger
|
const { dbg, warn, error } = logger
|
||||||
|
|
||||||
const { host, proxy } = res.locals
|
const { host, proxy } = res.locals
|
||||||
|
|
||||||
@ -247,10 +247,12 @@ export const instanceService = mkSingleton(async (config: InstanceServiceConfig)
|
|||||||
res.status(404).end(`${host} not found`)
|
res.status(404).end(`${host} not found`)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
logger.breadcrumb(`i:${instance.id}`)
|
||||||
const owner = await mirror.getUser(instance.uid)
|
const owner = await mirror.getUser(instance.uid)
|
||||||
if (!owner) {
|
if (!owner) {
|
||||||
throw new Error(`Instance owner is invalid`)
|
throw new Error(`Instance owner is invalid`)
|
||||||
}
|
}
|
||||||
|
logger.breadcrumb(`u:${owner.id}`)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Suspension check
|
Suspension check
|
||||||
|
|||||||
@ -74,7 +74,7 @@ export const createPocketbaseService = async (config: PocketbaseServiceConfig) =
|
|||||||
}
|
}
|
||||||
const { version, subdomain, instanceId, volume, extraBinds, env, stderr, stdout, dev } = _cfg
|
const { version, subdomain, instanceId, volume, extraBinds, env, stderr, stdout, dev } = _cfg
|
||||||
|
|
||||||
logger.breadcrumb(`${subdomain}-${instanceId}`)
|
logger.breadcrumb(subdomain).breadcrumb(instanceId)
|
||||||
const iLogger = InstanceLogWriter(instanceId, volume, 'exec', logger)
|
const iLogger = InstanceLogWriter(instanceId, volume, 'exec', logger)
|
||||||
|
|
||||||
const _version = version || maxVersion // If _version is blank, we use the max version available
|
const _version = version || maxVersion // If _version is blank, we use the max version available
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user