public class SlowQueryWatcher extends Object implements AutoCloseable, Runnable
| Modifier and Type | Field and Description |
|---|---|
protected long |
begin
Instant de début du watcher
|
protected Supplier<String> |
callerNameSupplier
Permet de récupérer le nom de l'appelant.
|
protected Supplier<String> |
descriptionSupplier
Permet de récupérer la description de la requête.
|
protected Long |
end
Instant de fin du watcher.
|
protected String |
id
Identifiant du présent watcher.
|
protected String |
threadName
Nom du thread dans lequel s'exécute la requête
|
protected long |
thresholdDelay
Délai au delà duquel on affiche l'avertissement
|
protected boolean |
warned
Permet de savoir si l'avertissement a déjà été affiché pour éviter de le réafficher plusieurs fois
|
| Modifier and Type | Method and Description |
|---|---|
void |
close() |
protected void |
displayWarn() |
void |
done()
Permet d'informer le watcher que la requête est terminée.
|
boolean |
isStillRunning() |
protected static Supplier<String> |
newCallerNameSupplier()
Fournit un Supplier dont le but est de retrouver la trace de l'appelant à la couche ToPIA.
|
void |
run() |
static SlowQueryWatcher |
start(Supplier<String> descriptionSupplier,
long thresholdDelay)
Démarre un nouveau watcher qui affichera un avertissement si le traitement n'est pas fini avec
thresholdDelay millisecondes. |
static SlowQueryWatcher |
start(Supplier<String> descriptionSupplier,
Supplier<String> callerNameSupplier,
long thresholdDelay)
Démarre un nouveau watcher qui affichera un avertissement si le traitement n'est pas fini avec
thresholdDelay millisecondes. |
protected final long thresholdDelay
protected final Supplier<String> descriptionSupplier
protected final Supplier<String> callerNameSupplier
protected final String threadName
protected final String id
protected final long begin
protected Long end
protected boolean warned
public static SlowQueryWatcher start(Supplier<String> descriptionSupplier, Supplier<String> callerNameSupplier, long thresholdDelay)
thresholdDelay millisecondes. L'instance créée commence immédiatement le décompte du temps.
Cet appel est fait pour être encapsulé dans un try-with-ressource afin que done() soit appelé à la fin
du traitement (potentiellement via close().descriptionSupplier - Permet de récupérer une description de la requête. On utilise Supplier de
façon à ne calculer sa valeur qu'en cas de besoin.callerNameSupplier - Permet de récupérer une information sur l'appelant pour savoir de quel cas d'usage il
s'agit. On utilise Supplier de façon à ne calculer sa valeur qu'en cas de
besoin.thresholdDelay - le délai (en millisecondes) au delà duquel on affiche l'avertissementnull si le niveau de log ne
permet pas de logguer les avertissements.public static SlowQueryWatcher start(Supplier<String> descriptionSupplier, long thresholdDelay)
thresholdDelay millisecondes. L'instance créée commence immédiatement le décompte du temps.
Cet appel est fait pour être encapsulé dans un try-with-ressource afin que done() soit appelé à la fin
du traitement (potentiellement via close().descriptionSupplier - Permet de récupérer une description de la requête. On utilise Supplier de
façon à ne calculer sa valeur qu'en cas de besoin.thresholdDelay - le délai (en millisecondes) au delà duquel on affiche l'avertissementprotected static Supplier<String> newCallerNameSupplier()
public boolean isStillRunning()
protected void displayWarn()
public void done()
close() dans le cas d'un usage via try-with-ressource.public void close()
close in interface AutoCloseableCopyright © 2004–2020 Code Lutin. All rights reserved.