Profiler
Abra Profiler je profilovací nástroj, ktorý je schopný merať čas niektorých vybraných metód.

Nástroj je možné spustiť klávesovou skratkou Ctrl+Alt+Shift+F12. Profiler je taktiež k dispozícii v okne otvoreného rozhrania.
Příklad vzhledu profileru
Je určený predovšetkým servisným konzultantom servisnej siete výrobcu a vývojarom.
Příkladem využití může být např. situace, kdy je potřeba odhalit, proč je u konkrétního klienta pomalá skladová uzávěrka apod.

V hornej lište nástroja je k dispozícii niekoľko funkcií:
Názov | popis |
---|---|
Štart/Stop |
Pomocou funkcie Štart, resp. Stop užívateľ spustí, resp. zastaví profilovanie. Profilovanie je inkrementálne a pokiaľ sa nevykoná export štatistík, tak sa namerané časy sčítajú. Profilovanie je tiež možné spustiť pri štarte systému ABRA Gen pomocou parametra spustenia ProfilingAutoStart. Meranie musí začať a skončiť v rovnakom bode. Pokiaľ teda napr. chceme zmerať ako dlho trvá tlač reportu, je potrebné začať meranie buď v agende a vrátiť sa späť do tej istej agendy alebo začať meranie v malom číselníku tlačových zostáv a po tlači sa vrátiť späť do toho istého malého číselníka (tlačíme prostredníctvom funkcie preview pomocou skratky Ctrl+P). V opačnom prípade zobrazí Profiler chybu "list index out of bounds". Dočasná data si profiler nejdříve zapisuje do paměti a po překročení výrobcem dané hranice (která není velká) se data přepíší do dočasného souboru na disk a paměť se uvolní pro další zápis. Tudíž je možné profilovat i operace, které generují větší množství dat, aniž by došlo ke kolizi díky zaplnění paměti. |
Export statistics | Vykoná export štatistík nameraných časov, tzn. dôjde k ich zobrazeniu. Zároveň sa tým tiež vynuluje vnútorné počítadlo a pri opätovnom spustení profilovania sa počíta od nuly. |
Load... | Umožňuje načítať namerané štatistiky zo súboru s príponou *.ap. |
Save... | Umožňuje uložiť namerané štatistiky do súboru s príponou *.ap. |

Nástroj zobrazuje zoznam metód, resp. ich skupín a prípadne i informácie o volaniach:
Názov | popis |
---|---|
Group By Area, Class, Method | Pohľad zoskupinovaný podľa oblastí, tried a metód. V tomto pohľade je zobrazený aj detail volania, pokiaľ je k dispozícii. Ide o určité užitočné časti kódu, napr. SQL dopyty. |
Group By Area, Method | Pohľad zoskupinovaný podľa oblastí a metód. |
Group By Area | Pohľad zoskupinovaný podľa oblastí. |
Callers | Zobrazí okno s nadradenými volajúcimi, ktoré volajú aktuálny riadok. |
Children Calls | Zobrazí okno vnorených volaní, ktoré volá aktuálny riadok. Pri poklikaní na riadok vnoreného volania sa kurzor označí toto vnorené volanie v hlavnom zozname. |
tbPrevMethod | Funkcia zatiaľ nie je k dispozícii. |
tbNextMethod | Funkcia zatiaľ nie je k dispozícii. |

Názov | popis |
---|---|
method |
Názov metódy. Prefix pred jej názvom označuje oblasť, do ktorej metóda patrí. Tieto oblasti sú nadefinované interne a umožňujú ľahšiu orientáciu medzi metódami. Oblasti sú odlíšené farbou. Zoznam oblastí je nasledujúci:
Pri vyhľadávaní problémov je vhodné sa najprv zamerať na oblasť E, ktorá by nemala vôbec nastávať, ďalej SCR, SG, UF a efektivitu SQL dopytov. |
w/children | Celkový čas v sekundách s vnorenými volaniami. Ide o súčin stĺpcov calls a avg. Užívateľ typicky zoradí zoznam podľa hodnôt v stĺpci w/children a postupuje podľa najdlhších časov. Podozrivé bývajú napr. tie časti kódu, ktoré sa vyvolajú často a trvajú dlho. |
wo/children | Čas v sekundách bez vnorených volaní. Ide o nepokryté oblasti, ktorých by v budúcich verziách malo ubúdať. |
calls | Počet volaní. |
min | Najkratšie namerané volanie. |
max | Najdlhšie namerané volanie. |
avg | Priemerný čas volania. |
Hodnoty je možné radiť poklikaním myši na záhlavie stĺpca.