feat: enhance KOMGA_DEBUG functionality to disable request delays in debug mode and log request queue statistics
This commit is contained in:
5
ENV.md
5
ENV.md
@@ -18,10 +18,11 @@ ADMIN_DEFAULT_PASSWORD=Admin@2025
|
||||
# Cache Debug (optional - logs cache operations)
|
||||
# CACHE_DEBUG=true
|
||||
|
||||
# Komga Debug (optional - logs all requests to Komga)
|
||||
# Komga Debug (optional - logs all requests to Komga and disables artificial delays)
|
||||
# KOMGA_DEBUG=true
|
||||
|
||||
# Komga Request Queue (optional - max concurrent requests to Komga, default: 2)
|
||||
# Komga Request Queue (optional - max concurrent requests to Komga, default: 5)
|
||||
# Augmenter à 10-20 pour du local avec des gros fichiers CBZ
|
||||
# KOMGA_MAX_CONCURRENT_REQUESTS=5
|
||||
|
||||
# Node Environment
|
||||
|
||||
@@ -180,12 +180,17 @@ export abstract class BaseApiService {
|
||||
const startTime = isDebug ? Date.now() : 0;
|
||||
|
||||
if (isDebug) {
|
||||
const queueStats = {
|
||||
active: RequestQueueService.getActiveCount(),
|
||||
queued: RequestQueueService.getQueueLength(),
|
||||
};
|
||||
logger.info({
|
||||
url,
|
||||
method: options.method || 'GET',
|
||||
params,
|
||||
isImage: options.isImage,
|
||||
noJson: options.noJson,
|
||||
queue: queueStats,
|
||||
}, '🔵 Komga Request');
|
||||
}
|
||||
|
||||
|
||||
@@ -76,8 +76,12 @@ class RequestQueue {
|
||||
|
||||
try {
|
||||
// Délai adaptatif : plus long si la queue est pleine
|
||||
// Désactivé en mode debug pour ne pas ralentir les tests
|
||||
const isDebug = process.env.KOMGA_DEBUG === 'true';
|
||||
if (!isDebug) {
|
||||
const delayMs = this.queue.length > 10 ? 500 : 200;
|
||||
await this.delay(delayMs);
|
||||
}
|
||||
const result = await request.execute();
|
||||
request.resolve(result);
|
||||
} catch (error) {
|
||||
|
||||
Reference in New Issue
Block a user