Nodefony 10.0.0-beta.5
Framework Node.js fullstack — HTTP & WebSocket, même contexte

Référence d'API — @nodefony/http — profiler

stable

Documentation › Référence d’API › @nodefony/http › profiler

Générée depuis les déclarations de types publiées de @nodefony/http 10.0.0-beta.5 : exactement ce que reçoit une application qui l’installe. Cette page n’existe dans aucun dépôt — pour la corriger, on corrige le TSDoc du code.

@nodefony/http#

import { … } from "@nodefony/http" — 22 symboles.

Classes (2)#

FrameProfile#

class FrameProfile

Profil d’une invocation du pont RPC (une frame api.request), et non de la connexion qui la porte.

Profiler#

class Profiler implements IProfilerReader

Collecteur des profils de requête, en un anneau par provenance (profileLane) : l’application, l’outillage, les assets relayés. Chacun évince ses propres profils — ouvrir la console ne chasse plus celui qu’on y consulte.

Fonctions (4)#

aggregateProfiles#

function aggregateProfiles(entries: Iterable<ProfileEntry>, options?: IProfileAggregatorOptions): IProfileReport

Agrège une liste de profils en une fois.

createProfileAggregator#

function createProfileAggregator(options?: IProfileAggregatorOptions): IProfileAggregator

Crée un accumulateur de profils.

isFailedProfile#

function isFailedProfile(entry: Pick<ProfileEntry, "status" | "error">): boolean

Une requête en ERREUR du serveur : statut ≥ 500, ou exception levée sans verdict client. Règle unique — le rapport, ses exemples et la lecture de leurs journaux en dépendent.

sqlShape#

function sqlShape(sql: string): string

Réduit une requête SQL (ou le descripteur d’une commande NoSQL) à sa FORME : valeurs remplacées par ?, listes de valeurs repliées, blancs compactés.

Constantes (4)#

ACTION_SELF_PHASE#

const ACTION_SELF_PHASE = "action.self"

Pseudo-phase : le temps de l’action hors phases imbriquées et hors SQL.

NO_ROUTE#

const NO_ROUTE = "(aucune route)"

Groupe des requêtes qu’aucune route n’a servies (404, statique, sondes).

N_PLUS_ONE_MIN_REPEATS#

const N_PLUS_ONE_MIN_REPEATS = 5

Répétitions d’une même forme SQL, dans UNE requête, à partir desquelles on signale un N+1. En dessous, ce sont des boucles courtes légitimes (quelques lectures de configuration, une pagination) qu’on signalerait à tort.

TOOLING_URL_PREFIX#

⚠️ Déprécié — Ne dit pas ce qui est de l’outillage : une connexion d’utilisateur (/nodefony/security/api/auth/…) ou une route d’application (/nodefony/test/index) passent sous ce préfixe. La règle est isConsolePath (nodefony), que profileLane appelle.

const TOOLING_URL_PREFIX = "/nodefony/"

Préfixe de l’espace réservé au framework.

Interfaces (7)#

FrameProfileInit#

interface FrameProfileInit

Descripteur d’ouverture d’une invocation (ce que le pont connaît d’entrée).

IProfileAggregator#

interface IProfileAggregator

Accumulateur : on lui donne les profils un à un, il rend le rapport.

IProfileAggregatorOptions#

interface IProfileAggregatorOptions

Réglages d’une agrégation.

IProfileBatch#

interface IProfileBatch

Les profils collectés depuis un curseur.

IProfilerReader#

interface IProfilerReader

Ce qu’un lecteur extérieur (outil de l’agent de code, banc) attend du profileur : suivre les profils au fil de l’eau, ou en retrouver un par son identifiant. Contrat structurel — on le résout par NOM dans le conteneur ("profiler"), sans dépendre de la classe.

ProfiledArea#

interface ProfiledArea

Zone firewall capturée sur le contexte (SecuredArea, lue en structurel : @nodefony/http ne peut pas importer @nodefony/security).

ProfiledResolver#

interface ProfiledResolver

Ce que le Profiler lit d’un Resolver (route/controller/action) — dérivé de IRouteResolver, en lecture seule : tout résolveur du contrat s’y range sans conversion, et les deux types ne peuvent plus diverger.

Types (5)#

ProfileEntry#

type ProfileEntry = IProfileEntry

ProfilePhase#

type ProfilePhase = IProfilePhase

ProfileQuery#

type ProfileQuery = IProfileQuery

ProfileSecurity#

type ProfileSecurity = IProfileSecurity

ProfileSummary#

type ProfileSummary = IProfileSummary

← Toutes les références d’API