CacheControl / CacheControl/json-rules-engine

Decreased Performance due to 'debug(...)' statements in production

Aperta
#369 2 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
JavaScript
Stelle
3.1k
Fork
507
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

Hi @CacheControl
Hope your doing well 😄
First I'd like to thank you for the work done, this is a really useful package !

I'd like to point out a performance issue we are facing in production, there's a debug statement that is run while the addFact function is executed which cause a 2 seconds delay
```typescript
addFact (id, valueOrMethod, options) {
let factId = id
let fact
if (id instanceof Fact) {
factId = id.id
fact = id
} else {
fact = new Fact(id, valueOrMethod, options)
}
debug(`engine::addFact id:${factId}`) // <--- This one
this.facts.set(factId, fact)
return this
}
```
Here's our CPU Profiling

Screenshot 2024-07-11 at 11 40 17

Is there a way to disable the debug statements ? Otherwise it could be nice to add an option to disable them
Thanks !

If you would like, I would be glad to open a PR to address the following issue.

Have a nice day 😄

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

Inizia individuando il metodo addFact e la chiamata debug(...) mostrati nell’issue, quindi esamina come viene configurato il debugging nelle altre parti del package. Determina come disabilitare questo logging in produzione e verifica il percorso addFact con il debugging abilitato e disabilitato; il lavoro è completato quando si evita l’overhead segnalato senza rimuovere output di debug utili.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
javascript
Ambito
backend
Tipo di issue
Bug
Difficoltà
3/5
Tempo stimato
1-2 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.